報錯內容: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 相當於給了最大權限
雖然不會出現什麼問題 但是還是建議 程序使用程序用戶跑