CH-J Server Managerδιαχείριση διακομιστή πάνω από SSH
Μενού
Όλοι οι οδηγοί και τα άρθρα →

Ο διακομιστής είναι online, αλλά η θύρα SSH 22 δεν αποκρίνεται

Ελέγξτε διαδοχικά τον πελάτη, το δίκτυο, το τείχος προστασίας και το sshd για να βρείτε γιατί ο διακομιστής απαντά, αλλά το SSH όχι.

Δοκιμάστε την ίδια τη θύρα

Μια απάντηση στο ping ή ένας ιστότοπος που λειτουργεί δεν λένε τίποτα για το SSH, επειδή το καθένα χρησιμοποιεί διαφορετικό πρωτόκολλο ή θύρα. Δοκιμάστε τη θύρα TCP απευθείας από τον πελάτη. Το Connection refused σημαίνει ότι κάτι απάντησε, αλλά καμία υπηρεσία δεν αποδέχτηκε τη σύνδεση. Το timeout σημαίνει ότι τίποτα δεν απάντησε, κάτι που συνήθως παραπέμπει σε τείχος προστασίας, δρομολόγηση ή υπερφορτωμένο μηχάνημα.

nc -vz -w 5 server.example 22
ssh -v -o ConnectTimeout=5 user@server.example

Connection refused: ελέγξτε το sshd από την κονσόλα

Χρησιμοποιήστε την κονσόλα του παρόχου ή του hypervisor, όχι SSH. Ελέγξτε αν εκτελείται η υπηρεσία, σε ποια διεύθυνση και θύρα ακούει και αν η διαμόρφωση είναι έγκυρη. Στις πρόσφατες εκδόσεις του Ubuntu το SSH ξεκινά μέσω του ssh.socket, οπότε εξετάστε και τη μονάδα socket. Σε άλλες διανομές η υπηρεσία μπορεί να ονομάζεται sshd.

sudo systemctl status ssh.service ssh.socket
sudo ss -lntp | grep -E ':22\b|sshd'
sudo sshd -t
sudo journalctl -u ssh -n 50 --no-pager

Timeout: ελέγξτε τα τείχη προστασίας

Εξετάστε το τείχος προστασίας του διακομιστή και κάθε εξωτερικό φίλτρο, όπως μια ομάδα ασφαλείας στο cloud, τον δρομολογητή ή τον πίνακα ελέγχου του παρόχου. Για να δείτε αν φτάνουν καν πακέτα, εκτελέστε το tcpdump στον διακομιστή κατά τη διάρκεια μιας προσπάθειας σύνδεσης. Αν δεν εμφανίζεται τίποτα, ο αποκλεισμός γίνεται πριν από τον διακομιστή. Αν φτάνουν πακέτα αλλά δεν εξέρχεται απάντηση, αναζητήστε την αιτία στον διακομιστή.

sudo ufw status verbose
sudo nft list ruleset | less
sudo tcpdump -ni any tcp port 22

Αποκλεισμός από το fail2ban ή αλλαγή θύρας

Μετά από αποτυχημένες συνδέσεις, το fail2ban μπορεί να έχει αποκλείσει τη διεύθυνσή σας, κάτι που εμφανίζεται ως timeout ή απόρριψη σύνδεσης μόνο από τη δική σας διεύθυνση. Μια δοκιμή από άλλο δίκτυο το δείχνει γρήγορα. Ελέγξτε επίσης αν η θύρα άλλαξε με το Port ή αν η ακρόαση περιορίστηκε σε μία διεύθυνση με το ListenAddress στο sshd_config ή σε αρχείο κάτω από το /etc/ssh/sshd_config.d.

sudo fail2ban-client status sshd
sudo sshd -T | grep -E '^(port|listenaddress) '

Η σύνδεση στη θύρα επιτυγχάνει, αλλά η είσοδος κολλάει

Αν η σύνδεση TCP επιτυγχάνει αλλά δεν φτάνει ποτέ το αρχικό μήνυμα αναγνώρισης SSH, το sshd λειτουργεί μόνο εν μέρει ή το σύστημα είναι υπερφορτωμένο. Ελέγξτε από την κονσόλα τη μνήμη, τον χώρο στον δίσκο και τον φόρτο. Ένας γεμάτος δίσκος ή η εξάντληση της μνήμης μπορούν να εμποδίσουν νέες συνεδρίες, ενώ οι υπάρχουσες υπηρεσίες εξακολουθούν να απαντούν.

uptime
free -h
df -h

Έλεγχος με το CH-J Server Manager

Το Server Diagnostics μπορεί να δοκιμάσει το ping, μια σύνδεση TCP και τη συμβολοσειρά αναγνώρισης SSH χωρίς σύνδεση σε λογαριασμό, για IPv4 και IPv6, ώστε να δείτε σε ποιο στάδιο προκύπτει η αποτυχία. Οι δοκιμές γίνονται μόνο από τον υπολογιστή σας. Δεν μπορεί να δει τι συμβαίνει μέσα στον διακομιστή ή να εντοπίσει ποιο τείχος προστασίας απέρριψε ένα πακέτο, οπότε εξακολουθείτε να χρειάζεστε την κονσόλα για τους παραπάνω ελέγχους.

Λεπτομερής τεκμηρίωση

OpenSSH: sshd →

man: ss →

Βιομετρική ξεκλείδωμα και ασφάλεια →