SSHを使用してリモートマシンに正常に接続できますが、Jenkinsからエージェントを起動すると、次のエラーがスローされます。
ERROR: Server rejected the 1 private key(s) for user1 (credentialId:xxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/method:publickey)
[01/19/17 05:35:15] [SSH] Authentication failed.
hudson.AbortException: Authentication failed.
at hudson.plugins.sshslaves.SSHLauncher.openConnection(SSHLauncher.Java:1219)
at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.Java:714)
at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.Java:709)
at Java.util.concurrent.FutureTask.run(FutureTask.Java:266)
at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1142)
at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:617)
at Java.lang.Thread.run(Thread.Java:745)
[01/19/17 05:35:15] Launch failed - cleaning up connection
[01/19/17 05:35:15] [SSH] Connection closed.
user1
を使用してマスターマシンからノードマシンへのSSH接続を確立できますが、jenkinsからuser1
を使用してエージェントを起動しようとすると、秘密キーが拒否されます。この問題を解決する解決策はありますか?
以下の手順に従ってこの問題を解決します。
ターゲットスレーブノードのコンソールから
Sudo su
“/var/lib/jenkins”
を使用してjenkinsユーザーを追加します。 {注:ホームディレクトリを/var/lib/jenkins
}に保持しています:useradd -d /var/lib/jenkins jenkins
ジェンキンスマスターから
マスターのJenkinsユーザーからid_rsa.pubキーをコピーします。
cat /var/lib/jenkins/.ssh/id_rsa.pub
ターゲットスレーブノードのコンソールから
Jenkinsユーザー用のauthorized_keysファイルを作成します。
mkdir /var/lib/jenkins/.ssh
vi /var/lib/jenkins/.ssh/authorized_keys
Jenkinsマスターのキーをファイルvimに貼り付けます。 「:wq!」で保存します。
私は以下の手順に従ってこの問題を解決しました:
1)スレーブマシンとマスターマシンの両方で正しいパスにいることを確認します。また、適切なユーザーでマシンにサインインする必要があります。新しいグローバルjenkinsユーザー「jenkins」を作成する必要があり、キーをパス「/home/jenkins/.ssh/」に含めたい場合は、最初に「jenkins」ユーザーをマシンに追加します。
2).sshフォルダーを作成し、 に記載されている手順を使用してsshキーを生成しますhttps://support.cloudbees.com/hc/en-us/articles/222978868-How-to-Connect -to-Remote-SSH-Slaves-
3)上記の手順を必ず実行してください-マスターマシンでも1と2
4)同じパスのマスターマシンとスレーブマシンの両方に、同じ「jenkins」ユーザー権限を持つsshキーが必要です。
5)最後に、マシンのIPを前後にsshして、端末からの双方向接続を確認します。
6)jenkinsの認証情報とノードを構成します。 https://linuxacademy.com/で提案されているように、ノード構成で同じリモートルートディレクトリ-"/ home/jenkins"を指定し、 "手動で信頼されたキー検証戦略"を選択してください。 community/posts/show/topic/16008-jenkins-adding-a-slave