第一次ssh-copy-id它会问
# ssh-copy-id -i .ssh/id_dsa.pub [email protected] The authenticity of host 'example.com (xxx.xxx.xxx.xxx)' can't be established. RSA key fingerprint is 39:fb:5e:70:30:33:2b:18:17:e9:4f:2f:91:b5:d2:21. Are you sure you want to continue connecting (yes/no)?
是否可以编写脚本,所以脚本会回答是的?
如果你的ssh-copy-id不支持StrictHostKeyChecking选项,你可以编写一个脚本来:
ssh-keyscan以获取公钥 ssh-copy-id SSH可以自动将任何主机密钥添加到可信主机文件中:
ssh-copy-id -i .ssh/id_dsa.pub -o StrictHostKeyChecking=no [email protected]
作为替代,您可以执行以下操作:
echo "yes \n" | ssh-copy-id -i .ssh/id_dsa.pub [email protected]
编辑 :因为它出现这些解决scheme不能与ssh-copy-id ,所以你可以使用下面的选项来创build一个~/.ssh/config文件:
StrictHostKeyChecking no
这应该适用于所有的SSH连接,不pipe是否通过脚本调用。
尝试这个:
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected] -y
它不会将主机密钥添加到known_hosts文件,而是允许您将公钥复制(或附加)到您想要的authorized_keys ,如果这是唯一目的。