SSH nefunguje
SSH je jediná cesta k Linux VPS — dokud nepřestane fungovat. Naštěstí existuje záchranná cesta.
Záchranná brzda: VNC konzole
V Convoyi máš VNC konzoli, která funguje nezávisle na SSH, firewallu i síti. Přes ni se dostaneš na server vždy, i když sis SSH úplně rozbil.
Diagnostika podle chyby
| Hláška | Příčina | Řešení |
|---|---|---|
Connection refused | SSH démon neběží nebo jiný port | systemctl status ssh přes VNC |
Connection timed out | Firewall blokuje, špatná IP | Zkontroluj ufw |
Permission denied (publickey) | Server nepřijímá heslo, chybí klíč | Nahraj klíč přes VNC |
Host key verification failed | Změnil se otisk (reinstall) | ssh-keygen -R IP |
Too many authentication failures | Klient nabízí moc klíčů | IdentitiesOnly yes |
Connection refused
SSH služba neběží. Přes VNC konzoli (na Rocky/AlmaLinux je služba sshd, ne ssh):
sudo systemctl status ssh
sudo systemctl start ssh
sudo systemctl enable ssh
# Na kterem portu naslouchá?
sudo ss -tulpn | grep sshdConnection timed out
Blokuje firewall.
# Přes VNC konzoli
sudo ufw status
sudo ufw allow OpenSSHKlasická past: sudo ufw enable bez předchozího sudo ufw allow OpenSSH. Sám
sebe okamžitě odřízneš. Pravidlo pro SSH vždy přidej jako první.
Permission denied (publickey)
Server má vypnuté přihlášení heslem a tvůj klíč nepřijímá.
Přihlas se přes VNC konzoli
Zkontroluj práva
ls -ld ~/.ssh
ls -l ~/.ssh/authorized_keysMusí být 700 a 600.
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keysZkontroluj obsah
cat ~/.ssh/authorized_keysKlíč musí být na jednom řádku a začínat ssh-ed25519 nebo ssh-rsa.
Zkontroluj konfiguraci
sudo grep -E "PubkeyAuthentication|PasswordAuthentication|PermitRootLogin" /etc/ssh/sshd_configŠpatná práva na ~/.ssh jsou nejčastější příčina Permission denied s
platným klíčem. SSH takový klíč z bezpečnostních důvodů ignoruje — a v běžném
výstupu ti to neřekne.
Podrobný výstup
ssh -vvv [email protected]Řádky debug1: Offering public key a následná odpověď serveru ti řeknou, který
klíč se nabízí a proč byl odmítnut.
Na serveru současně sleduj:
sudo journalctl -u ssh -fHost key verification failed
Po reinstallu se změní otisk serveru.
ssh-keygen -R 11.22.33.44Pokud jsi server nereinstaloval a otisk se změnil, nepřipojuj se. Může jít o pokus o odposlech. Ověř otisk v panelu.
Fail2ban tě zablokoval
# Přes VNC
sudo fail2ban-client status sshd
sudo fail2ban-client set sshd unbanip 89.24.1.2Když nic nepomůže
Poslední možnost je reinstall. Předtím si přes VNC
konzoli stáhni data, například přes scp z běžícího systému.
Tipy
- Nikdy nezavírej fungující SSH relaci, dokud v druhém okně neověříš změnu konfigurace.
- Před úpravou
sshd_configspusťsudo sshd -tpro kontrolu syntaxe.
Poznámka
Změna portu SSH není bezpečnostní opatření, jen sníží šum v logu. Chrání klíče a firewall.