Guia pràctica / errors de connexió SSH

Errors de connexió SSH al teu Ubuntu VPS

Quan falla SSH, utilitza el missatge per decidir què comprovar. Separa xarxa, servei, autenticació i identitat del host, conservant les sessions que encara funcionen.

· Actualització: · Lectura: uns 5 min

Contingut de la guia

Registra un intent i conserva l’accés

Mantén oberta qualsevol sessió que funcioni i localitza la consola de recuperació. Les ordres client s’executen al teu ordinador Linux, macOS o WSL; les del servidor, a través d’accés existent o consola autenticada. No enganxis ordres del servidor al terminal local.

Canvia 203.0.113.10, ubuntu, port 22 i ruta de clau pels valors reals. La IP és un exemple reservat per a documentació. Mostra els ajustos efectius i fes un intent nou:

ssh -G -p 22 -i ~/.ssh/ubuntu_vps ubuntu@203.0.113.10
ssh -v -S none -o ConnectTimeout=10 -o StrictHostKeyChecking=ask -p 22 -i ~/.ssh/ubuntu_vps ubuntu@203.0.113.10

Revisa hostname, user, port, identityfile i proxy. La segona ordre desactiva la reutilització de connexió per a aquest intent. Anota hora i error final. Verifica qualsevol host key nou segons el seu apartat. Abans de compartir debug, oculta usuaris, adreces i rutes; mai no comparteixis claus privades.

Tria la branca segons el missatge

En pantalles petites, desplaça la taula lateralment per veure totes les columnes.

Missatge o faseQuè indicaComprovació següent
Connection timed out abans d’establir connexióTCP no ha completatAdreça, rutes, tallafocs i estat del proveïdor
Connection refusedRebuig actiu en aquella IP i portPort esperat, listener i regles de rebuig
Permission denied (publickey)S’ha arribat a autenticació, però fallen credencialsUsuari, clau oferta i política
REMOTE HOST IDENTIFICATION HAS CHANGEDLa identitat difereix de la desadaVerifica el host per una via fiable

Això acota causes, no en demostra una de sola. Si el debug diu Connection established abans del timeout, investiga handshake i registres SSH, no pressuposis que tots els paquets estan bloquejats.

Timeout: segueix el camí de xarxa

Compara la destinació de ssh -v amb la IP actual al panell. DNS antic o una IPv6 diferent poden dur a un altre lloc. Confirma si cal IP pública, VPN o jump host.

Comprova instància activa i rutes públiques. Al tallafoc del proveïdor, revisa port SSH real i IP pública d’origen actual: pot haver canviat mentre la regla /32 continua igual. Examina també el tallafoc guest des de consola.

En Oracle importen security lists, NSG, rutes i tallafoc guest. Conserva les regles de la imatge: instal·lar UFW o buidar iptables no és diagnòstic. La guia Oracle explica la xarxa. Un ping fallit no prova per si sol que SSH sigui inaccessible.

Connexió rebutjada: inspecciona el servei

Un rebuig no autentica la destinació com el teu VPS. Confirma identitat i port, i executa aquestes lectures al servidor per consola o accés existent:

systemctl status ssh.service ssh.socket --no-pager
sudo ss -lntp
sudo /usr/sbin/sshd -t
sudo journalctl -u ssh.service -u ssh.socket --since '15 minutes ago' --no-pager

Busca un listener al port i adreça esperats i correlaciona registres amb l’intent. Ubuntu pot utilitzar socket activation: ssh.service inactiu no demostra indisponibilitat si ssh.socket escolta.

sshd -t comprova configuració i claus de host sense iniciar el daemon. Èxit silenciós no acredita xarxa accessible. Si informa d’error, localitza fitxer o ajust abans de recarregar; no reiniciïs a cegues.

Clau rebutjada: comprova usuari i identitat

Fes servir el compte inicial del proveïdor o un administrador que hagis creat. Busca l’empremta oferta al debug. Per limitar claus d’agent no relacionades, prova localment:

ssh -v -S none -o IdentitiesOnly=yes -o StrictHostKeyChecking=ask -p 22 -i ~/.ssh/ubuntu_vps ubuntu@203.0.113.10

Les entrades IdentityFile configurades encara poden aplicar-se; inspecciona ssh -G. Si la clau és il·legible o té permisos massa oberts, corregeix primer el fitxer local.

Al servidor, comprova el compte i les claus autoritzades. L’exemple assumeix /home/ubuntu: substitueix-lo pel directori retornat per getent.

getent passwd ubuntu
sudo ls -ld /home/ubuntu /home/ubuntu/.ssh /home/ubuntu/.ssh/authorized_keys
sudo ssh-keygen -lf /home/ubuntu/.ssh/authorized_keys

Compara empremtes i revisa journal per a propietari, permisos o polítiques del compte. Examina AuthorizedKeysFile, includes i Match si no s’usa la ruta estàndard. Serveis de claus gestionats pel proveïdor poden canviar el mecanisme. Conserva les claus existents; no desactivis StrictModes ni activis contrasenyes per amagar el problema.

Identitat canviada: verifica abans de connectar

Una reconstrucció o IP reassignada pot canviar la clau, però un canvi inesperat pot indicar un endpoint erroni o intercepció. Confirma l’ID i la reconstrucció prevista al panell autenticat.

Des de consola fiable del convidat, consulta la clau pública de host de l’algoritme indicat. Per a Ed25519:

sudo ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub -E sha256

Compara SHA256 amb l’avís client. És la clau del servidor, no la d’inici de sessió ni la passarel·la de consola. Si la substitució és verificada, actualitza només l’entrada corresponent, amb còpia prèvia de known_hosts i preservant les altres. No eliminis tot el fitxer ni ometis comprovacions. Si el canvi no s’explica, atura la connexió i investiga.

Valida la correcció amb una sessió nova

Corregeix la IP, usuari, clau, regla estreta o error de configuració identificat. Conserva una via independent durant canvis i valida SSH abans d’aplicar-los. Un port nou també pot requerir ajustar socket activation, no només reiniciar un servei.

Repeteix l’intent sense connection sharing. Confirma usuari esperat i sudo necessari. Una sessió antiga oberta no és aquesta prova. Anota causa i canvi, i reprèn la configuració Ubuntu VPS.

Preguntes freqüents

Cal reinstal·lar Ubuntu per arreglar SSH?

Diagnostica primer. Una IP, un usuari o una clau equivocats no exigeixen reinstal·lar, i fer-ho pot destruir dades. Si no queda accés, segueix la recuperació del proveïdor.

Una consola funcional demostra que SSH hauria de funcionar?

No. La consola i l’SSH públic segueixen camins diferents. El listener, l’autenticació i les regles de xarxa encara han d’admetre la connexió.

Conserva una sessió funcional i una via de recuperació mentre investigues l’error concret.

Fonts oficials

  1. Document 1: ubuntu.com
  2. Document 2: man.openbsd.org
  3. Document 3: man.openbsd.org
  4. Document 4: man.openbsd.org
  5. Document 5: man.openbsd.org
  6. Document 6: man.openbsd.org
  7. Document 7: documentation.ubuntu.com
  8. Document 8: docs.oracle.com

Guies relacionades