Debian

Come risolvere la connessione rifiutata dalla porta 22 Debian/Ubuntu

Come risolvere la connessione rifiutata dalla porta 22 Debian/Ubuntu
SSH fornisce un modo sicuro per accedere e gestire i server Linux. A volte durante la connessione ai server SSH, gli utenti incontrano spesso l'errore "Connessione rifiutata" tramite la porta 22. Succede a causa di diversi motivi come il servizio SSH non è in esecuzione, la porta è bloccata dal firewall o il server sta utilizzando una porta diversa. Può anche verificarsi a causa del problema del conflitto IP. In questo articolo, discuteremo alcune delle soluzioni che dovresti provare per correggere l'errore.

Nota: I comandi discussi qui sono stati testati su Ubuntu 20.04 LTS. Gli stessi comandi sono validi anche per il sistema Debian.

Correggi l'errore di connessione rifiutata

Questo è l'errore "Connessione rifiutata" che potresti riscontrare durante la connessione a un sistema remoto tramite SSH.

Seguire le soluzioni seguenti passo dopo passo per risolvere l'errore "Connessione rifiutata"”.

Assicurati che OpenSSH sia installato

Uno dei motivi per cui potresti ricevere un errore "Connessione rifiutata" è perché il server OpenSSH non è installato sul server di destinazione.

Innanzitutto, dovrai assicurarti che il server OpenSSH sia installato sul sistema a cui stai tentando di accedere tramite SSH. Per verificare se OpenSSH è installato o meno, emettere il seguente comando nel Terminale del server di destinazione:

$ sudo apt list --installed | grep openssh-server

Questo comando fondamentalmente filtra il termine "openssh-server" dall'elenco dei pacchetti installati. Se ricevi il seguente output simile, indica che il server OpenSSH è installato. D'altra parte, se non ricevi alcun output, significa che OpenSSH è mancante sul server di destinazione.

Nel caso in cui non sia installato sul server di destinazione, è possibile installarlo utilizzando il seguente comando come sudo:

$ sudo apt install openssh-server

Quindi digita sudo password e, quando viene richiesta la conferma, premi "y". Una volta installato, confermalo usando lo stesso comando

$ sudo apt list --installed | grep openssh-server

Controlla il servizio SSH

Il servizio OpenSSH viene eseguito in background e ascolta le connessioni in entrata. Il servizio OpenSSH interrotto può essere uno dei motivi per cui ricevi un errore "Connessione rifiutata".

Pertanto, è necessario verificare se il servizio OpenSSH è in esecuzione o meno utilizzando il seguente comando in Terminale:

$ sudo service ssh status

Se vedi il seguente output, significa che il servizio è attivo e in esecuzione in background.

D'altra parte, se ricevi inattivo (morto), ciò significa che il servizio non è in esecuzione. Puoi eseguire il servizio OpenSSH usando il seguente comando come sudo in Terminale:

$ sudo service ssh start

Per riavviare il servizio, utilizzare il seguente comando:

$ sudo service ssh restart

Controlla la porta di ascolto del server SSH

Un altro motivo per ricevere un errore "Connessione rifiutata" è perché stai tentando di connetterti alla porta sbagliata. Ad esempio, se il server è configurato per l'ascolto sulla porta 2244 e stai tentando di connetterti alla sua porta predefinita 22, in questo caso riceverai un errore "Connessione rifiutata".

Prima di provare a connetterti, devi controllare la porta di ascolto del server SSH. Se è la porta predefinita (22), puoi collegarla usando il seguente comando:

$ ssh [nome utente]@[IP server remoto o nome host]

Se si tratta di una porta diversa da quella predefinita, dovrai connetterti al server SSH utilizzando questa porta:

$ ssh -p [numero_porta] [nome utente]@[indirizzo_ip]

Per verificare su quale porta è in ascolto il server OpenSSH; usa il seguente comando in Terminale:

$ sudo netstat -ltnp | grep sshd

Riceverai un output simile al seguente:

Nella terza colonna, puoi vedere che la porta di ascolto del server è 2244. In questo caso, dovrai connetterti al server SSH utilizzando questa porta.

$ ssh -p [2244] [nome utente]@[indirizzo_ip]

Consenti SSH nel firewall

Il firewall che blocca la porta SSH può essere un altro dei motivi principali per l'errore "Connessione rifiutata". Se un firewall è in esecuzione sul server SSH, dovrai consentire la porta SSH utilizzando il seguente comando. Sostituisci il porta dal numero di porta su cui il server SSH è in ascolto:

$ sudo ufw allow port /tcp

Ad esempio, se il server SSH è in ascolto sulla porta 2244, puoi consentirlo nel firewall come:

$ sudo ufw allow 2244/tcp

Ricarica il firewall usando il seguente comando:

$ sudo ufw reload

Per confermare se le regole sono state aggiunte, controlla lo stato del firewall utilizzando il seguente comando in Terminale:

$ sudo ufw status

Il seguente output mostra che la porta 2244 è consentita nel firewall.

Risolvi il conflitto di indirizzi IP duplicati

L'errore "Connessione rifiutata" può verificarsi anche a causa di un conflitto di indirizzi IP duplicati. Quindi, assicurati che il sistema non abbia un indirizzo IP duplicato.

Installa l'utility arping sul tuo sistema usando il seguente comando:

$ sudo apt install arping

Quindi eseguire il ping dell'indirizzo IP del server SSH.

$ping

Nell'output, se vedi la risposta da più di un indirizzo MAC, allora mostra che c'è un IP duplicato in esecuzione sul sistema. In questo caso, cambia l'indirizzo IP del server SSH e prova a connetterti di nuovo con il nuovo indirizzo IP.

Ecco come correggere l'errore "Connessione rifiutata" tramite la porta 22 nei sistemi Linux. In questo articolo, abbiamo descritto alcuni modi che ti aiuteranno sicuramente a risolvere l'errore "Connessione rifiutata".

Come mostrare l'overlay OSD in app e giochi Linux a schermo intero
Giocare a giochi a schermo intero o utilizzare app in modalità a schermo intero senza distrazioni può tagliarti fuori dalle informazioni di sistema ri...
Le 5 migliori carte di acquisizione del gioco
Abbiamo tutti visto e amato i giochi in streaming su YouTube. PewDiePie, Jakesepticye e Markiplier sono solo alcuni dei migliori giocatori che hanno g...
Come sviluppare un gioco su Linux
Un decennio fa, non molti utenti Linux avrebbero previsto che il loro sistema operativo preferito un giorno sarebbe diventato una piattaforma di gioco...