2011-08-26 28 views
5

ビルドスクリプトにFabricを使用しています。 VMの1つをクローンして新しいサーバーを作成しました。 Fabricスクリプト(下のparamikoを使用)は、1つのサーバーを正常に動作させますが、他のサーバーは正常に動作しません。クローンなので何が違うのか分かりませんが、Fabricスクリプトを実行するたびにエラーError reading SSH protocol bannerが出ます。このスクリプトは、両方のサーバー上の同じユーザーに接続しています。スクリプトは、この新しいものを除いて他のすべてのサーバーで正常に動作します。根本的に異なるのは、全く異なる範囲のIPアドレスだけです。Paramiko Error:SSHプロトコルバナーの読み込みエラー

これを引き起こす可能性のあるアイデアはありますか?

答えて

7

この問題は、Paramiko、Fabric、またはSSHデーモンにはありませんでした。それは単にISPの内部ネットワークのファイアウォール構成でした。何らかの理由で、彼らは彼らの異なるサブネット間の通信を許可しません。

私たちは本当にファイアウォールの設定を修正することができませんでしたので、すべてのIPを同じサブネットに切り替えるようにしました。

+1

私は同じエラーが出ます。しかし、私の場合、ホストはamazonインスタンスです。その場合はどうしたらいいですか – sagar

2

transport.pyファイルでバナーのタイムアウトを15秒から30秒に変更してください。また、サーバー上のsshdデーモンがハングしている可能性もあります。それを手動でSSHできますか?

+0

transport.pyを編集してタイムアウトを30秒に変更しましたが、それは役に立たなかった。私はサーバーにSSHを手動で行い、すべてのコマンドを実行できます。奇妙な問題。 –

+0

こんにちはGabriel、これはネットワークの問題によって引き起こされる可能性がありますか? –

+0

私はFabricサーバからサーバAとサーバBにtracerouteを実行しました。サーバAのtracerouteはうまくいっていて、スクリプトもうまくいきましたが、サーバBのtracerouteは、 * '。両方のサーバのIPは同じISPに属していますが、唯一の違いはクラスです。 –

関連する問題