ssh、scp、rsync命令不交互输入密码

469次阅读
没有评论

平常使用 ssh、scp、rsync 需要交互式输入密码的命令时。当我们不想执⾏这⼀步操作的时候,可以在使用以上命令的同时带上密码,无需⼿动输⼊。

安装 nopass 软件包

 yum install -y sshpass

只需要在 ssh、scp、rsync 命令的前⾯带上 sshpass 就可以了

sshpass -p 'redhat' ssh root@192.168.1.1 -o StrictHostKeyChecking=no systemctl restart nginx

sshpass -p "redhat" scp -o StrictHostKeyChecking=no docker-compose.yml root@web.ljxwtl.cn:/data/soft

sshpass -p 'redhat' rsync -av docker-compose.yml root@gitlab.ljxwtl.cn:/data/soft

使用 ssh 连接远程主机时加上“-o StrictHostKeyChecking=no”的选项:

做法是使用 -o 这个参数,在 ssh/scp 里加上 -o "StrictHostKeyChecking no" 即可跳过这个 yes/no 询问。

注意:

在使用 rsync 命令时,会报如下错误:

执行 rsync 时报:Host Key verification failed

解决方法:

1、在 .ssh目录下添加 config 文件,键入
StrictHostKeyChecking no
UserKnownHostsFile /dev/null

2、删除 .ssh/know_hosts 中对应 ip 的相关 rsa 信息

微信扫描下方的二维码阅读本文

正文完
 0
柹子丶
版权声明:本站原创文章,由 柹子丶 于2022-08-28发表,共计665字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)
验证码