Как игнорировать отличный публичный ключ при подключении через SSH
к хосту?
ekzorchik@navy:~$ ssh -l ekzorchik 172.33.33.20 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the ECDSA key sent by the remote host is SHA256:jovhtAa2/YTBPqlSZHBLzziocVylTpHDsFf8pKdRU88. Please contact your system administrator. Add correct host key in /home/ekzorchik/.ssh/known_hosts to get rid of this message. Offending ECDSA key in /home/ekzorchik/.ssh/known_hosts:27 remove with: ssh-keygen -f "/home/ekzorchik/.ssh/known_hosts" -R "172.33.33.20" ECDSA host key for 172.33.33.20 has changed and you have requested strict checking. Host key verification failed. ekzorchik@navy:~$
Вариант использования №1: |
ssh-keygen -f "/home/ekzorchik/.ssh/known_hosts" -R "172.33.33.20"
не вариант.
Вариант использования №2: |
ekzorchik@navy:~$ ssh -o "StrictHostKeyChecking=no" ekzorchik@172.33.33.20 IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the ECDSA key sent by the remote host is SHA256:jovhtAa2/YTBPqlSZHBLzziocVylTpHDsFf8pKdRU88. Please contact your system administrator. Add correct host key in /home/ekzorchik/.ssh/known_hosts to get rid of this message. Offending ECDSA key in /home/ekzorchik/.ssh/known_hosts:27 remove with: ssh-keygen -f "/home/ekzorchik/.ssh/known_hosts" -R "172.33.33.20" Password authentication is disabled to avoid man-in-the-middle attacks. Keyboard-interactive authentication is disabled to avoid man-in-the-middle attacks. ekzorchik@172.33.33.20: Permission denied (publickey,password).
Вариант использования №3: |
ekzorchik@navy:~$ ssh -o "UserKnownHostsFile=/dev/null" -o "StrictHostKeyChecking=no" ekzorchik@172.33.33.20 Warning: Permanently added '172.33.33.20' (ECDSA) to the list of known hosts. ekzorchik@172.33.33.20's password: Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-51-generic x86_64) ekzorchik@srv-dbionic:~$
Вариант использования №4: |
Внести изменения в клиентское подключение для всех хостов или для конкретного с целью игнорирования отпечатка удаленного хоста:
ekzorchik@navy:~$ sudo nano /etc/ssh/ssh_config
→ настройки для всех авторизованных на данной системе применяемые при подключении к удаленным.
Host 172.33.33.20
StrictHostKeyChecking no
UserKnownHostsFile=/dev/null
или
Host *
StrictHostKeyChecking no
UserKnownHostsFile=/dev/null
Если нужно чтобы из под конкретного пользователя при инициализации подключения игнорировались сообщения об различии публичного ключа удаленной системы:
ekzorchik@navy:~$ nano ~/.ssh/config Host 172.33.33.20 StrictHostKeyChecking no UserKnownHostsFile=/dev/null ekzorchik@navy:~$ sudo systemctl restart ssh
После не забываем сохранить внесенные изменения и проверяем:
ekzorchik@navy:~$ ssh -l ekzorchik 172.33.33.20 Warning: Permanently added '172.33.33.20' (ECDSA) to the list of known hosts. ekzorchik@172.33.33.20's password: ekzorchik@srv-dbionic:~$
Работает! Вот что мне и нужно было, т. к. я при разборе/отработке действий использую QEMU+KVM и откат на определенный снапшот с последующим подключением к системе выдает, то что в самом начале заметки, а это через одинаковое количество раз начинает подбешивать. А вот выше приведенными действиями под конкретного пользователя я убираю данную проверку. На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.