Opomba: Tukaj obravnavani ukazi so bili preizkušeni na Ubuntu 20.04 LTS. Isti ukazi veljajo tudi za sistem Debian.
Popravi napako pri zavrnjeni povezavi
To je napaka »Povezava zavrnjena«, do katere lahko pride pri povezovanju z oddaljenim sistemom prek SSH.
Sledite spodnjim rešitvam korak za korakom, da odpravite napako »Povezava zavrnjena«.
Prepričajte se, da je nameščen OpenSSH
Eden od razlogov, da lahko prejmete napako »Povezava zavrnjena«, je, da strežnik OpenSSH ni nameščen na ciljnem strežniku.
Najprej se morate prepričati, da je strežnik OpenSSH nameščen v sistemu, do katerega poskušate dostopati prek SSH. Če želite preveriti, ali je OpenSSH nameščen ali ne, v terminalu ciljnega strežnika izdajte naslednji ukaz:
$ sudo apt list --installed | grep openssh-serverTa ukaz v bistvu filtrira izraz "openssh-server" s seznama nameščenih paketov. Če prejmete naslednji podoben izhod, to pomeni, da je nameščen strežnik OpenSSH. Po drugi strani pa, če ne prejmete izhoda, pomeni, da na ciljnem strežniku manjka OpenSSH.
Če ni nameščen na ciljnem strežniku, ga lahko namestite z naslednjim ukazom kot sudo:
$ sudo apt install openssh-serverNato vnesite sudo geslo in na vprašanje za potrditev pritisnite 'y'. Ko je nameščen, ga potrdite z istim ukazom
$ sudo apt list --installed | grep openssh-serverPreverite SSH storitev
Storitev OpenSSH deluje v ozadju in posluša dohodne povezave. Ustavljena storitev OpenSSH je lahko eden od razlogov, da se prikaže napaka »Povezava zavrnjena«.
Zato je treba preveriti, ali se storitev OpenSSH izvaja ali ne, z uporabo naslednjega ukaza v terminalu:
$ sudo service ssh statusČe vidite naslednji izhod, to pomeni, da je storitev aktivna in deluje v ozadju.
Po drugi strani pa, če prejmete neaktiven (mrtev), to pomeni, da storitev ne deluje. Storitev OpenSSH lahko zaženete z naslednjim ukazom kot sudo v terminalu:
$ sudo service ssh startČe želite storitev znova zagnati, uporabite naslednji ukaz:
$ sudo service ssh restartPreverite vrata za poslušanje SSH strežnika
Drug razlog za napako »Povezava zavrnjena« je ta, da se poskušate povezati z napačnimi vrati. Če je na primer strežnik konfiguriran za poslušanje na vratih 2244 in se poskušate povezati z njegovimi privzetimi vrati 22, boste v tem primeru prejeli napako »Povezava zavrnjena«.
Preden se poskusite povezati, morate preveriti vrata za poslušanje SSH strežnika. Če so to privzeta vrata (22), jih lahko povežete z naslednjim ukazom:
$ ssh [uporabniško ime] @ [IP oddaljenega strežnika ali ime gostitelja]Če gre za vrata, ki niso privzeta, se boste morali povezati s strežnikom SSH s pomočjo teh vrat:
$ ssh -p [port_number] [uporabniško ime] @ [ip_address]Da bi preverili, na katerih vratih posluša strežnik OpenSSH; uporabite naslednji ukaz v terminalu:
$ sudo netstat -ltnp | grep sshdPrejeli boste rezultate, podobne naslednjim:
V tretjem stolpcu lahko vidite vrata strežnika za poslušanje 2244. V tem primeru se boste morali s temi vrati povezati s strežnikom SSH.
$ ssh -p [2244] [uporabniško ime] @ [ip_address]Dovoli SSH v požarnem zidu
Požarni zid, ki blokira vrata SSH, je lahko še en glavni razlog za napako »Povezava zavrnjena«. Če se požarni zid izvaja na strežniku SSH, morate v njem omogočiti vrata SSH z naslednjim ukazom. Zamenjajte pristanišče po številki vrat, ki jo posluša SSH strežnik:
$ sudo ufw dovoli port / tcpČe na primer strežnik SSH posluša vrata 2244, ga lahko v požarnem zidu dovolite kot:
$ sudo ufw dovoli 2244 / tcp
Znova naložite požarni zid z naslednjim ukazom:
$ sudo ufw ponovno naložiČe želite potrditi, ali so bila pravila dodana, preverite stanje požarnega zidu z naslednjim ukazom v terminalu:
$ sudo ufw statusNaslednji izhod kaže, da so vrata 2244 dovoljena v požarnem zidu.
Odpravite konflikt podvojenih naslovov IP
Napaka »Povezava zavrnjena« se lahko pojavi tudi zaradi konflikta podvojenih naslovov IP. Prepričajte se, da sistem nima podvojenega naslova IP.
V sistem namestite pripomoček za arping z naslednjim ukazom:
$ sudo apt namestite arpingNato ping IP naslov strežnika SSH.
$ pingČe na izhodu vidite odgovor z več naslovov MAC, potem to kaže, da v sistemu teče podvojen IP. V tem primeru spremenite naslov IP strežnika SSH in se poskusite znova povezati z novim naslovom IP.
Tako lahko v sistemih Linux odpravite napako »Povezava zavrnjena« z vrati 22. V tem članku smo opisali nekaj načinov, ki vam bodo zagotovo pomagali pri odpravi napake »Povezava zavrnjena«.