Sådan rettes: Forbindelse nægtet af port 22 Debian/Ubuntu

How Fix Connection Refused Port 22 Debian Ubuntu



SSH giver en sikker måde at få adgang til og administrere Linux -servere. Nogle gange når brugere opretter forbindelse til SSH -servere, støder brugerne ofte på forbindelse nægtet fejl ved port 22. Det sker på grund af flere årsager, som f.eks. At SSH -tjenesten ikke kører, porten blokeres af firewallen, eller at serveren bruger en anden port. Det kan også forekomme på grund af IP -konfliktproblemet. I denne artikel vil vi diskutere nogle af de løsninger, du bør prøve for at rette fejlen.

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-server

Indtast 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-server

Tjek 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:

$sudoservicesshstatus

Hvis 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:

$sudoservicesshStart

For at genstarte tjenesten skal du bruge følgende kommando:

$sudoservicesshgenstart

Kontroller 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 | grebsshd

Du 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/tcp

For 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æser

For at bekræfte, om reglerne er tilføjet, skal du kontrollere firewallens status ved hjælp af følgende kommando i Terminal:

$sudoufw status

Den 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:

$sudopassendeinstallerearping

Derefter 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.