0

背景: カピストラーノを使用してレール アプリをデプロイするジェンキンス ジョブを作成しようとしています。この一環として、その環境の jenkins ユーザーの .ssh フォルダーにコピーした ssh キーを追加する必要があります。そのフォルダーの id_rsa と id_rsa.pub の両方の所有者、グループ、およびアクセス許可を正しく設定しました。

エラーが表示されますNet::SSH::AuthenticationFailed: Authentication failed for user deploy@[server]。調査の結果、jenkins ユーザーとして次のコマンドを実行すると、次のことが起こります。

ssh-add ~/.ssh/id_rsa

ここまでは順調ですね。

しかし、 ~/.ssh/id_rsa.pub の公開鍵は、によって返されるものではありませんssh-add -L

ローカル マシンで同じ手順を実行すると、正しいキーが追加され、環境に ssh できるようになります。

ssh-add が間違ったキーを追加しているように見えるのはなぜですか (システムのどこにも見つからないようです)。

4

1 に答える 1

0

ssh-add -Ljenkins サーバーで実行すると、おそらく「ssh エージェント転送」メカニズムを介して自分のマシンから転送された公開鍵が表示されます。

ssh エージェントの転送を無効にするフラグをssh指定して、jenkins サーバーにアクセスしてみます。-a

ssh -a <jenkins_server>
于 2014-08-30T17:45:42.697 に答える