问题1、jenkins:配置密钥时报错的解决:Failed to add SSH key. Message invalid privatekey(Jenkins 2.257)
问题现象:
原因:
因为我们生成密钥的openssh的版本过高的原因
看例子:先生成密钥
[root@localhost ~]# ssh-keygen -t rsa
查看所生成私钥的格式:
[root@localhost ~]$ more .ssh/id_rsa
—–BEGIN OPENSSH PRIVATE KEY—–
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABlwAAAAdzc2gtcn
…
可以看到密钥的首行是:
—–BEGIN OPENSSH PRIVATE KEY——
而jenkins 2.2.57 版本在检验密钥时还不支持这种格式,
解决方法:
1,指定格式
[root@localhost ~]# ssh-keygen -m PEM -t rsa -b 4096
说明:
-m 参数指定密钥的格式,PEM是rsa之前使用的旧格式
-b 指定密钥长度。对于RSA密钥,最小要求768位,默认是2048位。
问题2、jenkins wget请求下载链接报403错误
报错现象:
当应用服务器使用wget请求Jenkins链接下载war包时,返回403错误
[root@tomcat-2 webapps]# wget -c http://10.100.7.33:8080/jenkins/job/web.gitee.html.master.maven/lastSuccessfulBuild/artifact/target/tfopsUI.war
–2021-01-28 15:07:51– http://10.100.7.33:8080/jenkins/job/web.gitee.html.master.maven/lastSuccessfulBuild/artifact/target/tfopsUI.war
正在连接 10.100.7.33:8080… 已连接。
已发出 HTTP 请求,正在等待回应… 403
2021-01-28 15:07:51 错误 403:(没有描述)。
解决方案:
原因:服务器获取链接时无法携带用户信息,需要jenkins服务端对普通用户开放读权限,
方法1、使用正确的账号密码(Jenkins -> 系统设置 -> 全局安全设置-授权表策略),该账户拥有访问该Jenkins链接的权限(建议)
方法2、或选择Jenkins -> 系统设置 -> 全局安全设置->授权策略->anyone can do anything
问题3、jenkins修改admin权限后无法进入操作界面补救
在jenkins安装目录/root/.jenkins找到config.xml
改为false
<useSecurity>true</useSecurity>
重启jenkins
systemctl restart tomcat
问题4、jenkens源码管理添加git时报错Failed to connect to repository
报错:
Failed to connect to repository : Command “git ls-remote -h https://gitlab.example.com/root/test-repo.git HEAD” returned status code 128:
stdout:
stderr: fatal: unable to access ‘https://gitlab.example.com/root/test-repo.git/‘: Peer’s certificate issuer has been marked as not trusted by the user.
SSL certificate problem: unable to get local issuer certificate
解决办法:
原因是在jenkins服务器上没有安装git服务,在jenkins服务器中安装git
yum install –y git
并执行以下命令:
git config –global http.sslVerify false