チェックポイントファイアウォールには、2つのNATモード:静的NAT(1対1の内部IPから外部IP))と非表示NATがあります。これは「オーバーロード」と呼ばれます。シスコなど。
明確には言われていませんが、Static NATはポート番号を変更せず、IPのみを変更するようです。
対照的に、Hide NATは、発信パケットの送信元ポートをランダムな「動的に割り当てられた」ものに変更し、パケットの逆変換を可能にするルールをテーブルにインストールします。このルールは、クリア接続終了(TCP FIN、RST)またはタイムアウト時に削除されます。これは、基本的に現在のすべてのNAT対応デバイスが常に行うことです。
外部IPアドレスが1つしかないため、Hide NATバリアントを使用する必要があります。ただし、内部に非常に特殊なホストがあり、非常に特殊なホストを実行しているため、少し拡張したいと思います。送信元ポート番号を変更してランダムに選択することを特に好まないサービス。1つを除くすべてのポートを「動的割り当て」に使用する標準のHideNATが必要です(たとえば、UDP 33333に何も変換しないでください)。 )、およびこの特定のポートからのこの特定のサービスのパケットは、常にこのポート番号にのみ変換される必要があります。
Linuxでは、次のルールを使用してこれを簡単に実行できます。
iptables -t nat -s MY-SPECIAL-Host -p udp --sport MY-SPECIAL-SERVICE-PORT -j SNAT --to-source MY-WHITE-IP:MY-SPECIAL-SERVICE-PORT
iptables -t nat -s MY-LOCAL-NETWORK -p udp -j SNAT --to-source MY-WHITE-IP:10000-[MY-SPECIAL-SERVICE-PORT - 1]
iptables -t nat -s MY-LOCAL-NETWORK -j SNAT --to-source MY-WHITE-IP
(発信UDP会話用にこのポート数を制限していることはわかっていますが、実際のサービスポートは範囲の終わりにあるため、これは問題ではありません。)
チェックポイントで同じことを達成する方法は?必要に応じて、2つのメンバーを持つGAIA R77.10ClusterXLを使用しています。
静的NAT、送信元、および宛先を使用してポートを変更できます。ポリシーのNATタブ)を見ると、左側に元のパケット(変換をトリガーするために一致する必要がある条件)があり、右側に変換されたパケットがあります。必要な変更を加えます。したがって、必要なのは、静的NAT)を使用して特別なホストのルールを作成し、非表示NAT他のもののために。