Errore SSH: scambio di identità non riuscito, connessione chiusa

In molti casi, l'errore `ssh_exchange_identification: Connection closed by remote host` potrebbe essere causato da problemi con i file di configurazione `hosts.deny` e `hosts.allow`, ma esistono altre possibili cause. Se stai leggendo questo articolo, probabilmente hai già verificato che nessuno dei due file impedisce al tuo indirizzo IP di tentare di utilizzare `ssh` su un server remoto.

Supponendo che sia così, il problema potrebbe essere correlato a dipendenze, frammentazione della memoria o persino a un numero eccessivo di sessioni in entrata da singoli client. La buona notizia è che una volta risolto il problema, l'errore non si ripresenterà più.

Metodo 1: correggere le dipendenze mancanti

Se l'errore `ssh_exchange_identification: connection closed by remote host` si verifica solo dopo l'aggiornamento di `OpenSSL` o `glibc`, il problema potrebbe essere dovuto a una dipendenza mancante. In questo caso, esegui il comando ` sudo lsof -n | grep ssh | grep DEL` dalla riga di comando. Questo ti fornirà un elenco dei file aperti; quindi, cerca quelli che sono stati eliminati di recente e che sono correlati al servizio (demone) `ssh`.

Se non ottieni alcun risultato, puoi comunque provare a riavviare il servizio (daemon) o il sistema stesso. Dovrai provare a riavviare se ricevi più errori, anche se puoi tranquillamente ignorare i messaggi relativi a `/run/user/1000/gvfs`, poiché sono causati da un problema non correlato con il file system virtuale.

Se sospetti che il problema risieda nelle dipendenze, puoi anche provare ad aggiornare i pacchetti utilizzando `apt-get`, `pacman` o `yum`. Se utilizzi un sistema basato su Debian o Ubuntu, potresti provare a eseguire `sudo apt-get -f upgrade` per verificare se questo risolve eventuali pacchetti danneggiati.

Metodo 2: Correzione della frammentazione della memoria

Se questo non risolve il problema, potrebbe esserci un problema lato host. Gli host in esecuzione all'interno di una macchina virtuale (VM) non sempre dispongono di una partizione di swap, il che può portare alla frammentazione della memoria. Prova ad accedere all'host con altri mezzi, magari fisicamente se possibile, e quindi riavvia tutti i servizi che riscontrano problemi. MySQL, Apache, nginx e altri servizi simili potrebbero essere la causa.

Sebbene riavviare l'host non sia sempre possibile, può risolvere il problema ed è consigliabile farlo se si alternano questo messaggio di errore e un altro che restituisce un indirizzo IP. Ricorda che, se hai accesso al server, puoi eseguire il comando ` vmstat -s` e ottenere statistiche utili sull'utilizzo della memoria, anche come utente normale in molti casi.

Terzo metodo: verifica di copie SSH aggiuntive

Se questa non è la causa, verifica se gli host stanno tentando di connettersi al server. Potresti aver superato inavvertitamente il numero massimo di sessioni SSH. Termina le sessioni in corso e prova a connetterti di nuovo. Un modo semplice per farlo è eseguire il comando ` who` per vedere quali processi utente sono connessi. Dovresti vedere solo uno o due utenti connessi. Se ci sono diverse sessioni parallele, termina i processi utente e prova ad accedere di nuovo.

Questo può accadere se sshd non riesce a tenere il passo con uno script che avvia più sessioni ssh in un ciclo continuo. Se ti è già successo, aggiungi il comando ` sleep 0.3` al ciclo per dare al demone sshd il tempo di recuperare.

Metodo 4: Trovare il limite di connessione sshd

Problemi di connessione come questi sono particolarmente comuni quando si tenta di utilizzare SSH per accedere a un router o a un altro tipo di adattatore integrato, poiché il numero massimo predefinito di connessioni è molto ridotto. Sebbene non si voglia sovraccaricare il server, è possibile rivedere le impostazioni predefinite.

Prova a correre Il server dovrebbe essere configurato per gestire un certo numero di connessioni. Nella maggior parte dei casi, l'impostazione predefinita del sistema dovrebbe essere 10 connessioni simultanee, il che è sufficiente per la maggior parte delle architetture server in cui la maggior parte degli utenti utilizza regolarmente SSH.

 

I commenti sono chiusi.