2016-05-10 9 views
0

異なるネットワークに配置されたさまざまなマシンと通信する必要がある自動化フレームワークを設計しています。私が直面している問題は、私のサブネットの1つでは、セキュリティ上の理由からアクセスが制限されているため、22(ssh)以外のポートでは要求できないということです。これを実現するには、ネットワークA(マスターノード)からネットワークB(スレーブノード)上のマシンにssh(ファブリック)を使用して送信されたコマンドを繰り返すデーモンが必要です。今度は、このデーモンがすべてのコマンドマスターをネットワークBの他のマシンに送信し、応答をネットワークAのマスターノードに返すようにエコー/リピートできるようにします。2つの異なるサブネット間にリピータ/エコーサーバが必要

これは本当に混乱していますが、私ができるほど明確にしてください。もし私が自分のプログラムを書く以外に、Pythonでそれをやり遂げる方法を誰かが知っていればコメントしてください。あなたの助けを前にありがとう。

答えて

0

基本的に2つのサブネットの間にプロキシが必要です。あなたは関与するロジックを使ってPythonで小さなプロキシものを行うことができます。

1. A connection between the proxy & remote server B(original target). 
2. Client_in_subnet_A --> Proxy --> Server_in_subnet_B 
3. Client_in_subnet_A <-- Proxy --> Server_in_subnet_B 
4. Close_connection. 

をそうするいくつかの方法、同様の問題に直面している人のためにhttps://gist.github.com/pomack/6194156またはhttps://mitmproxy.org/

+0

お返事ありがとうございます。しかし、前に述べたように、サブネットBはポート22(ssh)での通信しか許可しないので、従来のプロキシサーバーは動作しません。私はRPCを試しましたが、それは実用的な解決策ではありません。 – Umer

+0

SSHトラフィックのみを流すことができますか? –

+0

はい、これはセキュリティの制限です。 – Umer

関連する問題