shell脚本中解决SCP命令免密登录

应用场景:服务器之间远程传输文件

二 服务器免密登录

四台集群服务器

A IP
A 47.110.129.242
B 172.16.214.209
C 172.16.214.251
D 172.16.214.251

生成服务器公钥私钥文件
在主机A上执行如下命令来生成配对密钥(id_rsa,id_rsa.pub):

ssh-keygen -t rsa

执行过程中会停留直接按回车执行后后结果:
在这里插入图片描述
将A服务/home/user_01/.ssh/id_rsa.pub 公钥文件复制到B服务对应的.shh 目录并修改文件名authorized_keys

 scp -P 22033  /home/user_01/.ssh/id_rsa.pub  [email protected]:/home/user_01/.ssh/authorized_keys.pub

需要输入服务器密码
C,D服务重复B服务公钥文件复制,参考上面指令

2 .验证是否成功
重复上面文件scp 命令不需要输入密码

二 编辑shell脚本
  1. 创建文件传输文件scp.sh
touch scp.sh
  1. 编辑文件
vim scp.sh
scp -P 22033  /wwwroot/java/tomcat-app/kxgzapp.war [email protected]:/wwwroot/java/tomcat-app/

scp -P 22033  /wwwroot/java/tomcat-app/kxgzapp.war [email protected]:/wwwroot/java/tomcat-app/
scp -P 22033  /wwwroot/java/tomcat-app/kxgzapp.war [email protected]:/wwwroot/java/tomcat-app/
  1. 对scp.sh文件授予执行权限
chmod 777 scp.sh
  1. 最后执行sh文件
./scp.sh
发布了10 篇原创文章 · 获赞 9 · 访问量 448

猜你喜欢

转载自blog.csdn.net/weixin_43829047/article/details/104650519