将地址添加到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 -o StrictHostKeyChecking=no [backupuser]@[backupserver]

您还可以在 sshd 配置文件中全局添加此选项,如下所示:

StrictHostKeyChecking No

相关内容