Bemærk: De kommandoer, der diskuteres her, er blevet testet på Ubuntu 20.04 LTS. De samme kommandoer er også gyldige for Debian -systemet.
Fix Forbindelse afvist fejl
Dette er forbindelsen nægtet fejl, du kan støde på, når du opretter forbindelse til et fjernsystem via SSH.
Følg nedenstående løsninger trin for trin for at løse forbindelsen nægtet fejl.
Sørg for, at OpenSSH er installeret
En af grundene til, at du muligvis får en Connection -nægtelsesfejl, er, fordi OpenSSH -serveren ikke er installeret på målserveren.
Først skal du sikre dig, at OpenSSH -serveren er installeret på det system, som du prøver at få adgang til via SSH. For at kontrollere, om OpenSSH er installeret eller ej, skal du udstede følgende kommando i målserverens terminal:
$sudopassende liste-installeret | grebopenssh-server
Denne kommando filtrerer dybest set udtrykket openssh-server fra listen over installerede pakker. Hvis du modtager følgende lignende output, angiver det, at OpenSSH -serveren er installeret. På den anden side, hvis du ikke modtager noget output, betyder det, at OpenSSH mangler på målserveren.
Hvis det ikke er installeret på målserveren, kan du installere det ved hjælp af følgende kommando som sudo:
$sudopassendeinstallereopenssh-serverIndtast derefter sudo -adgangskode, og tryk på 'y', når du bliver bedt om bekræftelse. Når det er installeret, skal du bekræfte det med den samme kommando
$sudopassende liste-installeret | grebopenssh-serverTjek SSH service
OpenSSH -service kører i baggrunden og lytter til indgående forbindelser. Den stoppede OpenSSH -service kan være en af årsagerne til, at du modtager en Connection -nægtelsesfejl.
Derfor er det nødvendigt at kontrollere, om OpenSSH -tjenesten kører eller ikke bruger følgende kommando i Terminal:
$sudoservicesshstatusHvis du ser følgende output, betyder det, at tjenesten er aktiv og kører i baggrunden.
På den anden side, hvis du modtager inaktiv (død), det betyder, at tjenesten ikke kører . Du kan køre OpenSSH -tjenesten ved hjælp af følgende kommando som sudo i Terminal:
$sudoservicesshStartFor at genstarte tjenesten skal du bruge følgende kommando:
$sudoservicesshgenstartKontroller SSH -serverens lytteport
En anden grund til at modtage en Connection -nægtelsesfejl er, fordi du prøver at oprette forbindelse til den forkerte port. For eksempel, hvis serveren er konfigureret til at lytte på port 2244, og du forsøger at oprette forbindelse til standardport 22, vil du i dette tilfælde modtage en fejl med forbindelse til afvisning.
Inden du prøver at oprette forbindelse, skal du kontrollere SSH -serverens lytteport. Hvis det er standardporten (22), kan du tilslutte det ved hjælp af følgende kommando:
$ssh [brugernavn]@[fjernbetjenings -IP ellerværtsnavn]Hvis det er en anden port end standardporten, skal du oprette forbindelse til SSH -serveren ved hjælp af denne port:
$ssh -s [portnummer] [brugernavn]@[IP-adresse]For at kontrollere, på hvilken port OpenSSH -serveren lytter til; brug følgende kommando i Terminal:
$sudo netstat -ltnp | grebsshdDu modtager output svarende til følgende:
I den tredje kolonne kan du se, at serverens lytteport er 2244. Hvis dette er tilfældet, skal du oprette forbindelse til SSH -serveren ved hjælp af denne port.
$ssh -s [2244] [brugernavn]@[IP-adresse]Tillad SSH i firewall
Firewall, der blokerer SSH -porten, kan være en anden væsentlig årsag til forbindelsen, der blev afvist. Hvis en firewall kører på SSH -serveren, skal du tillade SSH -porten i den ved hjælp af følgende kommando. Udskift Havn efter portnummeret SSH -serveren lytter til:
$sudoufw tillader port/tcpFor eksempel, hvis SSH -serveren lytter til port 2244, kan du tillade det i firewallen som:
$sudoufw tillader2244/tcp
Genindlæs firewallen ved hjælp af følgende kommando:
$sudoufw genindlæserFor at bekræfte, om reglerne er tilføjet, skal du kontrollere firewallens status ved hjælp af følgende kommando i Terminal:
$sudoufw statusDen følgende output viser, at porten 2244 er tilladt i firewallen.
Løs konflikt med dobbelt IP -adresse
Fejlen Forbindelse nægtet kan også opstå på grund af duplikat IP -adresse konflikt. Sørg derfor for, at systemet ikke har en duplikeret IP -adresse.
Installer arping -værktøjet på dit system ved hjælp af følgende kommando:
$sudopassendeinstallerearpingDerefter ping SSH -serverens IP -adresse.
$ping <IP-adresse>I output, hvis du ser svaret fra mere end én MAC -adresse, viser det, at der kører en duplikat IP på systemet. Hvis dette er tilfældet, skal du ændre SSH -serverens IP -adresse og prøve at oprette forbindelse igen med den nye IP -adresse.
Sådan repareres forbindelsen, der blev nægtet forbindelse til port 22 i Linux -systemer. I denne artikel har vi beskrevet et par måder, der helt sikkert vil hjælpe dig med at løse forbindelsen nægtet fejl.