Jenkins服务器配置SSH实践

 更新时间:2025年09月02日 15:26:33   作者:TPBoreas  
文章指导如何配置Jenkins用户的SSH免密登录:需获取Jenkins公钥并添加至目标服务器authorized_keys文件,测试时若无需输入密码则表示配置成功,否则需检查公钥配置步骤

# 测试Jenkins用户的SSH连接

sudo -u jenkins ssh -F /var/lib/jenkins/.ssh/config 10.51.17.10 "echo 'SSH connection test successful'"

如果让你输入密码,说明没有配置成功

1. 获取正确的Jenkins用户公钥

在Jenkins服务器上执行:

# 查看Jenkins用户的公钥(这是正确的公钥)
sudo -u jenkins cat /var/lib/jenkins/.ssh/id_rsa.pub

2. 在目标服务器上配置正确的公钥

将Jenkins用户的公钥添加到目标服务器的 authorized_keys 文件中:

# 在目标服务器(10.51.17.10)上执行
# 1. 确保SSH目录存在
mkdir -p /root/.ssh
chmod 700 /root/.ssh

# 2. 添加Jenkins用户的公钥(使用上面命令输出的实际内容)
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC8h191nbdPCh/9E6uUoJFvhN2tFrBYftmd0gftbCwZC/8fTA16eoRTMAfeB/dJef2pW/u8iumxmD9j7xTjz3xu5CqjyF6Gv41m9fJ2ItIvhKicooeqKkDfPTjP7iqyYCvCj5OGwkbl07nEcQu5+DCDzTHhn21250MUFv+sbRh9lDlTtRf2C2/NAHwPaPhbKQ7I4N/Z76suubn0OUPq8VxL//153EdqxPmv4MbWELtRt9WerVNu3cHu3Em0u7Nu7vg3LE7zL5FSM/kIGcGTFRal96fZhnpaUK/CairuWOOuUfwFPd5zGoWRDrFJ+i1gbKQUuZXTETqrfIn9JVT6DbKI5XfCWDUkKgKCrAbSSroBoLgdhPAb3/6aJy4gP1Anlgq6NS/V4BtJqOFzHs2e7/ebszp7w/dTRpoY32HW7+QoR7sLgjfHUBZRhBUwADgnrSQbHliKmIaPtSj7bZoQWpam67WA51aMmVlgS48GbjIYz/sOqC8NiN3Lb1EUJ12k8p7JG6bNWVAAkeIUqY56nZroPD//jo+yUdrmGhEO4fe5Wfwzy9a9XqgnS+NyABj0RTI4WkT+cFLzgy3SBIEAlh1vRVjAECHnVS7QW5SWSWFitf89hIVHSIIcFkEZF1h0TOJ1ik2T/WpB081NMzEUvWYcItJCZG6LWGHAisNryMfF1w== jenkins@cicd-prd-jen1" >> /root/.ssh/authorized_keys

# 3. 设置正确权限
chmod 600 /root/.ssh/authorized_keys

# 4. 验证
cat /root/.ssh/authorized_keys

3. 测试连接

配置完成后,在Jenkins服务器上测试:

# 测试Jenkins用户的SSH连接
sudo -u jenkins ssh -F /var/lib/jenkins/.ssh/config 10.51.17.10 "echo 'SSH connection test successful'"

如图,说明配置成功~

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 一文探索Java文件读写更高效方式

    一文探索Java文件读写更高效方式

    这篇文章主要介绍了一文探索Java文件读写更高效方式,文章围绕主题展开详细的内容介绍,具有一定的参考价值需要的小伙伴可以参考一下
    2022-07-07
  • Java基于高精度整型实现fibonacci数列的方法

    Java基于高精度整型实现fibonacci数列的方法

    这篇文章主要介绍了Java基于高精度整型实现fibonacci数列的方法,是比较典型的算法,需要的朋友可以参考下
    2014-09-09
  • SpringBoot和前端Vue的跨域问题及解决方案

    SpringBoot和前端Vue的跨域问题及解决方案

    所谓跨域就是从 A 向 B 发请求,如若他们的地址协议、域名、端口都不相同,直接访问就会造成跨域问题,跨域是非常常见的现象,这篇文章主要介绍了解决SpringBoot和前端Vue的跨域问题,需要的朋友可以参考下
    2023-11-11
  • Java不借助第三变量实现两数交换的示例

    Java不借助第三变量实现两数交换的示例

    本文主要介绍了Java不借助第三变量实现两数交换的示例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • Spring Batch 如何自定义ItemReader

    Spring Batch 如何自定义ItemReader

    这篇文章主要介绍了Spring Batch 如何自定义ItemReader的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • thymeleaf实现前后端数据交换的示例详解

    thymeleaf实现前后端数据交换的示例详解

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎,当通过 Web 应用程序访问时,Thymeleaf 会动态地替换掉静态内容,使页面动态显示,这篇文章主要介绍了thymeleaf实现前后端数据交换,需要的朋友可以参考下
    2022-07-07
  • Java Web关键字填空示例详解

    Java Web关键字填空示例详解

    最近在工作中使用了java web,发现有些难度,下面这篇文章主要给大家介绍了关于Java Web关键字填空的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • Java对象转JSON时动态的增删改查属性详解

    Java对象转JSON时动态的增删改查属性详解

    这篇文章主要介绍了Java对象转JSON时如何动态的增删改查属性的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 从一道面试题看你对java的理解程度

    从一道面试题看你对java的理解程度

    这篇文章主要给大家介绍了关于如何从一道面试题看你对java的理解程度的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起看看吧
    2018-09-09
  • java基本教程之常用的实现多线程的两种方式 java多线程教程

    java基本教程之常用的实现多线程的两种方式 java多线程教程

    下面开始学习“常用的实现多线程的2种方式”:Thread 和 Runnable。之所以说是常用的,是因为通过还可以通过java.util.concurrent包中的线程池来实现多线程
    2014-01-01

最新评论