报错内容:Failed to connect to the host via ssh: Host key verification failed.
你好! 这是你第一次报错 Failed to connect to the host via ssh: Host key verification failed. 所遇到的问题 那么不要惊慌,教你解决
问题1:由于设置而远程ssh秘钥是root用户设置的,对于jenkins用户无效
tail -n2 /etc/passwd
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
jenkins:x:997:995:Jenkins Automation Server:/var/lib/jenkins:/bin/false
可以看到,jenkins天生登录的都是一个错误shell /bin/false
那想让jenkins正确登陆 就要对他进行修改
jenkins:x:997:995:Jenkins Automation Server:/var/lib/jenkins:/bin/bash
把jenkins的登陆选项设置成/bin/bash
然后进行生成SSH秘钥连接
su jenkins # 先切换到jenkins用户
ssh-keygen #然后生成秘钥
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Passphrases do not match. Try again.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:QFlJhNqeuiZPwPnkHl6LblvbY2TVBe8WCtCbr+IHNyE [email protected]
The key's randomart image is:
+---[RSA 2048]----+
| .*=o .. |
| .o ... .. |
| o. .+ .o |
| . .. ..E =..o . |
| + .. .So o. o |
| = o + o .. |
| =.oo o o |
| .++= ++ o |
| *Ooooo+ |
+----[SHA256]-----+
ssh-copy-id -i /root/.ssh/id_rsa.pub 你要复制的远程主机
第二种方法
直接修改jenkins用户
vim /etc/sysconfig/jenkins
JENKINS_USER="root" 把此选项原来的jenkins用户修改成root用户
直接使用root用户运行启动jenkins 相当于给了最大权限
虽然不会出现什么问题 但是还是建议 程序使用程序用户跑