Palo Alto 送信元 NAT の設定方法と NAT テストコマンド

ポリシー

動作確認環境

  • PA-200
    • Version 8.1.19

NAT 処理プロセスに関する基礎知識

NAT を設定するにあたり、まずパケット処理プロセスについて把握してください。

Palo Alto ファイアウォールがパケット受信時の各処理の順序は以下の通りです。

NAT に関わる処理プロセス
  1. パケットを着信したインターフェースから送信元ゾーンが確定する
  2. 入力パケットの宛先 IP アドレスに基いてルーティングされ、出力インターフェース及び宛先ゾーンが決定される
  3. この時点の [送信元/宛先] IP アドレス、及び [送信元/宛先] ゾーンに基いて NAT ルールの適用有無を検査・確定する
  4. NAT 後の宛先 IP アドレスに基いて再度ルーティングされ、宛先ゾーンが再決定される(宛先 NAT が適用される場合)
  5. NAT 前の [送信元/宛先] IP アドレス、及びこの時点での [送信元/宛先] ゾーンに基づいて、一致するセキュリティポリシーを検査・適用する
  6. 一致する NAT ルールに基づいて、出力時に送信元・宛先アドレス、ポート番号を変換する

送信元 NAT だけを行う場合はそれほど気にしなくても大丈夫ですが、宛先 NAT を行う場合はセキュリティポリシーの設定などに注意が必要です。

送信元 NAT の設定方法

例として以下の構成を考えます。

上画像のように PC-A から PC-B 宛に通信する際に送信元 NAT をすることとし、Palo Alto で送信元 NAT の設定を行います。

送信元 NAT の設定手順
  • NAT ルール設定で使用するアドレスオブジェクトの作成
  • NAT ルールの設定

※通信許可のために必要なセキュリティポリシーは設定されているものとします

アドレスオブジェクトの作成

アドレスオブジェクトの作成は [Objects → アドレス] 画面から行います。

今回、NAT ルールで変換前の送信元 IP アドレスとして 10.10.1.254/32 を指定するため、このアドレスオブジェクトを作成します。

また、NAT ルールで変換後の送信元 IP アドレスとして 10.11.1.100/32 を指定するため、このアドレスオブジェクトを作成します。

CLI でこれら 2 つのアドレスオブジェクトを作成する場合は以下コマンドです。

set address Addr_10.10.1.254_32 ip-netmask 10.10.1.254/32
set address Addr_10.11.1.100_32 ip-netmask 10.11.1.100/32

NAT ルールの設定

NAT ルールの追加は [Policies → NAT] 画面の [追加] から行います。

以下の NAT ポリシールール設定画面が表示されます。

まず全般タブでは以下の項目を設定します。

  • 名前: 任意の NAT ルール名を入力します
  • 内容: 説明文を設定したい場合は入力します
  • タグ: タグを指定したい場合は指定します
  • NAT タイプ: ipv4 とします

次に [元のパケット] タブでは以下の項目を設定します。

  • 送信元ゾーン: NAT 対象通信の送信元ゾーンを指定します
  • 宛先ゾーン: NAT 対象通信の宛先ゾーンを指定します
  • 宛先インターフェース: NAT 対象通信の宛先インターフェースを指定します
  • サービス: NAT 対象通信のサービスを指定します(変換前のもの)
  • 送信元アドレス: NAT 対象通信の送信元アドレスを指定します(変換前のもの)
  • 宛先アドレス: NAT 対象通信の宛先アドレスを指定します(変換前のもの)

最後に [変換済みパケット] タブで以下の項目を設定します。

  • 送信元アドレスの変換
    • 変換タイプ: スタティック IP を指定します
    • 変換後アドレス: 変換後の送信元アドレスを指定します
      • 双方向: チェックを入れると双方向 NAT になります。つまり、宛先側から変換後の送信元アドレスに通信を行うと宛先が変換前の送信元アドレスに変換されます
  • 宛先アドレスの変換
    • 変換タイプ: None とします

CLI でこれらの設定をする場合は以下コマンドです。

set rulebase nat rules Nat_Rule_01 source-translation static-ip translated-address Addr_10.11.1.100_32
set rulebase nat rules Nat_Rule_01 source-translation static-ip bi-directional yes
set rulebase nat rules Nat_Rule_01 to untrust
set rulebase nat rules Nat_Rule_01 from trust
set rulebase nat rules Nat_Rule_01 source Addr_10.10.1.254_32
set rulebase nat rules Nat_Rule_01 destination any
set rulebase nat rules Nat_Rule_01 service any

NAT のテストコマンド

実際に通信を行わなくても以下のコマンドで NAT のテストができます。

  • test nat-policy-match from <from-zone> to <to-zone> source <source-ip> destination <dest-ip> destination-port <dest-port> protocol <protocol-type>
    • <protocol-type> は以下の通り
      • 1: ICMP
      • 6: TCP
      • 17: UDP
admin@PA-200-A(active)> test nat-policy-match from trust to untrust source 10.10.1.254 destination 10.11.1.254 protocol 1

Source-NAT: Rule matched: Nat_Rule_01
10.10.1.254:0 => 10.11.1.100:0 (1),

ただし、双方向オプションのテストはできませんでした。(合致ルール無しの結果になる。)

NAT セッションの確認コマンド

以下のコマンドで NAT セッションを表示できます。

  • show session all
admin@PA-200-A(active)> show session all

--------------------------------------------------------------------------------
ID          Application    State   Type Flag  Src[Sport]/Zone/Proto (translated IP[Port])
Vsys                                          Dst[Dport]/Zone (translated IP[Port])
--------------------------------------------------------------------------------
72           ping           ACTIVE  FLOW  NS   10.10.1.254[8]/trust/1  (10.11.1.100[8])
vsys1                                          10.11.1.254[0]/untrust  (10.11.1.254[0])
75           ping           ACTIVE  FLOW  NS   10.10.1.254[8]/trust/1  (10.11.1.100[8])
vsys1                                          10.11.1.254[3]/untrust  (10.11.1.254[3])
73           ping           ACTIVE  FLOW  NS   10.10.1.254[8]/trust/1  (10.11.1.100[8])
vsys1                                          10.11.1.254[1]/untrust  (10.11.1.254[1])
76           ping           ACTIVE  FLOW  NS   10.10.1.254[8]/trust/1  (10.11.1.100[8])
vsys1                                          10.11.1.254[4]/untrust  (10.11.1.254[4])
74           ping           ACTIVE  FLOW  NS   10.10.1.254[8]/trust/1  (10.11.1.100[8])
vsys1                                          10.11.1.254[2]/untrust  (10.11.1.254[2])


コメント

Ads Blocker Image Powered by Code Help Pro

広告ブロッカーが検出されました

当ブログは広告ブロッカーを利用しての閲覧に対応していません。

閲覧するためにはブラウザの拡張機能で広告ブロッカーを無効化してください。

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました