Tokie skaitytojai kaip jūs padeda palaikyti MUO. Kai perkate naudodami nuorodas mūsų svetainėje, galime uždirbti filialų komisinius. Skaityti daugiau.

SSH yra tinklo protokolas, leidžiantis saugiai pasiekti ir valdyti nuotolinę sistemą tinkle. Prisijungdami prie nuotolinio kompiuterio per SSH, galėjote susidurti su klaida „ryšys atmestas“. Susidurti su šia problema gali būti varginantis, ypač jei esate sistemos administratorius ir turite skubiai atlikti kai kurias užduotis nuotolinėje sistemoje.

Pažvelkime į kai kurias galimas SSH klaidos „ryšys atmestas“ priežastis ir būdus, kaip ją išspręsti.

1. Patikrinkite, ar įdiegtas SSH serveris

Viena iš galimų klaidos „ryšys atmestas“ priežasčių yra ta, kad nuotolinis įrenginys neveikia SSH serveris. Be SSH serverio įrenginys nepriims įeinančių SSH jungčių ir negalėsite jo pasiekti nuotoliniu būdu.

Taigi pats pirmasis veiksmas šalinant klaidą yra patikrinti, ar nuotoliniame kompiuteryje yra įdiegtas SSH serveris. Norėdami patikrinti SSH serverio diegimą, naudokite šią komandą:

instagram viewer

„Debian“ pagrindu sukurtuose platinimuose:

dpkg --list | grep ssh

RHEL pagrįstuose paskirstymuose:

yum sąrašas įdiegtas | grep ssh

„OpenSUSE“:

zypper paieška -i | grep ssh

„Arch“ pagrįstuose platinimuose:

pacman -Q | grep ssh

Jei SSH serveris yra įdiegtas nuotoliniame kompiuteryje, pamatysite jį išvestyje. Priešingu atveju jūs turite Įdiekite OpenSSH serverį nuotoliniame kompiuteryje norite pasiekti per SSH. OpenSSH yra atvirojo kodo SSH įrankių versija, skirta nuotoliniu būdu pasiekti ir valdyti sistemas.

Norėdami įdiegti OpenSSH serverį, naudokite šias komandas:

„Debian“ pagrindu sukurtuose platinimuose:

sudo apt install openssh-server

RHEL pagrįstuose paskirstymuose:

sudo yum įdiegti openssh-server

„OpenSUSE“:

sudo zypper įdiegti openssh

„Arch“ pagrįstuose platinimuose:

pacman -S openssh

2. Patikrinkite SSH paslaugos būseną

Kita priežastis, kodėl atsiranda klaida „ryšys atmestas“, gali būti ta, kad SSH paslauga išjungta arba neveikia nuotoliniame kompiuteryje. Įsitikinus, kad SSH serveris yra įdiegtas, antras dalykas, kurį reikia patikrinti, yra serverio būsena.

sudo systemctl būsena sshd

Jei paslauga veikia, išvestyje ji bus nurodyta kaip aktyvus (bėgantis). Priešingu atveju pamatysite kažką panašaus neaktyvus (miręs).

Jei SSH serveris neveikia, galite jį paleisti rankiniu būdu naudodami šią komandą:

sudo systemctl start sshd

Taip pat galite įjungti paslaugą automatiškai paleisti įkrovos metu naudodami:

sudo systemctl įgalinti sshd

3. Patikrinkite SSH prievadą

Pagal numatytuosius nustatymus SSH serveris veikia 22 prievadu. Tačiau galima pakeisti numatytąjį prievadą. Todėl, jei gaunate SSH klaidą „ryšys atmestas“, gali būti, kad bandote prisijungti prie SSH serverio naudodami numatytąjį 22 prievadą, kai jis veikia kitame prievade.

Tu gali naudokite komandą netstat su grep, kad surastumėte prievadą, kurio klauso SSH serveris:

sudo netstat -plntu | grep ssh

SSH prievadą taip pat galite rasti iš sshd_config failą naudodami šią komandą:

grep prievadas /etc/ssh/sshd_config

Nustatę tinkamą SSH prievadą, pabandykite prisijungti prie nuotolinės sistemos naudodami tą konkretų prievadą.

4. Patikrinkite savo sistemos užkardą

Dauguma ryšio problemų kyla dėl to, kad jūsų įrenginio užkarda blokuoja kai kuriuos prievadus ar paslaugas. Jei nuotoliniame kompiuteryje yra įdiegtas ir veikia SSH serveris, kitas veiksmas yra patikrinti užkardą.

Norėdami išsiaiškinti, ar užkarda blokuoja ryšį, laikinai išjunkite užkardą naudodami šias komandas:

Debian ir Arch pagrindu veikiančiuose Linux platinimuose:

sudo ufw išjungti

RHEL pagrįstuose platinimuose ir openSUSE:

sudo systemctl išjungti ugniasienę

Jei išjungus užkardą klaida nepasirodo, tai reiškia, kad ugniasienė blokavo ryšį. Tokiu atveju iš naujo įjunkite užkardą ir pridėkite taisyklę, leidžiančią SSH.

Debian ir Arch pagrindu veikiančiuose Linux platinimuose naudokite šią komandą, kad įjungtumėte SSH UFW ugniasienė:

sudo ufw leisti ssh

Arba taip pat galite leisti SSH pagal prievado numerį ugniasienėje. Tarkime, kad SSH serveris naudoja 5555 prievadą, tada naudokite šią komandą, kad leistumėte jį užkardoje:

sudo ufw leisti 5555

Norėdami patikrinti, ar taisyklė sėkmingai pridėta, patikrinkite UFW būseną:

sudo ufw būsena

RHEL pagrįstuose platinimuose ir openSUSE naudokite šią komandą, kad užkardoje būtų leidžiama SSH:

sudo firewall-cmd --permanent --add-service=ssh

Norėdami leisti SSH pagal prievado numerį, naudokite šią komandą:

sudo firewall-cmd --permanent --add-port={port}/tcp

SSH serveriui, kuriame veikia 4444 prievadas, komanda būtų tokia:

sudo firewall-cmd --permanent --add-port=4444/tcp

Norėdami patikrinti, ar taisyklė sėkmingai įtraukta į ugniasienę, paleiskite:

sudo firewall-cmd --list-all

5. Išspręskite IP adresų konfliktus

Taip pat yra tikimybė, kad SSH klaida „prisijungimas atmestas“ įvyks dėl to, kad SSH serverio IP nesuderinamas su kitos sistemos IP tinkle. Taip atsitinka, kai dvi tinklo sistemos teigia, kad turi tą patį IP adresą, todėl IP konfliktas.

Norėdami patvirtinti, ar jūsų tinkle nėra IP konflikto, naudokite arp nuskaitymo įrankį taip:

arp-scan [tinklo ID]

Jei yra IP konfliktas, išvestyje pamatysite pasikartojantį IP adresą. Toliau pateikta ekrano kopija yra IP konflikto tinkle pavyzdys:

Kad išvengtumėte IP konfliktų, įsitikinkite, kad jokie įrenginiai neturi statinių IP adresų, kurie sutampa su DHCP telkinio adresais.

Papildomas patarimas: paleiskite SSH išsamiu režimu

Kai tik susiduriate su SSH klaida, pabandykite paleisti ssh komandą išsamiu režimu, kad nustatytumėte problemą. Norėdami paleisti SSH išsamiu režimu, naudokite ssh komandą su -vvv variantas toks:

ssh -vvv vartotojo vardas@ip_adresas

Daugiažodžiu režimu kiekviename ryšio etape matysite derinimo pranešimus, kurie padės suprasti, kur yra problema.

SSH klaidos „Prisijungimas atmestas“ trikčių šalinimas sistemoje „Linux“.

Nustačius galimas SSH ryšio klaidos priežastis ir įdiegus siūlomus sprendimus, galėsite pašalinti ir išspręsti SSH klaidą „ryšys atmestas“. Be šių veiksmų, įsitikinkite, kad jungiatės prie teisingo IP adreso ir naudojate tinkamus prisijungimo duomenis.

Kad nuotolinis ryšys būtų saugesnis, galite nustatyti dviejų veiksnių SSH autentifikavimą sistemoje „Linux“.