
2台のコンピュータがありますが、一方から別のコンピュータにSSHを介してのみ接続できます(なぜ?時々もう一度尋ねてください...)。だから私はこれをハックして双方向に効果的にSSHを接続したいと思います。
というデバイスを作成しました。h-Linux-a(IPアドレスは10.10.20.20です)
ssh -R 2222:127.0.0.1:22 h-linux-b
h-linux-b で以下を実行し、h-linux-a に正常に再接続できることをテストしました。
ssh -p 2222 127.0.0.1
だからh-linux-bに以下を追加しました。
iptables -t nat -A OUTPUT -p tcp -d 10.10.20.20 --dport 22 -j DNAT --to-destination 127.0.0.1:2222
私がするとき
ssh 10.10.20.20
私のSSHはそこにぶら下がっています。 iptablesのヒットカウンタが上がっているのを見て(1ずつ増えるので再試行する必要はありません)、h-linux-aの一時ポートでtcpdumpをチェックして、トラフィックが戻ってきていることを確認しました(何も表示されません)。生きている)。
だから私のiptablesコマンドは問題のようです。私はINPUTチェーンをあまり使用せず、主にPREROUTINGとPOSTROUTINGを使用しているので、ニュアンスを知りません。
答え1
変える:
iptables -t nat -A OUTPUT -p tcp -d 10.10.20.20 --dport 22 -j DNAT --to-destination 127.0.0.1:2222
努力する:
iptables -t nat -A OUTPUT -p tcp -d 10.10.20.20 --dport 22 -j REDIRECT --to-ports 2222
リダイレクトチェーンを使用すると、トラフィックを同じシステムに再ループできます。