
サーバーAに対してSSH操作(パスワードなし)を実行し、スクリプトを実行するJenkinsサーバーがあります。これは完全に機能し、次のように設定しました。
ssh-keygen -t rsa
ジェンキンスについてJenkinsを
id_rsa.pub
サーバーAにコピーしました(認証キーに手動で追加してジョブを実行しましたが、ssh-copy-id -i .ssh/id_rsa.pub
両方が機能しているようです)。パスワードなしでJenkinsからサーバーAへのSSH成功
私ができないことは、まったく同じキージェネレータ、レプリカ、およびSSHを使用してJenkinsからサーバーBに同じ動作を複製することです。私が別にした唯一のことは、id_rsa_x.pub
既存の名前を上書きしないようにid_rsaに別の名前を付けることです。また、公開鍵の位置をauthorized_keys2に変更してみましたが、私のものを見るとデフォルト/etc/ssh/sshd_config
で無効になっているようです。 Googleで検索したすべての内容がこれが正しい方法であることを示唆しているため、これらの動作がなぜ発生するのかわかりません。
私はこれがsshd_configの誤った設定であるか、JenkinsサーバーがCentOS 6.9で、sshバージョン(OpenSSH_5.3p1、OpenSSL 1.0.1e-fips 2013-02-11)で、サーバーAとBがCentOS 7.4だと思います。これら2つのサーバーのバージョン管理を実行またはssh -v
取得できません。ssh -v localhost
(ここにコンテンツを追加する方法を見つけようとしていますが、sshd_config
すべてがコンテンツを大きくして太くします。)
答え1
きぜんを繰り返さないでください。これによりキーが再生成され、サーバーAへのアクセスが中断されます。
まず、keygen操作を実行してから、すべてのサーバーでcopy idコマンドを実行します。
要約すると、keygenを実行してください。一度:
- SSH登録システムの実行
- SSHを実行してIDをサーバーaにコピーします。
- SSHを実行してIDをサーバーbにコピーします。
- SSHを実行してIDをサーバーCなどにコピーします。 :)