トンネルのSocat実行スクリプト

トンネルのSocat実行スクリプト

私は次のようにトンネルを運営しています。

socat TCP-LISTEN:9090,fork TCP:192.168.1.3:9090

文字列がトンネルを通過するコードを実行するスクリプトを実行したいと思います。

スクリプトは文字列を変更せずに単独で処理しますが、2つの端の間を変更せずに通過できるようにします。

可能ですか?

ベストアンサー1

それ今可能socat v2では、socat v2は次のアイデアを導入しました。アドレスチェーン。次のコマンドを使用してスクリプトを実行できますEXEC。 stdin/stdout (ファイル記述子 0 および 1) は受信ソケットに接続し、ファイル記述子 3 および 4 は送信ソケットに接続します。

socat - "TCP-LISTEN:localhost:8000 | EXEC:myscript.sh | TCP:myserver:80"

myscript.shの例では、次のようになります。

  • stdin(fd 0) - ポート 8000 からデータを読み取る
  • stdout(fd 1) - ポート 8000 にデータを書き込みます。
  • fd 3 - myserver ポート 80 からデータを読み取る
  • fd 4 - myserverポート80にデータを書き込む

おすすめ記事