Junior
Τι να κάνετε αν η σύνδεση SSH κολλήσει;
sobes.tech AI
Απάντηση από AI
- Ελέγξτε τη σύνδεση δικτύου: Βεβαιωθείτε ότι δεν υπάρχουν προβλήματα με τη σύνδεση στο διαδίκτυο ή το τοπικό δίκτυο. Πραγματοποιήστε ping στον διακομιστή.
- Ελέγξτε το φορτίο του διακομιστή: Ίσως ο διακομιστής να είναι υπερφορτωμένος (CPU, RAM, I/O). Χρησιμοποιήστε εργαλεία παρακολούθησης ή προσπαθήστε να αποκτήσετε πρόσβαση μέσω της κονσόλας του hypervisor/προμηθευτή.
- Επανεκκινήστε την υπηρεσία SSH: Στην πλευρά του διακομιστή, αν έχετε πρόσβαση με άλλους τρόπους (κονσόλα, άλλος διακομιστής SSH).
# για συστήματα βασισμένα σε systemd sudo systemctl restart sshd.service # για συστήματα βασισμένα σε SysV init sudo service ssh restart - Ελέγξτε τις ρυθμίσεις του διακομιστή SSH: Αρχείο
/etc/ssh/sshd_config, δώστε προσοχή στις παραμέτρουςClientAliveIntervalκαιClientAliveCountMax.
Μετά την αλλαγή των ρυθμίσεων, επανεκκινήστε την υπηρεσία SSH.# /etc/ssh/sshd_config ClientAliveInterval 60 # αποστέλλει μήνυμα ζωής κάθε 60 δευτερόλεπτα ClientAliveCountMax 3 # επιτρέπει 3 λείποντα μηνύματα ζωής - Ελέγξτε τις ρυθμίσεις του πελάτη SSH: Αρχείο
~/.ssh/configή επιλογές γραμμής εντολών (-o). ΠαράμετροιServerAliveIntervalκαιServerAliveCountMax.
Ή κατά τη σύνδεση:# ~/.ssh/config Host το_ψευδώνυμο_του_διακομιστή Hostname η_διεύθυνση_ip_ή_το_όνομα_υποδοχής ServerAliveInterval 60 ServerAliveCountMax 3ssh -o ServerAliveInterval=60 -o ServerAliveCountMax=3 χρήστης@η_διεύθυνση_ip_ή_το_όνομα_υποδοχής - Ελέγξτε τα τείχη προστασίας: Βεβαιωθείτε ότι τα τείχη προστασίας (τοπικά στον πελάτη, στον διακομιστή, στο δίκτυο) δεν αποκλείουν ή διακόπτουν τη σύνδεση στην πόρτα 22 (ή σε άλλη χρησιμοποιούμενη πόρτα SSH).
- Ελέγξτε τα TMOUT/IDLE-Timeouts: Ορισμένα τερματικά ή περιβάλλοντα έχουν τις δικές τους ρυθμίσεις χρονικού ορίου αδράνειας, που μπορεί να οδηγήσουν σε διακοπή της σύνδεσης. Ελέγξτε τη μεταβλητή
TMOUTστη συνεδρία bash στον διακομιστή.Αυτό είναι μια προσωρινή λύση για την τρέχουσα συνεδρία. Για μόνιμες αλλαγές, επεξεργαστείτε αρχεία# ελέγξτε τη μεταβλητή echo $TMOUT # ορίστε την τιμή (π.χ., 3600 δευτερόλεπτα) export TMOUT=3600.bashrc,.profileκ.λπ. - Χρησιμοποιήστε την επιλογή
-vγια αποσφαλμάτωση: Αναλυτική παρουσίαση της διαδικασίας σύνδεσης SSH.ssh -v χρήστης@η_διεύθυνση_ip_ή_το_όνομα_υποδοχής - Ελέγξτε τα αρχεία καταγραφής SSH: Στην πλευρά του διακομιστή,
/var/log/auth.logή/var/log/secure(ανάλογα με το λειτουργικό σύστημα).# δείτε τις τελευταίες καταχωρίσεις στο αρχείο καταγραφής αυθεντικοποίησης sudo tail /var/log/auth.log - Χρησιμοποιήστε εναλλακτική θύρα ή πρωτόκολλο: Αν η προεπιλεγμένη θύρα 22 μπλοκάρεται κάπου στο δίκτυο, δοκιμάστε να χρησιμοποιήσετε άλλη θύρα, αν έχει διαμορφωθεί στον διακομιστή. Ή χρησιμοποιήστε άλλο πρωτόκολλο πρόσβασης (π.χ., κονσόλα).