Come risolvere l’errore di SSH connessione rifiutata

SSH Connessione rifiutata questo errore può rappresentare un ostacolo frustrante quando si tenta di stabilire una connessione SSH (Secure Shell). Questo errore indica che il tentativo del client di connettersi al server remoto è stato rifiutato.  La sfida nella risoluzione di questo errore è trovare la causa esatta. Nella maggior parte dei casi, gli utenti possono riscontrare questo errore a causa di configurazioni di porte o impostazioni di rete errate. Altri fattori chiave come le impostazioni del firewall, l’autenticazione della chiave SSH e la garanzia delle credenziali corrette svolgono un ruolo cruciale nel determinare se gli utenti devono affrontare l’SSH Connessione rifiutata.

Che tu stia lavorando con un server dedicato o remoto, comprendere i problemi sottostanti, come le impostazioni personalizzate della porta SSH, l’aderenza al protocollo di rete e le regole del firewall, è essenziale per risolvere il problema e stabilire connessioni SSH di successo.

7 soluzioni per correggere l’errore di connessione SSH rifiutata

L’SSH Connessione rifiutata L’errore in genere indica l’incapacità del client SSH di stabilire una connessione con il server SSH. Discutiamo le cause e le soluzioni appropriate per alcuni motivi comuni alla base di questo problema.

Client SSH non è installato

Inizia verificando che un client SSH sia installato correttamente sul sistema, poiché la mancanza del client SSH impedisce l’accesso SSH al server.

Per verificare se sul tuo sistema è installato un client SSH, inserisci semplicemente il seguente comando nel tuo terminale:

# ssh

Se vedi un elenco di opzioni, un client SSH è già installato sul tuo sistema. Al contrario, se ricevi un comando non trovato messaggio, devi installare il client OpenSSH (o un client SSH simile che preferisci).

Soluzione n. 1: installa un client SSH

Per configurare un client SSH sul tuo dispositivo, apri il terminale ed esegui uno dei seguenti comandi:

Per distribuzioni basate su Ubuntu/Debian

# sudo apt install openssh-client

Per distribuzioni CentOS/RHEL

# sudo yum install openssh-client

Assenza del demone SSH sul server

Il demone SSH (sshd) svolge un ruolo cruciale nell’autenticazione dei client e nella creazione di connessioni sicure. Di conseguenza, l’assenza di sshd sul server di destinazione o una sua configurazione errata comporterà il rifiuto delle connessioni in entrata.

Per confermare la configurazione SSH sul server remoto, eseguire il comando seguente:

# ssh localhost 

Se l’output indica Connessione rifiutatadovresti installare SSH sul server remoto.

Soluzione n. 2: installa SSH sul server remoto

Esegui il comando seguente per installare SSH su un server remoto che esegue sistemi operativi Ubuntu/Debian:

# sudo apt install openssh-server

Causa n. 3: potresti utilizzare credenziali errate

Errori di battitura o credenziali errate portano a una connessione SSH negata. Questo corso copre tutti i casi in cui fornisci nome utente o password o utilizzi indirizzi IP errati. Eventuali incoerenze comportano un errore di autenticazione, con conseguente rifiuto della connessione.

Soluzione 3: verificare e correggere le inesattezze delle credenziali

Dopo aver confermato nome utente e password, assicurati di utilizzare l’indirizzo IP del server corretto. Suggeriamo di utilizzare IL ping comando e indirizzo IP per accertare l’accessibilità del server. Esegui il seguente comando:

# ping (server_ip_adress)

Il risultato indica una connessione di rete coerente tra la macchina e il server.

Servizio SSH è attualmente inattivo

Il servizio SSH deve essere attivato e operativo in background per garantire il corretto funzionamento. Il demone SSH non può accettare connessioni se il servizio non è in esecuzione.

Per verificare lo stato del servizio, eseguire il seguente comando nel terminale:

# sudo service ssh status

L’output indica che il servizio è attivo. In alternativa, se il servizio risulta inattivo, procedere con i passaggi successivi per attivarlo.

Soluzione n. 4: attiva il servizio SSH

Se il sistema indica che il demone SSH è inattivo, avviare il servizio eseguendo:

# systemctl start sshd

Puoi evitare questo problema abilitando l’avvio del servizio durante l’avvio del server eseguendo il comando seguente:

# sudo systemctl enable sshd

Tieni presente che non vedrai alcun messaggio di conferma o di stato per la corretta esecuzione di questi comandi.

Firewall sta bloccando la connessione SSH

A volte, le connessioni SSH vengono rifiutate a causa dei vincoli del firewall. Il firewall protegge il server da connessioni potenzialmente dannose. Se la funzionalità SSH è abilitata, è necessario modificare le regole del firewall per consentire le connessioni SSH.

Soluzione n. 5: abilitare le connessioni SSH tramite il firewall

Dimostreremo la soluzione per UFW (Uncomplicated Firewall).

Inizia eseguendo il comando seguente per consentire le connessioni SSH attraverso il firewall UFW:

# sudo ufw allow ssh

La porta SSH è chiusa

Tutte le richieste SSH vengono mappate su una porta specifica sul server remoto. Pertanto, la porta designata dovrebbe essere aperta e accessibile per consentire le connessioni SSH. Per verificare se il server è attivamente in ascolto sulla porta, eseguire il seguente comando:

# sudo lsof -i:22

Il risultato indica che lo STATO è configurato come LISTEN, indicando che la porta è aperta. Al contrario, il server rifiuterà la connessione se la porta è chiusa.

Un metodo alternativo per verificare se la porta è aperta è utilizzare:

# grep Port /etc/ssh/sshd_config

Come puoi vedere, la porta 22 sul server è chiusa. In questo scenario, l’azione corretta sarebbe aprirlo.

Soluzione n. 6: consentire l’accesso alla porta SSH

Per consentire alla porta 22 di accettare le richieste in entrata, utilizzare quanto segue iptables comando:

# sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

Non vedrai alcun messaggio di stato quando il comando ha esito positivo. In alternativa, è possibile aprire le porte tramite l’interfaccia utente grafica regolando le impostazioni del firewall.

Causa n. 7: problemi di connettività SSH imprevisti

Problemi come alterazioni della configurazione, problemi temporanei o aggiornamenti del software possono interrompere le connessioni SSH.

Un passaggio comune per la risoluzione dei problemi consiste nel riavviare il servizio SSH, che spesso risolve la maggior parte di questi problemi.

Soluzione n. 7: riavviare SSH

Eseguire il comando seguente per riavviare il servizio SSH:

# sudo service ssh restart

L’esecuzione di questo comando avvierà un riavvio del servizio SSH, che potrebbe potenzialmente correggere molti problemi sottostanti che interessano le connessioni SSH.

Debug e registrazione SSH

Ti consigliamo di attivare la modalità di debug per risolvere i problemi SSH su Linux piattaforme. I messaggi completi forniscono informazioni complete che aiutano a diagnosticare problemi di connessione, configurazione e autenticazione.

Esistono tre livelli di verbosità:

  • Livello 1 (-v)
  • Livello 2 (-vv)
  • Livello 3 (-vvv)

Ti consigliamo di aggiungere il flag -v per informazioni di debug migliorate. Quindi, la sintassi per il comando SSH sarà la seguente:

# ssh -v (server_ip)

Per ulteriori informazioni sull’autenticazione, considera l’utilizzo della verbosità di livello 2:

# ssh -vv (server_ip)

Per una visione completa che includa i messaggi di debug relativi all’elaborazione dei pacchetti, optare per il livello 3:

# ssh -vvv (server_ip)

Pratiche di sicurezza SSH

Le misure di sicurezza SSH salvaguardano sistemi, dati e reti da una serie di minacce. Queste migliori pratiche stabiliscono un solido quadro di sicurezza e riducono la probabilità di violazioni riuscite.

Consigliamo quanto segue come misure di sicurezza SSH essenziali:

Utilizza password robuste

Stabilisci una politica a livello di organizzazione per l’utilizzo di password complesse che utilizzano una combinazione di lettere maiuscole e minuscole, numeri e caratteri speciali.

Implementare l’autenticazione con chiave SSH

Sostituisci le password con coppie di chiavi pubblica-privata SSH per un processo di autenticazione più affidabile.

Disabilita l’accesso root

Mitiga i rischi per la sicurezza disabilitando gli accessi root diretti.

Aggiorna regolarmente SSH

Mantieni aggiornato il software SSH per risolvere le vulnerabilità note.

Abilita Aggiornamenti automatici

Configura il sistema per installare automaticamente gli aggiornamenti software SSH, garantendo la rapida applicazione delle patch di sicurezza critiche.

Limita l’accesso utente

Limita l’accesso SSH solo agli utenti autorizzati.

Utilizza porte non standard

Migliora la sicurezza mappando i processi SSH su una porta non standard. Ciò impedisce tutti gli attacchi diretti alla porta SSH standard 22.

Distribuire l’autenticazione a due fattori (2FA)

Ciò introduce un ulteriore livello di sicurezza, richiedendo agli utenti di fornire due forme distinte di identificazione per l’accesso all’account.

Crittografa il traffico SSH

La crittografia del traffico SSH è un aspetto fondamentale per proteggere la trasmissione dei dati tra client e server durante le sessioni SSH.

Risoluzione dell’SSH Connessione rifiutata L’errore è indispensabile per stabilire una connessione sicura al tuo server tramite SSH. Gli utenti possono risolvere in modo efficace questo messaggio di errore seguendo i passaggi descritti in questa guida, inclusa la garanzia del corretto utilizzo del comando SSH, la risoluzione dei problemi relativi alle restrizioni del firewall e la considerazione di problemi comuni come le impostazioni del firewall non configurate correttamente o il tentativo di connessione tramite la porta predefinita.

Autore

Classe Novanta3, Fondatore di TrgtKLS. Appassionato in Sec IT & Tech. Expert per l'amministrazione web server e supporto in Back-&, ottimizzazione e manutenzione di esso. • Metà Free e Metà Freelancer • [email protected]

Articoli correlati

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *