在搭建Jenkins持续集成环境时,为了让172.30.19.107服务器上tomcat里的war包自动跨服务器发送到172.30.19.61的jboss容器中执行脚本不用手动输入密码,需要建立两台服务器信任关系,建立步骤如下:
1.在clien端机器上执行ssh-keygen命令,生成建立安全信任关系的证书
ssh-keygen -b 1024 -t dsa
Enter passphrase (empty for no passphrase): <– 直接输入回车
Enter same passphrase again: <– 直接输入回车
(在程序提示输入passphrase时直接输入回车,表示证书无密码)
2.在/root/.ssh/目录里边看到创建的公私密钥
ls /root/.ssh/
3.把id_rsa.pub文件复制到172.30.19.61上面去
scp -r /root/.ssh/id_rsa.pub 172.30.19.62:/root/.ssh/authorized_keys
scp ~/.ssh/id_rsa.pub server@172.30.19.62:~
4.直接连接,以后不用输入密码了
jenkins写的脚本中需要使用jboss用户启动61上的jboss,以下操作为了试jboss不输入密码
使用jboss用户登录并进入家目录
cd /home/jboss
建立 .ssh 文件夹
mkdir .ssh;
修改文件夹权限
chmod 700 .ssh
将客户端传过来的id_rsa.pub文件中的内容加入到authorized_keys中
cat id_rsa.pub >> .ssh/authorized_keys
chmod 644 .ssh/authorized_keys