jenkins配置publish over ssh遇到的问题
一、背景
目标
本篇文章主要是说明自己在配置jenkins的publish over ssh插件所遇到的问题.本次主要是windows下的jenkins通过ssh的方式访问我本地虚拟机的ubuntu系统
准备
1.在jenkins上安装publish over ssh插件,不会安装的童鞋请百度谷歌
2.虚拟机的ubuntu系统安装openssh-server并启动该服务
二、ubuntu操作中的报错以及处理
在下载openssh-server时首先更新apt-get,使用以下命令
sudo apt-get update
报错如下:
E: Failed to fetch http://mirrors.163.com/ubuntu/dists/lucid-security/universe/source/Sources 404 Not Found
E: Failed to fetch http://mirrors.163.com/ubuntu/dists/lucid-updates/universe/source/Sources 404 Not Found
E: Failed to fetch http://mirrors.163.com/ubuntu/dists/lucid-proposed/universe/source/Sources 404 Not Found
E: Failed to fetch http://mirrors.163.com/ubuntu/dists/lucid-backports/universe/source/Sources 404 Not Found
这个是因为我之前切换163源的时候格式不对,所以需要重新修改下/etc/apt/source.list文件,出现类似的错误都可以按照如下方法进行修改
cd /etc/apt
sudo cp source.list source.list.bak //备份该文件
sudo vim source.list //将该文件的内容全部删除,并换上下面的内容
deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiversedeb http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiversedeb-src http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse
换好了以后,退出并再执行命令sudo apt-get update,没报错后再执行以下命令
sudo apt-get install openssh-server //下载ssh服务
遇到了如下错误
The following packages have unmet dependencies:
openssh-server : Depends: openssh-client (= 1:6.6p1-2ubuntu1)
Depends: openssh-sftp-server but it is not going to be installed
Recommends: ssh-import-id but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
这是因为,openssh-server是依赖于openssh-clien的,而ubuntu自带的openssh-clien与所要安装的openssh-server所依赖的版本不同,这里所依赖的版本是1:6.6p1-2ubuntu1,所以需要先下载1:6.6p1-2ubuntu1版本的openssh-client,执行以下命令下载
sudo apt-get install openssh-client=1:6.6p1-2ubuntu1 -y //下载对应版本的openssh-client
下载没报错后,执行以下命令
sudo apt-get install openssh-server -y
最后就是恭喜你sshd服务已经下载好了
三、在jenkins上配置publish over ssh插件
1.在系统管理-->系统设置中找到publish over ssh
如图所示是jenkins上的ssh插件的公有配置部分,下面详细讲解下(其实比较简单,但是自己遇坑了也就记录一下)
Passphrase:如果自己在本地生成的ssh key没密码的话,这里不需要填写
Path to key:这里填写私钥的地址
key:这里填写私钥的内容(cat ~/.ssh/id_rsa查看)
Name:这里自己填写一个好记的名字
Hostname:主机ip或者域名
Username:登录机器的用户名
Remote Directory:远程的操作目录(这个需要自己的对应的服务器上创建好目录,并且登录名对应的用户需要有相应的权限)
******注意:这种利用私钥访问的办法需要事先将你的公钥放置到对应服务器的~/.ssh/authorized_keys中(一般 利用ssh-copy-id 命令免密登录)*****
以上登录方式不推荐,点击“Use password authentication, or use a different key”,利用私有配置登录才是我们推荐的
Passphrase / Password:这里填写username登录名对应的密码(其他的配置这里就不叙述了,看字段名应该就能明白)
一般填写密码就能登录了,点击Test configuration,出现Success表示连接成功;但有时候会报如下错:
Failed to connect or change directory
[java.net.ConnectException: Connection refused: connect]]
这是由于服务器上的sshd服务没有开启导致的,登录到服务器上执行命令
sudo service sshd start //开启sshd服务
或者是如下错误
jenkins.plugins.publish_over.BapPublisherException: Failed to connect session for config [131]. Message [Auth fail]
这是由于账号密码不一致导致的,自行核查下账号密码.或者采用在私有配置中利用私钥来进行登录(这种方式参考上面的配置,在path to key 和key中填好相应的内容)
四、总结
以上就是这篇文章所要讲的,主要是记录下自己的遇到的错误以及解决方案,由于虚拟机的sshd服务没开启导致自己排查了好长时间,很惭愧啊,因为平时在公司使用的机器默认已经装好了这些服务,所以一时间忽略了这个问题,还是自己太粗心啊!
原文发表在知乎,知乎链接:https://zhuanlan.zhihu.com/p/39549204
jenkins配置publish over ssh遇到的问题的更多相关文章
- Jenkins配置Publish Over SSH讲解说明
原创 Jenkins配置Publish Over SSH讲解说明 2018-08-22 11:59:30 M.Blog 阅读数 3764更多 分类专栏: Jenkins 版权声明:本文为博主原创文 ...
- Jenkins通过Publish over SSH插件实现远程部署
Jenkins通过Publish over SSH插件实现远程部署 步凑一.配置ssh免秘钥登录 部署详情地址:http://www.cnblogs.com/Dev0ps/p/8259099.html ...
- Jenkins中Publish Over SSH插件使用
Publish Over SSH插件安装 进入插件管理安装插件,我这里已经安装过了所以在installed里面,没安装过去available里面搜索. 系统设置中配置Publish Over SSH ...
- Jenkins系列-Jenkins通过Publish over SSH插件实现远程部署
配置ssh免秘钥登录 安装Publish over SSH插件 插件使用官网:https://wiki.jenkins.io/display/JENKINS/Publish+Over+SSH+Plug ...
- jenkins插件Publish Over SSH因安全问题下架
最近用docker新搭建了一个jenkins,安装插件的时候发现publish over ssh找不到了,官方给出的解释是存在安全隐患于2022.01.12暂停分发,官方解释如下:https://ww ...
- 使用 svn+maven+jenkins(hudson)+Publish Over SSH plugins 构建持续集成及自动远程发布体系(转)
1.安装jenkins 2.浏览器访问jenkins主页 http://192.168.0.1:8080/,点击“系统管理” 3.在插件管理中,安装Publish Over SSH插件 4.在系统设置 ...
- jenkins使用Publish Over SSH中遇到的问题
在jenkins中想使用publish over ssh来在构建后发送XML或PNG文件至服务器,以便做其它的操作,安装完publish over ssh后,填加构建,发现在构建失败时,不传送文件,老 ...
- Jenkins配置Publish Junit test result report(转)
参考这篇文章:http://www.yiibai.com/jenkins/jenkins_unit_testing.html 插件:JUnit Plugin
- jenkins配置git+maven+Publish over SSH
一.配置git 1.新建项目,源码管理选择git 2.Repository URL输入git目录 3.Credentials中选择新增凭据,凭据类型选择SSH,usename输入git,passphr ...
随机推荐
- js-04-函数学习
一.什么为函数? 函数是用来执行某些特定功能的代码,为了减少代码的重复使用,将函数作为代码使用,在需要时随时调用使用. 二.函数的声明(函数名严格区分大小写) 1.function命令 functio ...
- JS基础语法---String(字符串的案例)
练习1: var str = "我的宝宝最可爱,声音嗲嗲的"; var key = "可爱"; //先获取要截取的字符串的索引位置 var index = st ...
- 从0使用Ruby on Rails打造企业级RESTful API项目实战之我的云音乐
本节对我们项目实现的功能和知识点做一个简单的介绍,因为是RESTful API项目,所以对于后端来说基本上没有什么UI界面可展示,那我们就在关键的点,使用客户端(Android)实现的效果图. 课程简 ...
- 1、netty入门说明
netty中的例子,基本模式都是:server -> Initializer -> Handler . 在server中去启动线程,打开端口,设置initializer,和一些启动的参数配 ...
- 使用jeecg-boot心得
使用jeecg-boot心得: Jeect-boot,采用主流最新的开发技术,是个强大的快速开发平台. 刚开始发现jeecg-boot时便对其精致美观的页面深深的迷住了.下载项目运行发现其中也有想要的 ...
- MySQL Error Log 中IO写入瓶颈的警告分析
周末在一台MySQL实例上频繁做大批量的写入测试,无意中发现MySQL的errorlog中频繁出现如下的Note:page_cleaner: 1000ms intended loop took *** ...
- Centos7下oracle配置(详细)
一.硬件配置 CentOS7@VMware® Workstation 15 Pro,分配资源:CPU:2颗,内存:4GB,硬盘空间:30GB 二.软件准备 linux.x64_11gR2_datab ...
- RabbitMQ基础理解
RabbitMQ基本理解 MQ是消息中间件,常见的有RabbitMQ,Kafka,RocketMQ,activeMQ 等,用于分布式系统中.作用有三点 解耦 异步 削峰 RabbitMQ 整体上是一个 ...
- day100_12_4DataFrame和matplotlib模块
一.Dataframe的分组. 再网页表格数据 的分析中,可以使用以下语句进行爬取表格. res = pd.read_html('https://baike.baidu.com/item/NBA%E6 ...
- MySQL 优化 (三)
参数优化 query_cache_size (1) 简介: 查询缓存简称QC,使用查询缓冲,mysql将查询结果存放在缓冲区中,今后对于同样的select语句(区分大小写),将直接从缓冲区中读取结果. ...