コンテンツにスキップ

Sophos Firewall

このチュートリアルでは、以下のバージョンのSophos FirewallでMagic WANを使用する方法を示します。

  • テストされたSophosフォームファクタ:

    • Sophos Firewall XGSおよびXGシリーズハードウェア
    • VMware上のSophos Firewall仮想アプライアンス
  • テストされたSophosソフトウェアバージョン:

    • SFOSバージョン19.0 MR2-Build 472
    • SFOSバージョン19.5.1 MR1-Build 278

Generic Routing Encapsulation (GRE)またはIPsecトンネルを介してMagic WANに接続できます。

IPsec接続

以下の手順では、Sophos FirewallデバイスでIPsec接続を設定する方法を示します。明示的に言及されていない設定は、デフォルト値のままで構いません。

1. IPsecプロファイルを追加

  1. System > Profilesに移動します。
  2. IPsec profilesAddを選択します。
  3. General settingsグループで、以下の設定を確認します:
    • Name: プロファイルに説明的な名前を付けます。
    • Key exchange: IKEv2
    • Authentication mode: Main mode
  4. Phase 1グループで、以下の設定を確認します:
    • DH group (key group): 14(DH2048)
    • Encryption: AES256
    • Authentication: SHA2 256
  5. Phase 2グループで、以下を選択します:
    • PFS group (DH group): Same as phase-1
    • Key life: 3600
    • Encryption: AES256
    • Authentication: SHA2 256
  6. Dead Peer Detectionを有効にします。
  7. When peer unreachableで、_Re-initiate_を選択します。
  8. Saveを選択します。

IPsecプロファイルを設定することから始めます。

2. IPsec接続トンネルを作成

次のステップでは、Sophos Firewallデバイスでサイト間IPsec VPN接続を構成します。

  1. Configure > Site-to-site VPNに移動します。
  2. IPsecAddを選択します。
  3. General settingsグループで、以下の設定を確認します:
    • Name: サイト間VPNに説明的な名前を付けます。
    • Connection type: Tunnel interface
    • Gateway type: Initiate the connection
  4. Encryptionグループで、以下の設定を確認します:
    • Authentication type: Preshared key
  5. Gateway settingsで、以下の設定を確認します:
    • Gateway address: Cloudflareから提供されたAnycast IPアドレスを入力します。
    • Local ID type: Cloudflareから提供されたIKE IDを追加します。

IPsecトンネルを構成します。

IPsecトンネルを設定すると、IPsec接続リストにActiveステータスで表示されます。

IPsec接続リストにIPsecトンネルが表示されるはずです。

3. XFRMインターフェースアドレスを割り当てる

Magic WANでトンネルエンドポイントを構成するために必要な/31サブネットからインターフェースアドレスを使用する必要があります。

  1. Configure > Networkに移動します。
  2. Interfacesで、ステップ2で作成したIPsecトンネルに対応するインターフェースを選択します。
  3. インターフェースを編集して、トンネルエンドポイントを構成するために必要な/31サブネットからアドレスを割り当てます。完了すると、次のようになります:

XFRMインターフェースを構成します。

4. ファイアウォールルールを追加

  1. Protect > Rules and policiesに移動します。
  2. Firewall rulesで、SophosとMagic WANの間でトラフィックが流れることを許可する、会社の基準とセキュリティポリシーに基づいたファイアウォールルールを作成します。

会社の基準とセキュリティポリシーに基づいたファイアウォールルールを作成します。

5. IPsecアンチリプレイを無効にする

Sophos FirewallでIPsecアンチリプレイを無効にする必要があります。アンチリプレイ設定を変更すると、IPsecサービスが再起動され、すべてのIPsecトンネルでトンネルフラップが発生します。これにより、すべてのVPN接続に対するIPsecアンチリプレイ保護がグローバルに無効になります。これらの変更を計画的に行ってください。

以下は、SFOSバージョン19およびSFOSバージョン19.5でこれを達成する方法の手順です:

SFOS 19.0 MR2-Build 472または19.5 MR1-Build278以降のバージョン:

  1. CLIにサインインします。

  2. 4を入力してDevice consoleを選択し、次のコマンドを入力します:

    Terminal window
    set vpn ipsec-performance-setting anti-replay window-size 0

    アンチリプレイを無効にするためにCLIにアクセスします。

古いSFOSバージョン

Sophosサポートに連絡してください。

GRE接続

1. SFOSとCloudflareの間にGREトンネルを構成

SFOSとCloudflareのAnycast IPアドレスの間にGREトンネルを構成することから始めます。

  1. CLIにサインインします。

  2. 4を入力してDevice consoleを選択し、次のコマンドを入力します:

    Terminal window
    system gre tunnel add name <NAME_OF_YOUR_GRE_TUNNEL> local-gw <WAN_PORT> remote-gw <REMOTE_GATEWAY_IP_ADDRESS> local-ip <LOCAL_IP_ADDRESS> remote-ip <REMOTE_IP_ADDRESS>

    GREトンネルを構成するためにCLIにアクセスします。

    詳細については、Sophos Firewallナレッジベースを参照してください。

2. GREまたはSD-WANルートを追加してトラフィックをGREトンネル経由でリダイレクト

GREトンネルを介してトラフィックをリダイレクトするためのGREまたはSD-WANルートを追加する方法の詳細は、次のセクション(Sophos Firewallのトラフィックリダイレクションメカニズム)にあります。

3. LAN/DMZからVPNへのファイアウォールルールを追加

SophosとMagic WANの間でトラフィックが流れることを許可する、会社の基準とセキュリティポリシーに基づいたファイアウォールルールを作成します。このファイアウォールルールには、必要なネットワークとサービスが含まれている必要があります。

  1. Protect > Rules and policiesに移動します。
  2. Firewall rulesで、IPv4 > Add firewall ruleを選択します。

会社の基準とセキュリティポリシーに基づいたファイアウォールルールを作成します。

Sophos Firewallのトラフィックリダイレクションメカニズム

トラフィックをリダイレクトするには、静的ルートまたはSD-WANルートを追加できます。

IPsec

静的ルート

Configure > Routing > Static routesに移動して、XFRMインターフェースベースのルートを追加します。インターフェースは、IPsecに基づいてトンネルインターフェースを設定すると自動的に作成されます(上記のCloudflare_MWANの例など)。

静的ルートに移動してXFRMインターフェースベースのルートを追加します。

SD-WANルート

  1. Configure > Routing > Gatewaysに移動して、XFRMインターフェースにカスタムゲートウェイを作成します。インターフェースは、IPsecに基づいてトンネルインターフェースを設定すると自動的に作成されます(上記のCloudflare_MWANの例など)。

ゲートウェイに移動してXFRMインターフェースベースのルートを追加します。

  1. Configure > Routing > SD-WAN routesで、Addを選択して、Cloudflareにトラフィックをリダイレクトするための必要なネットワークとサービスをルートに追加します。接続の説明的な名前と、Incoming interfaceおよびSource networksに設定したIPsecトンネルのIPアドレスを入力します。正しいPrimary gatewayオプションを選択することを忘れないでください。

SD-WANに移動して、ルートに必要なネットワークとサービスを追加します。

GRE

GREまたはSD-WANルート、またはその両方を追加します。

GREルート

CLIでルートを追加します。

  1. CLIにサインインします。
  2. 4を入力してDevice consoleを選択し、次のコマンドを入力してトンネルを作成します:
Terminal window
system gre route add net <IP_ADDRESS> tunnelname <TUNNEL_NAME>

CLIでルートを追加します。

SD-WANルート

  1. GREにカスタムゲートウェイを追加し、ピアIPアドレス(前に選択した/31サブネットから)をゲートウェイIPアドレスとして設定し、Health checkを無効にします。

GREにカスタムゲートウェイを追加します。

  1. Cloudflareにトラフィックをリダイレクトするための必要なネットワークとサービスをルートに追加します。

SD-WANルートを追加します。

Cloudflareダッシュボードでトンネルのステータスを確認

The Cloudflare dashboard monitors the health of all anycast tunnels on your account that route traffic from Cloudflare to your origin network.

ダッシュボードは、トンネルの健康状態を、トラフィックが到達する可能性のある各Cloudflareロケーションから測定したビューを示します。 If the tunnels are healthy on your side, you will see the majority of servers reporting an up status. It is normal for a subset of these locations to show tunnel status as degraded or unhealthy, since the Internet is not homogeneous and intermediary path issues between Cloudflare and your network can cause interruptions for specific paths.

Not all data centers will be relevant to you at all times. You can refer to the Average ingress traffic (last hour) column to understand if a given data center is receiving traffic for your network, and if its health status is relevant to you.

To check for anycast tunnel health:

  1. Go to the Cloudflare dashboard and select your account.
  2. Go to Magic WAN > Tunnel health.
  3. In Cloudflare colos, you can choose one or more Cloudflare data centers to filter out the traffic that shows up in your anycast tunnels. For example, if you chose the Lisbon data center, your anycast tunnels would only show connections to that data center.
  4. Below, you have a list of all your anycast tunnels, as well as their current health status. Find the tunnel you wish to inspect and select the arrow (>) before it to open its details.
  5. The details pane shows the connection status between different Cloudflare servers and your tunnel. Select Traceroute for details in one of the Cloudflare servers shown to check for issues between Cloudflare and your origin network.

Cloudflareのヘルスチェックを機能させる

  1. CloudflareからのICMPプローブパケットは、AnycastソースIPを持つICMPリクエストタイプでなければなりません。以下の例では、ターゲット例として172.64.240.252を使用しています:
Terminal window
curl --request PUT \
https://api.cloudflare.com/client/v4/accounts/{account_id}/magic/ipsec_tunnels/{tunnel_id} \
--header "X-Auth-Email: <EMAIL>" \
--header "X-Auth-Key: <API_KEY>" \
--header "Content-Type: application/json" \
--data '{
"health_check": {
"enabled": true,
"target": "172.64.240.252",
"type": "request",
"rate": "mid"
}
}'
  1. Configure > Network > Interfaces > Add aliasに移動します。ICMPプローブトラフィック用にCloudflareから提供されたIPアドレスを追加します。これは、Sophosファイアウォールがそれらをスプーフィングパケットとしてドロップしないようにするために必要です。これはVPNを作成するために使用されるIPとは異なります。これはプローブトラフィック専用の特別なIPアドレスです。

プローブがファイアウォールによってドロップされないようにCloudflareから提供されたIPアドレスを追加します。

  1. SFOSからのICMP応答は、プローブパケットが受信されたのと同じトンネルを介して戻る必要があります。追加のSD-WANポリシールートを作成する必要があります。

ICMP応答が同じトンネルを介してCloudflareに戻るようにSD-WANルートを構成します。

パケットフローは次のようになります:

Terminal window
tcpdump -nn proto 1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked v1), capture size 262144 bytes
13:09:55.500453 xfrm1, IN: IP 172.70.51.31 > 172.64.240.252: ICMP echo request, id 33504, seq 0, length 64
13:09:55.500480 xfrm1, OUT: IP 172.64.240.252 > 172.70.51.31: ICMP echo reply, id 33504, seq 0, length 64
13:09:55.504669 xfrm1, IN: IP 172.71.29.66 > 172.64.240.252: ICMP echo request, id 60828, seq 0, length 64
13:09:55.504695 xfrm1, OUT: IP 172.64.240.252 > 172.71.29.66: ICMP echo reply, id 60828, seq 0, length 64

Sophos Firewallダッシュボードでトンネルのステータスを確認

IPsec

トンネルが機能している場合、そのStatusは緑色になります。

トンネルが機能している場合、緑色のステータスで表示されます。

対応するXFRMインターフェースもConnectedステータスを表示します。

XFRMインターフェースも接続ステータスを表示します。

GRE

CLIにアクセスし、system gre tunnel showと入力してGREトンネルのステータスを確認します。トンネルが機能している場合、そのステータスはEnabledとして表示されます。

GREトンネルは、動作中にEnabledのステータスを表示します。

GREトンネルは、動作中にEnabledのステータスを表示します。

トラブルシューティング

トンネルが両端で接続ステータスを示しているが、確立されていない場合:

  • IPsecプロファイルの設定が正しいか確認します。
  • 対応するトンネルインターフェースがアップしていることを確認します。
  • SFOSでルーティング設定とルートの優先順位が正しく設定されていることを確認します。
  • Cloudflareに静的バックルートが追加されていることを確認します。
  • 特定のゾーンおよびホストまたはサービスのファイアウォールルールがSFOSに追加されている必要があります。GREとIPsecはVPNゾーンに属します。
  • tcpdumpを実行して、パケットがVPNまたはGREトンネルを通過しているかどうかを確認します。
  • Cloudflareでパケットキャプチャを実行して、トラフィックがCloudflareプラットフォームに到達しているかどうかを確認します。