Jenkins Publish over SSH、SSH免密登录、SCP免密传输、Jenkins远程传输文件、Jenkins远程部署

Jenkins Publish over SSH、SSH免密登录、SCP免密传输、Jenkins远程传输文件、Jenkins远程部署

1、Jenkins所在服务器安装ssh

yum install ssh -y

将SSH服务设为开机自启

sudo systemctl enable sshd

2、生成密钥对

ssh-keygen -t rsa

// 密钥对生成路径,默认为/root/.ssh/id_rsa,可以手动输入其他地址

Enter file in which to save the key (/root/.ssh/id_rsa):

// 这两项可以直接敲enter

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

生成结果如下:

Jenkins Publish over SSH、SSH免密登录、SCP免密传输、Jenkins远程传输文件、Jenkins远程部署_第1张图片

进入 /var/lib/jenkins/.ssh中,查看生成的密钥对

这里可以看到生成了两个文件

is_rsa 为密钥

id_rsa.pub 为公钥

3、将公钥传输到目标Linux服务器

// 这里大家自行调整公钥文件路径和目标服务器IP地址

ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]

测试一下ssh免密登录

ssh 10.51.xx.xxx "pwd"

注:ssh免密登录第一次需要手动输入密码,并将这些信息保存到/root/.ssh/known_hosts中,以后就不用再输入密码,可以直接免密登录了。

可以看到免密登录配置成功了。

4、Jenkins中配置Publish over SSH

打开Manage Jenkins -> Configure System,在页面最下方有一个Publish over SSH的配置区域

Jenkins Publish over SSH、SSH免密登录、SCP免密传输、Jenkins远程传输文件、Jenkins远程部署_第2张图片

Jenkins Publish over SSH、SSH免密登录、SCP免密传输、Jenkins远程传输文件、Jenkins远程部署_第3张图片

生成时没有密码的话,Passphrase可以不用输入

我们只需要在Path to key 栏配置上刚才生成的密钥文件路径,然后就可以添加SSH Servers了。

在SSH Server中添加我们的传输了公钥的目标Linux服务器。

Jenkins Publish over SSH、SSH免密登录、SCP免密传输、Jenkins远程传输文件、Jenkins远程部署_第4张图片

点击下方的Test Configuration,测试免密连接是否配置成功

Jenkins Publish over SSH、SSH免密登录、SCP免密传输、Jenkins远程传输文件、Jenkins远程部署_第5张图片

输出Success则说明配置成功了。

如果需要添加更多的SSH Servers则重复第3步及其后续步骤即可。

 

Jenkins系列文章:

一、Jenkins 系列教程-史上最简单Jenkins教程,教你一天学会使用Jenkins利器

二、Centos 安装nodejs

三、Centos 安装Maven

四、Linux下安装java JDK

五、jenkins启动报错 Job for jenkins.service failed because the control process exited with error code.

六、jenkins启动成功,警告Warning: jenkins.service changed on disk.

七、Jenkins以root用户运行

八、Jenkins配置中文语言

九、Jenkins 报mvn:command not found、npm:command not found

十、Jenkins批量删除构建历史

十一、Jenkins 部署前后端分离构建多git项目,打包后远程部署服务器

十二、ssh-copy-id输入密码后Permission denied, please try again.

十三、Jenkins Publish over SSH、SSH免密登录、SCP免密传输、Jenkins远程传输文件、Jenkins远程部署

你可能感兴趣的:(jenkins,SSH,SCP,1024程序员节,jenkins,jenkins,SSH免密登录)