CH-J Server Managerspráva serverů přes SSH
Menu
Všechny návody a články →

Změna klíče hostitele SSH: co varování znamená a jak postupovat

Zjistěte, proč server předkládá nový klíč hostitele, ověřte jej jiným kanálem a bezpečně nahraďte uložený záznam.

Co varování říká

Server prokazuje svou identitu klíčem hostitele. Když se klíč liší od toho, který si váš klient dříve uložil, OpenSSH zobrazí REMOTE HOST IDENTIFICATION HAS CHANGED a odmítne spojení. Klient nedokáže rozlišit neškodnou změnu od útoku, proto považujte varování za nevyřešené, dokud změnu neprověříte.

Běžné příčiny

Obvyklými příčinami jsou přeinstalovaný server, virtuální stroj obnovený nebo naklonovaný z obrazu, adresa nově přiřazená jinému stroji a nástroj pro vyvažování zátěže, který vás posílá na různé uzly. Stejné varování vyvolá útočník zachycující spojení. Pokud jste změnu neočekávali, zastavte se a nezadávejte heslo.

Porovnejte otisky klíčů

Skutečný otisk přečtěte na serveru kanálem nezávislým na tomto SSH spojení, například přes konzoli poskytovatele nebo hypervizoru. Příkaz ssh-keyscan ukazuje pouze to, co vám předloží síť, sám o sobě tedy nic nedokazuje. Je užitečný pouze pro porovnání s hodnotou z konzole.

sudo ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub

ssh-keyscan -t ed25519 server.example | ssh-keygen -lf -

Nahraďte starý záznam

Teprve až se otisky shodují, odstraňte starý záznam a připojte se znovu. Nestandardní port má vlastní záznam zapsaný s hranatými závorkami. ssh-keygen zachová předchozí soubor jako known_hosts.old. Nevypínejte StrictHostKeyChecking a nemažte celý soubor known_hosts, protože tím odstraníte ochranu pro všechny své servery.

ssh-keygen -R server.example
ssh-keygen -R '[server.example]:2222'
ssh user@server.example

Jak se vyhnout varování po přeinstalaci

Pokud plánujete server znovu nainstalovat a chcete zachovat jeho identitu, bezpečně zálohujte klíče hostitele v /etc/ssh a obnovte je se stejným vlastníkem a oprávněními. U klonů postupujte opačně: každý stroj vytvořený z jednoho obrazu potřebuje vlastní klíče hostitele, jinak několik serverů sdílí jednu identitu.

Klíče hostitele v CH-J Server Manager

Aplikace ukládá otisky SHA-256 klíčů hostitele do svého šifrovaného trezoru, odděleně od souboru known_hosts nástroje OpenSSH. Při změně zablokuje spojení a zobrazí známý i nový otisk. Záznam se nahradí pouze po vašem potvrzení a zrušení nic nezmění. V Alpha 0.1.1 se kontrola vztahuje i na každý zprostředkující server a probíhající přenos se při změně klíče zastaví. Aplikace za vás nový otisk ověřit nemůže, kontrola jiným kanálem proto zůstává na vás.

Podrobná dokumentace

OpenSSH: ssh →

OpenSSH: ssh-keygen →

Biometrické odemykání a zabezpečení →