Linux SSH交互式脚本,去除yes/no的提示

Linux用户在使用ssh编译脚本的时候,出现了The authenticity of host can’t be xx established 提示,虽然不影响ssh的连接,但在交互式脚本编写中,就会影响脚本的正常运行如(expect交互式脚本),比较烦人了,下面提供去除该提示的方法。

       1. 使用ssh连接远程主机时加上“-o StrictHostKeyChecking=no”的选项,如下:(推荐!!!)

做法是使用-o 这个参数,在ssh/scp里加上 -o "StrictHostKeyChecking no" 即可跳过这个yes/no询问,直接进入下一步,例:

       Use the -o option:
       scp -o "StrictHostKeyChecking no" 1.txt user@host:1.txt 
       ssh -o "StrictHostKeyChecking no" user@host

  2. 一个彻底去掉这个提示的方法是,修改/etc/ssh/ssh_config文件(或$HOME/.ssh/config)中的配置,添加如下两行配置:

  一般为:StrictHostKeyChecking ask

       可改为:StrictHostKeyChecking no

               UserKnownHostsFile /dev/null

  修改好配置后,重新启动sshd服务即可,命令为:/etc/init.d/sshd restart (或 service sshd restart )

  当然,这是内网中非常信任的服务器之间的ssh连接,所以不考虑安全问题,就直接去掉了主机密钥(host key)的检查。

  ssh中遇到的“Host key verification failed.”问题,也是和“StrictHostKeyChecking”配置有关。

  上面就是Linux去除ssh连接时The authenticity of host can’t be xx established 提示的方法介绍了,如果你觉得该提示一直出现很烦的话,可选择去掉。



你可能感兴趣的:(Linux)