Diagnosi probabile
Quando SSH non accetta connessioni, le cause più frequenti sono quattro: sshd fermo o in crash, porta cambiata o filtrata, firewall/ACL che blocca, oppure errore di configurazione in /etc/ssh/sshd_config. In ambienti con pannelli di controllo, può anche intervenire una regola del provider o una protezione esterna che limita gli accessi dopo troppi tentativi falliti.
Se il server è in produzione, va trattato come un incidente: prima si verifica se il problema è locale al client, poi se il servizio risponde sulla porta giusta, infine si controllano log e stato del demone. L’obiettivo non è “toccare tutto”, ma capire in quale anello della catena si è rotto l’accesso.
Verifiche immediate
- Prova da un altro client o rete: se da una seconda linea o da un altro IP funziona, il blocco è probabilmente lato rete, firewall o IP ban. Esito atteso: il problema non è universale.
- Controlla la raggiungibilità della porta dal tuo PC:
nc -vz IP_SERVER 22Esito atteso:
succeededo risposta simile. Se va in timeout o refused, la porta non è raggiungibile o il servizio non ascolta. - Verifica che SSH ascolti sul server, se hai accesso alla console del provider o a una web console:
ss -tlnp | grep sshdEsito atteso: una riga con
:22o con la porta configurata. - Controlla lo stato del servizio:
systemctl status sshdEsito atteso:
active (running). Se èinactive,failedonot found, hai già una pista concreta.
Soluzione consigliata passo-passo
- Ripristina prima la raggiungibilità minima. Se hai accesso alla console del provider, usa quella prima di fare modifiche via SSH. È il canale più sicuro quando la porta 22 non risponde.
- Se sshd è fermo, riavvialo e verifica subito:
systemctl restart sshd
systemctl status sshd --no-pagerSe il riavvio fallisce, non insistere: passa ai log, perché il problema è spesso di configurazione.
- Controlla i log del servizio:
journalctl -u sshd -n 50 --no-pagerCerca errori come porta già in uso, chiavi mancanti, permessi errati o direttive non valide. Esito atteso: un messaggio che spiega il blocco.
- Valida la configurazione prima di riavviare:
sshd -tEsito atteso: nessun output. Se stampa un errore, correggi il file indicato prima di riavviare il demone.
- Se la porta è stata cambiata, verifica firewall e policy. Su sistemi comuni controlla che la nuova porta sia aperta nel firewall e nel pannello del provider. Se usi UFW:
ufw status numberedSe usi firewalld:
firewall-cmd --list-allEsito atteso: la porta SSH compare tra quelle consentite.
- Se sospetti un blocco per tentativi falliti, verifica eventuali regole di ban, ad esempio fail2ban. Controlla gli IP bloccati e rimuovi solo il tuo IP se è stato bannato per errore. Esito atteso: l’IP amministrativo torna autorizzato.
- Se non hai console diretta, usa il pannello del provider per aprire una web console o una rescue shell. È il percorso più sicuro per correggere un lockout SSH senza peggiorare la situazione.
Controlli finali / rollback
- Verifica l’accesso reale da terminale con la porta corretta:
ssh -p PORTA utente@IP_SERVEREsito atteso: autenticazione riuscita e shell disponibile.
- Conferma che il demone resti stabile dopo il riavvio:
systemctl is-active sshdEsito atteso:
activeanche dopo alcuni minuti. - Rollback: se hai modificato
/etc/ssh/sshd_confige l’accesso è peggiorato, ripristina il backup del file, valida consshd -te riavvia solo dopo il controllo positivo. Se hai aperto una porta firewall in prova, chiudi solo quella aggiunta se non serve più.
Assunzione: il problema riguarda un server Linux con accesso amministrativo almeno via console del provider o pannello di emergenza.
Commenti (0)
Nessun commento ancora.
Segnala contenuto
Elimina commento
Eliminare definitivamente questo commento?
L'azione non si può annullare.