FortiGate を Web プロキシサーバとして動作させる方法

ファイアウォール(UTM)

作業環境

  • FortiGate-60E v7.0.6

FortiGate を Web プロキシサーバとして使用する

FortiGate を Web プロキシサーバとして動作させることが可能です。

プロキシサーバには明示型と透過型がありますが、ここではより一般的な明示型プロキシとして FortiGate を使用する場合について記載します。

FortiGate でのプロキシサーバ設定

設定の流れ
  1. Explicitプロキシの設定
  2. プロキシポリシーの設定

GUI にプロキシサーバ設定項目を表示させる

デフォルトではプロキシサーバ設定項目は GUI に表示されていないため、[システム >表示機能設定] 画面で [Explicit プロキシ] を有効化して表示させます。

Explicit プロキシの設定

続いて [ネットワーク > Explicitプロキシ] の設定を行います。

最低限、以下の設定を行います。

最低限の設定
  • Explicit Webプロキシ → 有効化する
  • リッスンするインターフェース → プロキシサーバとして動作させるインターフェースを指定
  • HTTPポート → プロキシサーバとして待ち受けるポート番号を指定

その他の項目は必要に応じてデフォルトから変更します。

  • デフォルトのファイアウォールポリシーのアクション
    • 後に設定するプロキシポリシーについて、暗黙のポリシーのアクションに該当します
  • 発信IP → Web リクエストの送信元 IP をどれにするかを指定します
    • インターフェースIPと同じ
      • FortiGate のインターフェースの IP を送信元 IP とします
    • 指定
      • 指定したインターフェースの IP を送信元 IP とします

Explicit プロキシの設定に該当する CLI での設定項目は config web-proxy explicit です。

FW01 # show web-proxy explicit
config web-proxy explicit
    set status enable
    set http-incoming-port 8080
    set https-incoming-port 8080
end

FW01 # show full-configuration web-proxy explicit
config web-proxy explicit
    set status enable
    set ftp-over-http disable
    set socks disable
    set http-incoming-port 8080
    set https-incoming-port 8080
    set incoming-ip 0.0.0.0
    set ipv6-status disable
    set strict-guest disable
    set unknown-http-version reject
    set realm "default"
    set sec-default-action deny
    set https-replacement-message enable
    set message-upon-server-error enable
    set pac-file-server-status disable
    set ssl-algorithm low
    set trace-auth-no-rsp disable
end

リッスンするインターフェースについてはインターフェース設定になります。

config system interface
    edit "internal3"
        set explicit-web-proxy enable
    next
end

プロキシポリシーの設定

プロキシポリシーはプロキシサーバ経由の通信を制御するポリシーです。

[ポリシー&オブジェクト > プロキシポリシー] 画面の [新規作成] から設定します。

設定内容はファイアウォールポリシーと似ています。

■基本設定

  • プロキシタイプExplicit Web(デフォルト)
  • 発信インターフェース → Web リクエストの発信インターフェース
  • 送信元 → プロキシのクライアントの IP を含むアドレスオブジェクトを指定
  • 宛先 → 許可 or 拒否したい宛先を含むアドレスオブジェクトを指定
  • スケジュール → always(デフォルト)
  • サービスwebproxy を指定
  • アクション → 許可 or 拒否

■その他オプション

■設定後のプロキシポリシー画面

プロキシポリシーの設定に該当する CLI 設定項目は config firewall proxy-policy です。

FW01 # show firewall proxy-policy
config firewall proxy-policy
    edit 1
        set uuid a1500342-190c-51ed-62dc-9049f66c0605
        set name "ProxyPolicy"
        set proxy explicit-web
        set dstintf "wan1"
        set srcaddr "10.20.30.0/24"
        set dstaddr "all"
        set service "webproxy"
        set action accept
        set schedule "always"
        set logtraffic all
    next
end

FW01 # show full-configuration firewall proxy-policy
config firewall proxy-policy
    edit 1
        set uuid a1500342-190c-51ed-62dc-9049f66c0605
        set name "ProxyPolicy"
        set proxy explicit-web
        set dstintf "wan1"
        set srcaddr "10.20.30.0/24"
        set dstaddr "all"
        set internet-service disable
        set service "webproxy"
        set srcaddr-negate disable
        set dstaddr-negate disable
        set service-negate disable
        set action accept
        set status enable
        set schedule "always"
        set logtraffic all
        set session-ttl 0
        set http-tunnel-auth disable
        set ssh-policy-redirect disable
        set webproxy-forward-server ''
        set webproxy-profile ''
        set transparent disable
        set disclaimer disable
        set utm-status disable
        set profile-protocol-options "default"
        set ssl-ssh-profile "no-inspection"
        set replacemsg-override-group ''
        set logtraffic-start disable
        set comments ''
    next
end

クライアントでのプロキシサーバ設定

Windows クライアントであれば以下の画面のプロキシサーバ設定を行います。プロキシサーバのアドレスは FortiGate の Explicitプロキシの設定でリッスンするインターフェースとして設定したインターフェースの IP アドレスを指定します。ポート番号は HTTP ポートとして設定した番号を指定します。

参考資料

Explicit web proxy | Administration Guide
config web-proxy explicit | CLI Reference
config firewall proxy-policy | CLI Reference

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