Teiesugused lugejad aitavad MUO-d toetada. Kui teete ostu meie saidil olevate linkide abil, võime teenida sidusettevõtte komisjonitasu. Loe rohkem.

SSH on võrguprotokoll, mis võimaldab teil võrgu kaudu turvaliselt kaugsüsteemile juurde pääseda ja seda hallata. SSH kaudu kaugmasinaga ühenduse loomisel võisite ilmneda tõrketeade "ühendamisest keelduti". Selle probleemi kogemine võib olla masendav, eriti kui olete süsteemiadministraator ja peate kiiresti täitma kaugsüsteemis mõnda toimingut.

Vaatame mõningaid võimalikke põhjuseid, miks SSH-i tõrketeade "ühendusest keelduti", ja selle lahendamise meetodeid.

1. Kontrollige, kas SSH-server on installitud

Üks võimalik tõrke "ühendusest keeldumine" põhjus on see, et kaugmasin ei tööta SSH-server. Ilma SSH-serverita ei võta masin vastu sissetulevaid SSH-ühendusi ja te ei saa sellele kaugjuurdepääsu.

Seega on tõrkeotsingu esimene samm kontrollida, kas kaugmasinasse on installitud SSH-server. Kasutage SSH-serveri installimise kontrollimiseks järgmist käsku:

Debianil põhinevate distributsioonide puhul:

dpkg --list | grep ssh

RHEL-põhistel distributsioonidel:

yum list installitud | grep ssh

OpenSUSE-s:

zypper otsing -i | grep ssh

Arch-põhistel distributsioonidel:

pacman -Q | grep ssh

Kui SSH-server on kaugmasinasse installitud, näete seda väljundis. Vastasel juhul peate installige OpenSSH-server kaugmasinasse soovite SSH kaudu juurde pääseda. OpenSSH on SSH-tööriistade avatud lähtekoodiga versioon süsteemidele kaugjuurdepääsuks ja -juhtimiseks.

OpenSSH-serveri installimiseks kasutage järgmisi käske:

Debianil põhinevate distributsioonide puhul:

sudo apt install openssh-server

RHEL-põhistel distributsioonidel:

sudo yum install openssh-server

OpenSUSE-s:

sudo zypper install openssh

Arch-põhistel distributsioonidel:

pacman -S openssh

2. Kontrollige SSH teenuse olekut

Teine põhjus, miks tõrketeade "ühendusest keelduti", võib olla see, et SSH-teenus on keelatud või ei tööta kaugmasinas. Kui olete veendunud, et SSH-server on installitud, peate teiseks kontrollima serveri olekut.

sudo systemctl olek sshd

Kui teenus on käivitatud ja töötab, näitab väljund seda järgmiselt aktiivne (jooksev). Vastasel juhul näete midagi sarnast passiivne (surnud).

Kui SSH-server ei tööta, saate selle käsitsi käivitada, kasutades järgmist käsku:

sudo systemctl start sshd

Samuti saate lubada teenuse automaatse käivitamise käivitamisel:

sudo systemctl lubab sshd

3. Kontrollige SSH-porti

Vaikimisi töötab SSH-server pordil 22. Vaikimisi porti saab siiski muuta. Seega, kui saate SSH-i tõrketeate "ühendusest keelduti", võib põhjus olla selles, et proovite SSH-serveriga ühendust luua vaikepordis 22, kui see töötab mõnes teises pordis.

Sa saad kasutage käsku netstat kasutades grep, et leida port, mida SSH-server kuulab:

sudo netstat -plntu | grep ssh

SSH-pordi leiate ka aadressilt sshd_config faili kasutades järgmist käsku:

grep port /etc/ssh/sshd_config

Pärast õige SSH-pordi tuvastamist proovige luua ühendus oma kaugsüsteemiga, kasutades seda konkreetset porti.

4. Kontrollige oma süsteemi tulemüüri

Enamik ühenduvusprobleeme ilmneb seetõttu, et teie masina tulemüür blokeerib mõned pordid või teenused. Kui kaugmasinasse on installitud ja töötab SSH-server, on järgmine samm tulemüüri kontrollimine.

Et välja selgitada, kas tulemüür blokeerib ühendust, keelake tulemüür ajutiselt järgmiste käskude abil:

Debiani ja Arch-põhiste Linuxi distributsioonide puhul:

sudo ufw keelata

RHEL-põhistel distributsioonidel ja openSUSE-l:

sudo systemctl keelab tulemüüri

Kui viga pärast tulemüüri keelamist ei ilmu, tähendab see, et tulemüür blokeeris ühenduse. Sel juhul lubage tulemüür uuesti ja lisage reegel, mis lubab SSH-d.

Debiani ja Arch-põhiste Linuxi distributsioonide puhul kasutage SSH-i lubamiseks järgmist käsku UFW tulemüür:

sudo ufw luba ssh

Teise võimalusena saate SSH-d lubada ka tulemüüris oleva pordi numbri järgi. Oletame, et SSH-server kasutab porti 5555, siis kasutaksite selle tulemüüris lubamiseks järgmist käsku:

sudo ufw luba 5555

Kontrollimaks, kas reegel on edukalt lisatud, kontrollige UFW olekut:

sudo ufw olek

RHEL-põhiste distributsioonide ja openSUSE puhul kasutage SSH tulemüüris lubamiseks järgmist käsku:

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

SSH lubamiseks pordi numbri järgi kasutage järgmist käsku:

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

Port 4444 töötava SSH-serveri puhul oleks käsk järgmine:

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

Reegli eduka lisamise kontrollimiseks tulemüüris käivitage:

sudo firewall-cmd --list-all

5. IP-aadresside konfliktide lahendamine

Samuti on võimalik, et SSH-i tõrge "ühendusest keelduti", kuna SSH-serveri IP on vastuolus teise süsteemi IP-ga võrgus. See juhtub siis, kui kaks võrgusüsteemi väidavad, et neil on sama IP-aadress, mille tulemuseks on IP-konflikt.

Kontrollimaks, kas teie võrgus on IP-konflikt, kasutage arp-scan tööriista järgmiselt.

arp-scan [võrgu ID]

Kui on IP-konflikt, näete väljundis dubleerivat IP-aadressi. Allolev ekraanipilt on näide IP-konfliktist võrgus:

IP-konfliktide vältimiseks veenduge, et ühelgi seadmel ei oleks staatilisi IP-aadresse, mis kattuvad DHCP kogumi aadressidega.

Boonusnäpunäide: käivitage SSH paljusõnalises režiimis

Kui teil tekib SSH-tõrge, proovige probleemile jälile jõudmiseks käivitada ssh-käsk üksikasjalikus režiimis. SSH-i käitamiseks üksikasjalikus režiimis kasutage ssh-käsku koos -vvv valik järgmiselt:

ssh -vvv kasutajanimi@ip_aadress

Paljusõnalises režiimis näete ühenduse igas etapis silumissõnumeid, mis aitavad teil mõista, kus probleem peitub.

SSH tõrkeotsing "Ühendus tagasi lükatud" Linuxis

Kui tuvastate SSH-ühenduvusvea võimalikud põhjused ja rakendate soovitatud lahendused, saate tõrkeotsingut teha ja lahendada SSH-i tõrke "ühendusest keelduti". Lisaks nendele sammudele veenduge, et loote ühenduse õige IP-aadressiga ja kasutate õigeid sisselogimismandaate.

Kaugühenduse turvalisemaks muutmiseks saate Linuxis SSH jaoks seadistada kahefaktorilise autentimise.