Почему SSH считает, что у меня все еще есть файл «known_hosts2»?

Почему SSH считает, что у меня все еще есть файл «known_hosts2»?

Пытаясь очистить файлы конфигурации и ключей SSH на моем iMac (macOS Monterey 12.1), я попытался использовать SSH с флагом verbose (-v). Это сгенерировало вывод, включающий следующие строки:

...
debug1: load_hostkeys: fopen /Users/clint/.ssh/known_hosts2: No such file or directory
debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts: No such file or directory
debug1: load_hostkeys: fopen /etc/ssh/ssh_known_hosts2: No such file or directory
...

Я знаю, что пытался создать резервную копию файла known_hosts (и назвал его «known_hosts2»), но с тех пор удалил его.

Кто-нибудь знает, как узнать, почему SSH все еще ссылается (и думает, что у меня есть) на старый файл под названием «known_hosts2»?

Спасибо!

решение1

Конфигурация по умолчанию для ssh в openssh UserKnownHostsFileустановлена ​​на ~/.ssh/known_hostsи. ~/.ssh/known_hosts2. Конфигурация похожа на для , GlobalKnownHostsFileза исключением того, что она ищет эти файлы, /etc/sshкак показано на странице руководства (https://www.man7.org/linux/man-pages/man5/ssh_config.5.html). Итак, openssh ssh проверяет эти 4 файла по умолчанию, что вы и видите в ssh -v.

Я не уверен, насколько конфигурация (и реализация) SSH в MacOS отличается от openssh по умолчанию, но, по крайней мере, в этом случае они ведут себя одинаково.

решение2

Чтобы исправить это $HOME/.ssh/known_hosts2: No such file or directory, вы можете добавить файл в UserKnownHostsFileконфигурацию SSH, например:

UserKnownHostsFile ~/.ssh/known_hosts

Чтобы исправить /etc/ssh/ssh_known_hosts: No such file or directoryи /etc/ssh/ssh_known_hosts2: No such file or directory, вы можете добавить файл в GlobalKnownHostsFileсвою конфигурацию SSH, например:

GlobalKnownHostsFile /dev/null

Связанный контент