CH-J Server ManagerPalvelimen hallinta yli SSH
Valikko
Kaikki oppaat ja artikkelit →

Palvelin on verkossa, mutta SSH-portti 22 ei vastaa

Käy järjestyksessä läpi asiakas, verkko, palomuuri ja sshd selvittääksesi, miksi palvelin vastaa mutta SSH ei.

Testaa itse portti

Vastaus ping-kyselyyn tai toimiva verkkosivusto ei kerro SSH:n toiminnasta, koska kukin käyttää eri protokollaa tai porttia. Testaa TCP-porttia suoraan asiakkaasta. Connection refused tarkoittaa, että jokin vastasi mutta mikään palvelu ei hyväksynyt yhteyttä. Timeout tarkoittaa, ettei mikään vastannut, mikä viittaa yleensä palomuuriin, reititykseen tai ylikuormittuneeseen koneeseen.

nc -vz -w 5 server.example 22
ssh -v -o ConnectTimeout=5 user@server.example

Connection refused: tarkista sshd konsolista

Käytä palveluntarjoajan tai hypervisorin konsolia, älä SSH-yhteyttä. Tarkista, että palvelu on käynnissä, mitä osoitetta ja porttia se kuuntelee ja onko määritys kelvollinen. Uusissa Ubuntu-versioissa SSH käynnistyy ssh.socket-yksikön kautta, joten tarkista myös socket-yksikkö. Muissa jakeluissa palvelun nimi voi olla sshd.

sudo systemctl status ssh.service ssh.socket
sudo ss -lntp | grep -E ':22\b|sshd'
sudo sshd -t
sudo journalctl -u ssh -n 50 --no-pager

Timeout: tarkista palomuurit

Tarkista palvelimen palomuuri sekä kaikki sen ulkopuoliset suodattimet, kuten pilven suojausryhmä, reititin tai palveluntarjoajan hallintapaneeli. Näet, saapuuko paketteja lainkaan, kun suoritat palvelimella tcpdump-komennon yhteysyrityksen aikana. Jos mitään ei näy, esto on ennen palvelinta. Jos paketteja saapuu mutta vastausta ei lähde, etsi syytä palvelimelta.

sudo ufw status verbose
sudo nft list ruleset | less
sudo tcpdump -ni any tcp port 22

fail2ban-esto tai muuttunut portti

Epäonnistuneiden kirjautumisten jälkeen fail2ban on saattanut estää osoitteesi. Tämä näkyy aikakatkaisuna tai torjuttuna yhteytenä vain sinun osoitteestasi. Testi toisesta verkosta paljastaa tämän nopeasti. Tarkista myös, onko porttia muutettu Port-asetuksella tai kuuntelu rajattu yhteen osoitteeseen ListenAddress-asetuksella tiedostossa sshd_config tai jossakin tiedostossa hakemistossa /etc/ssh/sshd_config.d.

sudo fail2ban-client status sshd
sudo sshd -T | grep -E '^(port|listenaddress) '

Yhteys porttiin onnistuu, mutta kirjautuminen jumittuu

Jos TCP-yhteys onnistuu mutta SSH:n aloitustunniste ei koskaan saavu, sshd toimii vain osittain tai järjestelmä on ylikuormittunut. Tarkista konsolista muisti, levytila ja kuormitus. Täysi levy tai loppunut muisti voi estää uudet istunnot, vaikka olemassa olevat palvelut yhä vastaavat.

uptime
free -h
df -h

Tarkistaminen CH-J Server Manager -sovelluksella

Server Diagnostics voi testata ping-kyselyn, TCP-yhteyden ja SSH:n tunnistemerkkijonon ilman kirjautumista sekä IPv4:llä että IPv6:lla, joten näet, missä vaiheessa virhe tapahtuu. Testit tehdään vain omalta tietokoneeltasi. Moduuli ei näe palvelimen sisälle eikä kerro, mikä palomuuri pudotti paketin, joten tarvitset edelleen konsolia edellä mainittuihin tarkistuksiin.

Yksityiskohtaiset asiakirjat

OpenSSH: sshd →

man: ss →

Biometrinen aukko ja turvallisuus →