Muszę połączyć się z hostem z dynamicznym adresem IP.
Za każdym razem, gdy zmienia się jego adres IP, SSH monituje mnie o sprawdzenie poprawności odcisków palców:
The authenticity of host '...' can't be established.
RSA key fingerprint is ....
Are you sure you want to continue connecting (yes/no)?
Czy można przekazać SSH klucz publiczny hosta, aby:
- SSH automatycznie sprawdza autentyczność hosta
- Klucz hosta nie jest przechowywany w pliku znanego_hosta
To pytanie różni się od tego, jak mogę uniknąć weryfikacji hosta SSH dla znanych hostów? Od tamtego innych pytań ma na celu walidacji tłumić SSH, a ja nie chcę, żeby go powstrzymać: Ja nie chce mieć gospodarz uwierzytelniony, tylko za pomocą klucza publicznego hosta (które znam, i to zapisane w pliku) zamiast SSH known_hosts
plik.
Wydaje mi się, że inne pytanie dotyczy łączenia się z innym serwerem za każdym razem, zamiast łączenia się z jednym dobrze znanym serwerem z dynamicznym adresem IP.
źródło
HostKeyAlias
wartość konfiguracyjną do~/.ssh/config
pliku, a nawet do/etc/ssh/ssh_config
pliku globalnego .known_hosts
Plik jest nie tylko kluczem, to zawiera również nazwę hosta używaną do łączenia, a jeśli to możliwe, IP, który odpowiada. Dlatego widzisz błąd, porównuje on triplet, który dostaje z serwera, z tym, co zapisałeś w pliku znane_hosty.Jeśli więc adres IP ciągle się zmienia, możesz go wyłączyć,
CheckHostIP
co oznacza, że po prostu sprawdzi nazwę hosta i klucz hosta. Jeśli pozostaną one niezmienione, powinieneś mieć mniej skarg, ale będziesz narażony na ryzyko, jeśli ktoś przejmie twój DNS.źródło
known_hosts
. Dlaczego? Czy nie mogę powiedzieć „ssh połącz się z X, którego kluczem publicznym jest Y”? Dlaczego nie? Czy nie byłoby to w 100% pewne?