SSH-verbindingsfoute op jou Ubuntu VPS
Gebruik die presiese SSH-fout om die volgende kontrole te kies. Hierdie gids skei netwerk-, diens-, aanmeld- en bedieneridentiteitsprobleme, terwyl enige werkende toegang behoue bly.
VPSuntu · Bygewerk: · Leestyd: sowat 5 min
In hierdie gids
Bewaar toegang en teken een mislukking aan
Hou ’n suksesvolle SSH-sessie oop en vind die herstelkonsole. Kliëntopdragte loop op jou rekenaar met Linux, macOS of WSL. Bedieneropdragte loop deur bestaande toegang of die geverifieerde herstelkonsole; moenie hulle plaaslik plak nie.
Vervang dokumentasieadres 203.0.113.10, gebruiker ubuntu, poort 22 en die private sleutelpad met jou werklike waardes. Lees eers berekende kliëntinstellings en maak dan een nuwe verbinding:
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.10Kontroleer hostname, user, port, identityfile en proxy-instellings. Die tweede opdrag skakel connection sharing vir hierdie poging af. Teken tyd en eindfout aan. Verifieer enige nuwe host-key-vraag volgens die identiteitsafdeling. Verwyder sensitiewe gebruikersname, adresse en paaie voordat jy debug-uitvoer deel; deel nooit ’n private sleutel nie.
Kies volgens die foutstadium
Skuif die tabel sywaarts op klein skerms om al die kolomme te sien.
| Boodskap of stadium | Wat dit aandui | Volgende kontrole |
|---|---|---|
| Connection timed out vóór verbinding | TCP-verbinding het nie voltooi nie | Adres, roete, brandmure en verskafferstatus |
| Connection refused | Aktiewe weiering op dié adres en poort | Verwagte poort, luisterdiens en weieringsreëls |
| Permission denied (publickey) | SSH het aanmelding bereik maar die sleutel is geweier | Gebruiker, aangebode sleutel en beleid |
| REMOTE HOST IDENTIFICATION HAS CHANGED | Die aangebode identiteit verskil van die bewaarde een | Vertroude sleutelverifikasie vóór voortgaan |
Dit vernou die ondersoek, maar bewys nie een oorsaak nie. As Connection established reeds vóór ’n timeout verskyn, ondersoek die SSH-handshake en bedienerlogs eerder as om alle verkeer as geblokkeer te beskou.
Timeout: volg die bedoelde netwerkroete
Vergelyk ssh -v se bestemming met die huidige paneeladres. Ou DNS of ’n ander IPv6-bestemming kan jou elders stuur. Bevestig of openbare IP, VPN of jump host nodig is.
Kontroleer dat die VM loop en openbare roetering bestaan. Verifieer werklike SSH-poort en huidige openbare bronadres in die verskafferbrandmuur. ’n Huisverbinding se IP kan verander terwyl ’n /32-reël oud bly. Kontroleer ook die gasbrandmuur via konsole.
OCI security lists, NSG’s, roetes en gasbrandmuur tel almal. Behou bestaande beeldreëls; UFW installeer of iptables leegmaak is nie diagnose nie. Die Oracle-gids verduidelik die netwerk. ’n Mislukte ping bewys nie alleen dat SSH onbereikbaar is nie.
Connection refused: inspekteer die diens
’n Weiering bevestig nie dat dit jou bedoelde VPS is nie. Verifieer identiteit en poort, en voer hierdie leesopdragte op die bediener via konsole of bestaande toegang uit:
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-pagerSoek ’n listener op die verwagte adres en poort en vergelyk logs met jou poging. Ubuntu kan socket activation gebruik: ’n onaktiewe ssh.service bewys nie onbeskikbaarheid as ssh.socket luister nie.
sshd -t toets konfigurasie en bedienersleutels sonder om die daemon te begin. Stil sukses bewys nie netwerkbereikbaarheid nie. Identifiseer ’n fout se lêer of instelling voordat jy herlaai; moenie blind herbegin nie.
Publickey geweier: kontroleer rekening en sleutel
Gebruik die verskaffer se aanvanklike rekening of ’n administrateur wat jy geskep het. Soek die aangebode vingerafdruk in kliënt-debug. Verminder onbedoelde agentsleutels met hierdie plaaslike poging:
ssh -v -S none -o IdentitiesOnly=yes -o StrictHostKeyChecking=ask -p 22 -i ~/.ssh/ubuntu_vps ubuntu@203.0.113.10Gekonfigureerde IdentityFile-inskrywings kan steeds geld; lees ssh -G. As die private lêer onleesbaar is of te oop toestemmings het, herstel eers die plaaslike lêertoegang.
Kontroleer op die bediener die rekening en gemagtigde openbare sleutels. Die voorbeeld neem /home/ubuntu aan; gebruik die tuispad wat getent teruggee.
getent passwd ubuntu
sudo ls -ld /home/ubuntu /home/ubuntu/.ssh /home/ubuntu/.ssh/authorized_keys
sudo ssh-keygen -lf /home/ubuntu/.ssh/authorized_keysVergelyk vingerafdrukke en lees journal vir eienaarskap, toestemmings en rekeningbeleid. Hersien AuthorizedKeysFile, ingeslote konfigurasie en Match wanneer die verstekpad nie geld nie. Verskafferbestuurde sleuteldienste kan die meganisme verander. Behou bestaande sleutels; moenie StrictModes afskakel of wagwoorde aktiveer om die probleem te verberg nie.
Veranderde bedienersleutel: verifieer eers
Herbou of ’n hertoegewese IP kan ’n sleutel verander, maar ’n onverwagte verandering kan ook ’n verkeerde eindpunt of onderskepping aandui. Bevestig instansie-ID en beplande herbou in die geverifieerde paneel.
Lees uit ’n vertroude konsole van die gasstelsel die openbare bedienersleutel met dieselfde algoritme. Vir Ed25519:
sudo ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub -E sha256Vergelyk SHA256 met die kliëntwaarskuwing. Dit is die bedienersleutel, nie jou aanmeldsleutel of die konsolegateway se sleutel nie. Ná bewese vervanging kan jy net dié bediener se inskrywing bywerk, met ’n voorafkopie en behoud van ander inskrywings. Moenie known_hosts geheel skrap of kontrole omseil nie. As die identiteit onverklaar bly, stop en ondersoek.
Toets die presiese regstelling met nuwe toegang
Herstel die geïdentifiseerde adres, gebruiker, sleutel, beperkte netwerkreël of konfigurasiefout. Hou ’n onafhanklike toegangsroete en valideer SSH-konfigurasie vóór toepassing. ’n Nuwe poort kan ook socket-instellings verg, nie net ’n diensherbegin nie.
Herhaal die oorspronklike poging sonder connection sharing. Bevestig die rekening en nodige sudo-toegang. ’n Ou sessie wat oop bly, is nie hierdie toets nie. Teken oorsaak en verandering aan en hervat die Ubuntu VPS-opstelling.
Gereelde vrae
Moet ek Ubuntu herinstalleer om SSH reg te maak?
Diagnoseer eers. ’n Verkeerde adres, gebruiker of sleutel verg nie herinstallasie nie, en herinstallasie kan data vernietig. Gebruik die verskaffer se herstelproses as geen toegang oorbly nie.
Bewys ’n werkende konsole dat SSH behoort te werk?
Nee. Konsole en openbare SSH gebruik verskillende roetes. Die listener, aanmelding en netwerkreëls moet steeds SSH toelaat.