0

TeamCity からいくつかのテスト コードを実行しています。私のテスト コードの一部には、パテを使用した ssh が必要です。このコードはコマンド プロンプト (セッション 1) では正常に動作しますが、TeamCity (プロセスであるためセッション 0 で実行されます) から実行すると、テスト ログに次のアラートが表示されます。

サーバーのホスト キーが、PuTTY がレジストリにキャッシュしたものと一致しません [中略] このホストを信頼する場合は、「y」を入力してキーを PuTTY のキャッシュに追加し、接続を続行します。キーをキャッシュに追加せずに 1 回だけ接続を続行する場合は、「n」を入力します。このホストを信頼しない場合は、Return キーを押して接続を破棄してください。キーをキャッシュに保存しますか? (はい/いいえ)

これはセッション 0 にあるため、対話して「y」を押すことはできません。セッション 1 から初めてこれを実行するときに「y」を押したときにレジストリに保存されたキーが、セッション 0 に表示されるアラートを停止しない理由がわかりません。

誰でも私を助けることができますか?ありがとう。

4

1 に答える 1

0

おそらく、PuTTY には解決策がありません。

OpenSSH には、ホスト キーの検証を完全に回避する一連のオプションがありますが、セキュリティ レベルが低下するという欠点があります。

Unix 派生物では、次のようになります。

-o  StrictHostKeyChecking=no -o  UserKnownHostsFile=/dev/null

Windows では、2 番目のオプションは " " と表示されると思います-o UserKnownHostsFile=NULL

考えられる「回避策」の 1 つは、最初の接続でパテを手動で開始して、保存されたキャッシュにホスト キーを取得することです。ホスト キーが変更されない限り (通常は、システムの再インストールまたは SSH サーバーの再インストールのいずれかが原因で)、後続の呼び出しでは対話は必要ありません。

于 2013-11-05T07:09:37.023 に答える