
Пытаясь очистить файлы конфигурации и ключей 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