ドキュメント

クイックスタート + 機能・デバイスごとの解説(随時更新中)

ポート転送

本記事では、パネルの「ポート転送」——独立したグローバル IP を持つサーバーでの従来型ポート転送(iptables/nftables DNAT)について説明します。

ひとことで理解

グローバル IP を持つサーバーがあり、「あるグローバルポート」で受け取ったトラフィックを「別のマシン(または自機の別ポート)」へ自動的に転送したいとします。ポート転送はそれを実現する機能です。

機能概要

独立したグローバル IP を持つサーバーでは、システムファイアウォール(iptables/nftables)を使って「あるグローバルポート」の受信トラフィックを「対象 IP:ポート」へ転送できます。これが従来型の、システムレベルのポート転送です。

ポートトンネリングとの違い(先にどちらを使うか整理する)

ポート転送(本記事)ポートトンネリング
対象サーバー独立したグローバル IP ありグローバル IP なし(トンネルサーバー)
実現方法システムファイアウォール DNATリバーストンネル
転送を行う位置対象サーバーの自機パネルサーバー
Agent が必要いいえはい

適用シーン

  • サーバーのグローバル IP のとあるポートを、別のサーバーのサービスへ転送する
  • 非標準ポート(8888 など)を標準サービスポートにマッピングする
  • 社内マシンのサービスを、グローバル IP を持つマシン経由で公開する

例

グローバルサーバー 1.2.3.4 があり、社内マシン 192.168.1.100 で Web サービス(ポート 80)が動いているとします。外部の人が 1.2.3.4:8888 にアクセスすると社内の 80 番にアクセスしたのと同じにしたい場合:

  • プロトコル:TCP
  • 待ち受けポート:8888
  • 対象 IP:192.168.1.100
  • 対象ポート:80

使い方

グローバル IP を持つ対象サーバーの「システム管理パネル → ファイアウォール → ポート転送」に入り、「ポート転送管理」を開きます:

1. 「転送を追加」をクリックし、以下を入力:

  • プロトコル:TCP / UDP
  • 待ち受けポート:グローバルの受信ポート
  • 対象 IP:転送先の実際のアドレス(グローバル IP、またはルーティング可能な社内 IP)
  • 対象ポート:対象サービスのポート

2. 作成すると、トラフィックが転送されます

3. 作成済みの転送は一覧表示され、編集または削除できます

技術的な説明(転送ルール)

パネルはサーバー上に自動的に 3 つのルールを設定します(TCP、待ち受け 8888、対象 192.168.1.100:80 の場合):

1. DNAT::8888 宛のトラフィックを 192.168.1.100:80 に書き換える

2. FORWARD 許可:転送の往路/復路のトラフィックを許可する

3. MASQUERADE:送信元アドレス変換を行い、戻りのパケットが正しく返るようにする

> 分かりやすく言うと:DNAT は「宛先を変える」、MASQUERADE は「戻り先アドレスを変える」もので、3 つのルールが揃って初めて転送が完全に機能します。

注意事項

1. 独立したグローバル IP が必要:ポート転送は対象サーバーの自機で行うため、このサーバーに独立したグローバル IP が必要です(トラフィックが実際にそこへ届くため)。

2. ファイアウォールの許可:別のサーバーへ転送する場合は、対象サーバー/中間ファイアウォールで対象ポートを許可する必要があります。

3. 編集 = 旧ルールの削除 + 新規作成:システムファイアウォールのルールはその場での変更に対応していないため、編集時は先に旧ルールを削除してから新ルールを追加します。

4. パネルは iptables-legacy / iptables / nftables の 3 つのバックエンドに自動対応し、手動で選択する必要はありません。