Добавление адреса в командную строку known_hosts

Добавление адреса в командную строку known_hosts

У меня возникли проблемы с добавлением IP в known_hosts из командной строки. У меня есть скрипт резервного копирования mysql, который должен загружать файлы на другой сервер с помощью sftp. Скрипт работает нормально, но вам нужно запустить команду sftp вручную один раз, чтобы добавить IP в known_hosts, иначе скрипт не будет работать.

Скрипт должен быть переносимым, чтобы его можно было сбросить на сервер, и он все сделает автоматически. Не требуя от пользователя вручную подключаться через sftp в первый раз.

Я попытался добавить IP с помощью:

ssh-keygen -R [receiver IP]
ssh-keyscan -H [receiver IP] >> ~/.ssh/known_hosts

Но я получаю следующую ошибку:

ssh-keygen: /root/.ssh/known_hosts: Такого файла или каталога нет

Стоит ли мне просто добавить touch для создания файла known_hosts или что лучше сделать?

решение1

Поскольку он должен быть переносимым на любой сервер, я думаю, лучшим выбором для вас будет добавитьStrictHostKeyChecking=нетк вашей команде ssh следующим образом:

ssh -o StrictHostKeyChecking=no [backupuser]@[backupserver]

Вы также можете добавить эту опцию глобально в свой файл конфигурации sshd следующим образом:

StrictHostKeyChecking No

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