web-dev-qa-db-ja.com

Ubuntu 14.04 LTEポートを別のポートに転送する

内部で1つのポートを別のポートに転送する方法を探しています。

ポート25565でリッスンするゲームサーバーをインストールしたUbuntu14.04サーバーがあります。ゲームは複数のポートをサポートしていません。別の場所からポート443のみを介してこのサーバーに接続する必要があります。

ポート443経由で接続するときに、ファイアウォールがポート25565に転送して、ゲームがリクエストを取得するようにするにはどうすればよいですか。また、ゲームが応答したい場合は、ポート443に転送します(人が443経由で接続されている場合のみ)。

そして、誰かが25565を介して接続すると、通常の場合のように25565を介して応答します。

Iptablesでこれを行うにはどうすればよいですか?

1
Roy Timmermans

REDIRECTチェーンのnatテーブルで PREROUTING ターゲットを使用します。サーバーがTCPを使用していると仮定して、次のコマンドをrootとして実行します。

iptables -t nat -I PREROUTING -p tcp -m tcp --dport 443 \
                -j REDIRECT --to-ports 25565

サーバーがUDPを使用している場合は、tcpudpに置き換えます。

3