Cato CloudからFortiGateへのHA IPSecトンネル

Prev Next

この記事は、冗長化設定されたFortiGateデバイスをIPsecサイトでCato Cloudに接続する方法について説明します。

CatoからFortiGate VPNへのIPsecサイトの概要

この記事では、インターネットに接続された二つのWANリンクを持つ環境で、FortiGateを用いてIPsec接続を2つのCato PoPに構築するという前提を想定しています。

image.png

CatoポップのIPは、Cato管理アプリケーションのネットワーク > IPの割り当てで新しいIPアドレスを割り当てる(または古いものを使用する)ことで取得できます。 サイトに最も近いPoPロケーションのプライマリIPと、異なるPoPロケーションのセカンダリIPを選択することをお勧めします。

注: この記事の設定は、ファームウェアバージョン7.0.8でテストされています。

IKEv2 Catoイニシエイドサイト - FortiGateアプライアンスの設定 (CLI)

このセクションは、Catoイニシエイドルーティングで、Cato IPsec IKEv2サイト用にFortiGateアプライアンスを設定する方法を説明しています。

管理者アカウントでFortiGateアプライアンスにSSH接続してください。

IKEv2 Cato-イニシエイドサイトに接続するためにFortiGateアプライアンスを設定します:

  1. IPsecのフェーズ1を定義するための設定を入力します:

    config vpn ipsec phase1-interface
        edit “CATO_IPSECV2-1” #[プライマリVPN名]
            set interface "wan1"  #[ローカル FGT サイトネットワーク WAN インタフェース]
            set ike-version 2
            set keylife 19800
            set peertype any
            set net-device disable
            set proposal aes256gcm-prfsha512
            set comments “プライマリVPN To CATO Cloud XCATD01”
            set dhgrp 16
            set remote-gw #[Cato PoP 1 IP]
            set psksecret  #[プライマリ Cato 設定 PSK]
        next
    end
    
    config vpn ipsec phase1-interface
        edit “CATO_IPSECV2-2” #[セカンダリVPN名]
            set interface "wan2" #[セカンダリ FGT サイトネットワーク WAN インタフェース - ない場合は同じ WANインタフェースを使用]
            set ike-version 2
            set keylife 19800
            set peertype any
            set net-device disable
            set proposal aes256gcm-prfsha512
            set comments “セカンダリVPN To CATO Cloud XCATD01”
            set dhgrp 16
            set remote-gw #[Cato PoP 2 IP]
            set psksecret #[プライマリ Cato 設定 PSK]
         next
    end
  2. IPsecのフェーズ2を定義するための設定を入力します:

    config vpn ipsec phase2-interface
        edit "CATO_IPSECV2-1" #[VPNフェーズ2の名前]
            set phase1name "CATO_IPSECV2-1" #[VPNフェーズ1の名前]
            set proposal aes256gcm
            set dhgrp 16
            set keylifeseconds 3600
        next
        edit "CATO_IPSECV2-2” #[VPNフェーズ2の名前]
            set phase1name "CATO_IPSECV2-2” #[VPNフェーズ1の名前]
            set proposal aes256gcm
            set dhgrp 16
            set keylifeseconds 3600
        next
    end
  3. トラフィックをVPNトンネルを通してCato Cloudにルーティングします。

    静的ルーティングまたはBGPを使用して動的に行うことができます。 この例では、静的ルーティングを使用しています。

    config router static
       edit #[ローカル FGT ユニークルート ID]
            set dst 172.101.0.0 255.255.255.0 #[リモート CATO ネットワーク サブネット]
            set distance 1
            set device "CATO_IPSECV2-1"
        next
       edit #[ローカル FGT ユニークルート ID]
            set dst 172.101.0.0 255.255.255.0 #[リモート CATO ネットワーク サブネット]
            set priority 10
            set distance 1
            set device "CATO_IPSECV2-2”
        next
        edit #[ローカル FGT ユニークルート ID]
            set dst 172.101.0.0 255.255.255.0 #[リモート CATO ネットワーク サブネットへのブラックホール]
            set blackhole enable
            set distance 254
        next
    end
  4. (任意) 新しいルールを作成する場合や、VPN名を変更する必要がある場合に、ゾーンを作成することで管理が容易になります。

    config system zone
        edit "Cato-Cloud-S2S" #[ゾーン名]
            set intrazone allow
            set interface "CATO_IPSECV2-1" "CATO_IPSECV2-2" #[2 つの IPSEC VPN’s]
        next

    警告! このゾーン設定は、一部のFortiOSオペレーティングシステムのバージョンで問題を引き起こす可能性があります。

  5. トンネル内のトラフィックを許可するルールでファイアウォールポリシーを設定します。

    config firewall policy
        edit #[ローカルFGTルールID]
            set name “CATO Firewall”
            set srcintf "Virtual Lan" #[ローカルFGTサイトネットワークインタフェース]
            set dstintf "Cato-Cloud-S2S"#[リモートCATOネットワークVPNゾーンまたはVPNインタフェース]
            set action accept
            set srcaddr "all" #[ベストプラクティス – ローカルアドレス / グループによるフィルタリング]
            set dstaddr "all" #[ベストプラクティス – CATOアドレス / グループによるフィルタリング]
            set schedule "always"
            set service "ALL"
        next
    end

IKEv1 アグレッシブ(ファイアウォール発動)サイト - FortiGateアプライアンスの設定 (CLI)

このセクションは、FortiGateアプライアンスが開始するルーティングを備えたCato IPsec IKEv1サイト用に、WANトラフィックの動的な公開IPアドレスをサポートするための設定を説明します。

注: この記事の設定は、ファームウェアバージョン7.0.8でテストされています。

IKEv1 ファイアウォール開始サイトに接続するためにFortiGateアプライアンスを設定します:

  1. IPsecのフェーズ1を定義するための設定を入力します:

    config vpn ipsec phase1-interface
    edit "CATO_Cloud_M1" #[プライマリVPN名]
            set interface "wan1" #[ローカルFGTサイトネットワークWANインタフェース]
            set keylife 19800
            set mode aggressive
            set peertype any
            set net-device disable
            set proposal aes256-sha512
            set localid "\u003csite_name\u003e.\u003cacc_name\u003e"" #[ローカルIDを設定 - サイト設定→IPsecメニューから取得可能]
            set dhgrp 16
            set remote-gw  #[CatoポッププライマリIP]
            set psksecret #[プライマリCato設定PSK]
    next
    edit "CATO_Cloud_M2" #[セカンダリVPN名]
            set interface "wan2" #[セカンダリFGTサイトネットワークWANインタフェース - ない場合は同じWANインタフェースを使用]
            set keylife 19800
            set mode aggressive
            set peertype any
            set net-device disable
            set proposal aes256-sha512
            set localid "\u003csite_name\u003e.\u003cacc_name\u003e"" #[ローカルIDを設定 - サイト設定→IPsecメニューから取得可能]
            set dhgrp 16
            set remote-gw  #[CatoポップセカンダリIP]
            set psksecret #[セカンダリCato設定PSK]
    next
  2. IPsecのフェーズ2を定義するための設定を入力します:

    config vpn ipsec phase2-interface
        edit "CATO_Cloud_M1" #[VPNフェーズ2の名前]
            set phase1name "CATO_Cloud_M1" #[VPNフェーズ1の名前]
            set proposal aes256-sha256
            set dhgrp 16
            set auto-negotiate enable
            set comments "フェーズ2"
            set keylifeseconds 3600
        next
        edit "CATO_Cloud_M2" #[VPNフェーズ2の名前]
            set phase1name "CATO_Cloud_M2" #[VPNフェーズ1の名前]
            set proposal aes256-sha256
            set dhgrp 16
            set auto-negotiate enable
            set comments "フェーズ2"
            set keylifeseconds 3600
        next
  3. トラフィックをVPNトンネルを通してCato Cloudにルーティングします。

    静的ルーティングまたはBGPを使用して動的に行うことができます。 この例では、静的ルーティングを使用しています。

    edit #[ローカル FGT ユニークルート ID]
            set dst 10.254.254.0 255.255.255.0  #[リモート CATO ネットワーク サブネット]
            set distance 1
            set device "CATO_Cloud_M1"
    
    next
    edit #[ローカル FGT ユニークルート ID]
            set dst 10.254.254.0 255.255.255.0  #[リモート CATO ネットワーク サブネット]
            set distance 1
            set priority 20 #[これはバックアップ接続となるため、優先度が高い必要があります]
            set device "CATO_Cloud_M2"
    next
    edit #[ローカル FGT ユニークルート ID]
            set dst 10.254.254.0 255.255.255.0 #[その他はブラックホールに送信 - リモート CATO ネットワーク]
            set blackhole enable
            set distance 254    
    next
  4. (任意) 新しいルールを作成する場合や、VPN名を変更する必要がある場合に、ゾーンを作成することで管理が容易になります。

    config system zone
        edit "Cato-Cloud-Dial-up" #[ゾーン名]
            set intrazone allow
            set interface " CATO_Cloud_M1" " CATO_Cloud_M2" #[2 つの IPSEC VPN’s]
        next

    警告! このゾーン設定は、一部のFortiOSオペレーティングシステムのバージョンで問題を引き起こす可能性があります。

  5. トンネル内のトラフィックを許可するルールでファイアウォールポリシーを設定します。

    config firewall policy
        edit #[ローカルFGTルールID]
            set name “CATO Firewall”
            set srcintf "Virtual Lan" #[ローカルFGTサイトネットワークインタフェースまたはインタフェース]
            set dstintf "Cato-Cloud-Dial-up"#[リモートCATOネットワークVPNゾーンまたはVPNインタフェース]
            set action accept
            set srcaddr "all" #[ベストプラクティス – ローカルアドレス / グループによるフィルタリング]
            set dstaddr "all" #[ベストプラクティス – CATOアドレス / グループによるフィルタリング]
            set schedule "always"
            set service "ALL"
        next
    end

IKEv1 サイト - FortiOS VS 3 の設定 (CLI)

このセクションは、WANトラフィックの動的な公開IPアドレスをサポートするためにCato IPsec IKEv1サイト用にFortiOS VS3を設定する方法を説明しています。

IPsec IKEv1サイトに接続するためにFortiOS VS3を設定します:

  1. IPsecのフェーズ1を定義するための設定を入力します:

    config vpn ipsec phase1
        edit "Cato"
            set interface "wan1"
            set localid "\u003csite_name\u003e.\u003cacc_name\u003e"" #[ローカルIDを設定 - サイト設定→IPsecメニューから取得可能]
            set nattraversal enable
            set proposal aes256-sha1
            set keylife 86400
            set mode aggressive
            set add-gw-route enable
            set remote-gw \u003cip\u003e #[CatoポップセカンダリIP]
            set psksecret #[プライマリCato設定PSK]
         next
    end
  2. IPsecのフェーズ2を定義するための設定を入力します:

    config vpn ipsec phase2
        edit "Cato"
            set keepalive enable
            set pfs enable
            set phase1name "Cato"
            set proposal aes256-sha1
            set replay enable
            set keylifeseconds 3600
            set src-subnet 10.230.230.0 255.255.255.0
        next
    
  3. ファイアウォールルールを設定します:

        edit \u003cname\u003e #[ファイアウォールルール名]
            set srcintf "internal"
            set dstintf "wan1"
                set srcaddr "all"
                set dstaddr "all"
            set action ipsec
            set schedule "always"
                set service "ANY"
            set logtraffic enable
            set inbound enable
            set outbound enable
            set vpntunnel "Cato"
       next
  4. サイトのルーティングを設定します:

    config router static
         edit X
            set device "Cato” #[ipsecの名前]
            set dst 10.230.230.0 255.255.255.0 #[リモートCATOネットワークサブネット]
            next
    end
    config router static
        edit Y
            set blackhole enable
            set dst 10.230.230.0 255.255.255.0 #[リモートCATOネットワークサブネット] 
            set distance 254
        next 
    end 

IKEv2サイト - FortiGateとIPsec IKEv2レスポンダーのみの設定

このセクションは、WANトラフィックの動的な公開IPアドレスをサポートするためのCato IPsec IKEv2レスポンダーのみサイト用にFortiOSを設定する方法を説明しています。 この記事のこの部分では、ルートベースのVPN設定について説明しています。

この設定はFortiOS 6.0.XおよびFortiOS 7.0.Xでテストされました。

まず、CMAでIKEv2サイトを作成し、IPsec設定で接続モードを応答者のみとして選択します。 この方法では、Catoは接続を開始しません。

新しいサブメニューが表示され、認証識別子を選択するオプションが提供されます。 ここで、選択肢としてKEY_IDを選びます。 システムは次の形式でLocal.IDを生成して進行します:[XXXXXXXX].[SiteID]。 PSKとDHグループを16に設定します。

FortiOSのIPsec設定を行います:

  1. IPsecのフェーズ1を定義するための設定を入力します:

    config vpn ipsec phase1-interface
        edit "CATO_Cloud_MK21" #[プライマリVPN名]
            set interface "wan1" #[ローカルFGTサイトネットワークWANインタフェース]
            set ike-version 2
            set keylife 19800
            set peertype any
            set mode-cfg disabled
            set proposal aes256gcm-prfsha512
            set localid "[XXXXXXXX].[SiteID]" #[ローカルIDを設定 - サイト設定→IPsecメニューから取得可能]
            set comments "プライマリ IPSEC 2 Cato FW イニシエイド"
            set dhgrp 16
            set nattraversal forced
            set remote-gw #[CatoポッププライマリIP]
            set psksecret #[プライマリCato設定PSK]
        next
        edit "CATO_Cloud_MK22" #[セカンダリVPN名]
            set interface "wan2" #[セカンダリFGTサイトネットワークWANインタフェース - ない場合は同じWANインタフェースを使用]
            set ike-version 2
            set keylife 19800
            set peertype any
            set mode-cfg disabled
            set proposal aes256gcm-prfsha512
            set localid "[XXXXXXXX].[SiteID]" #[ローカルIDを設定 - サイト設定→IPsecメニューから取得可能]
            set comments "セカンダリ IPSEC 2 Cato FW イニシエイド バックアップ"
            set dhgrp 16
            set remote-gw #[CatoポップセカンダリIP]
            set psksecret #[セカンダリCato設定PSK]
        next
    
  2. IPsecのフェーズ2を定義するための設定を入力します:

    config vpn ipsec phase2-interface
        edit "CATO_Cloud_MK22" #[VPNフェーズ2の名前]
            set phase1name "CATO_Cloud_MK22" #[VPNフェーズ1の名前] 
            set proposal aes256-sha512
            set dhgrp 16
            set auto-negotiate enable
            set keylifeseconds 3600
        next
        edit "CATO_Cloud_MK21" #[VPNフェーズ2の名前]
            set phase1name "CATO_Cloud_MK21" #[VPNフェーズ1の名前] 
            set proposal aes256-sha512
            set dhgrp 16
            set auto-negotiate enable
            set keylifeseconds 3600
        next
    
  3. トラフィックをVPNトンネルを通してCato Cloudにルーティングします:

    config router static
        edit X #[ローカルFGTユニークルートID]
            set dst 10.254.254.0 255.255.255.0 #[リモートCatoネットワークサブネット – 必要に応じて置換]
            set device "CATO_Cloud_MK21"
        next
        edit Y #[ローカルFGTユニークルートID]
            set dst 10.254.254.0 255.255.255.0 #[リモートCatoネットワークサブネット – 必要に応じて置換]
            set priority 10 #[これはバックアップ接続となるため、優先度が高い必要があります]
            set device "CATO_Cloud_MK22"
        next
        edit Z #[ローカルFGTユニークルートID]
            set dst 10.254.254.0 255.255.255.0 #[その他はブラックホールに送信 - リモートCatoネットワーク]
            set distance 254
            set blackhole enable
        next
    
  4. トンネル内のトラフィックを許可するルールでファイアウォールポリシーを設定します。

    config firewall policy
        edit #[ローカルFGTルールID]
            set name "From_Cato_Primary_IPsec"
            set srcintf "CATO_Cloud_MK21" #[リモートCatoネットワークVPNゾーンまたはVPNインタフェース]
            set dstintf "internal_LAN" #[ローカルFGTサイトネットワークインタフェースまたはインタフェース]
            set srcaddr "all" #[ベストプラクティス – Catoアドレス / グループによるフィルタリング]
            set dstaddr "all" #[ベストプラクティス – ローカルアドレス / グループによるフィルタリング]
            set action accept
            set schedule "always"
            set service "ALL"
            set logtraffic all
            set fsso disable #[新バージョンのFortiOSでは不要]
            set comments "トラフィック From the_Cato プライマリ IPSec"
        next
        edit #[ローカルFGTルールID]
            set name "To_Cato_Primary_IPsec"
            set srcintf "internal_LAN" #[ローカルFGTサイトネットワークインタフェースまたはインタフェース]
            set dstintf "CATO_Cloud_MK21" #[リモートCatoネットワークVPNゾーンまたはVPNインタフェース]
            set srcaddr "all" #[ベストプラクティス – ローカルアドレス / グループによるフィルタリング]
            set dstaddr "all" #[ベストプラクティス – Catoアドレス / グループによるフィルタリング]
            set action accept
            set schedule "always"
            set service "ALL"
            set logtraffic all
            set fsso disable #[新バージョンのFortiOSでは不要]
            set comments "トラフィック From the local network to the_Cato プライマリ IPSec"
        next
        edit #[ローカルFGTルールID]
            set name "From_Cato_Secondary_IPsec"
            set srcintf "CATO_Cloud_MK22" #[リモートCatoネットワークVPNゾーンまたはVPNインタフェース]
            set dstintf "internal_LAN" #[ローカルFGTサイトネットワークインタフェースまたはインタフェース]
            set srcaddr "all" #[ベストプラクティス – Catoアドレス / グループによるフィルタリング]
            set dstaddr "all" #[ベストプラクティス – ローカルアドレス / グループによるフィルタリング]
            set action accept
            set schedule "always"
            set service "ALL"
            set logtraffic all
            set fsso disable #[新バージョンのFortiOSでは不要]
            set comments "トラフィック From the_Cato セカンダリ IPSec"
        next
        edit #[ローカルFGTルールID]
            set name "To_Cato_Secondary_IPsec"
            set srcintf "internal_LAN" #[ローカルFGTサイトネットワークインタフェースまたはインタフェース]
            set dstintf "CATO_Cloud_MK22" #[リモートCatoネットワークVPNゾーンまたはVPNインタフェース] 
            set srcaddr "all" #[ベストプラクティス – ローカルアドレス / グループによるフィルタリング]
            set dstaddr "all" #[ベストプラクティス – Catoアドレス / グループによるフィルタリング]
            set action accept
            set schedule "always"
            set service "ALL"
            set logtraffic all
            set fsso disable #[新バージョンのFortiOSでは不要]
            set comments "トラフィック From the local network to the_Cato セカンダリ IPSec"
        next
    end
    

FortiOSアプライアンスをGUIで設定

GUI経由でIPsec IKEv2 FW-initiatedサイトに接続するためにFortiOSを設定します:

  1. FortiOSのIPsec設定を行います:

    1. VPN > IPsec ウィザードに移動し、VPNの名前を入力し、テンプレート名としてカスタムを選択します。 次へをクリックします。

      image001.png

    2. 次の画面で以下のように設定します:

      image002.pngimage003.pngimage004.pngimage005.png

  2. ファイアウォールポリシーの設定を行います:

    Cato IPsec サイトからのトラフィックを許可するファイアウォールポリシーを作成します。 ポリシー > オブジェクト > ファイアウォールポリシーに移動し、新規作成をクリックします。 すべてのFWネットワークからのすべてのトラフィックを許可することをお勧めしますが、ソース/宛先/サービスを選択することもできます。

    image006.png

    注: 通常はトラフィックをNATする必要はありません。

  3. 静的ルートを設定します:

    最後に、ネットワーク > 静的ルート > 新規作成からルートを追加します。 IPsec 接続を通じてアクセスしたいCato IP範囲と共にコンパイルします。

    image007.png

    1. バックアップトンネルを作成するには、プロセスを繰り返します (1。 異なるCato PoP IPを持つIPsec接続の作成 / 2。 新しいIPsecのためのFWポリシーの作成) そしてルーティングフェーズに到達したら優先度/管理距離を高い番号に設定します。

    2. Cato管理アプリケーションでサイトの動的ルーティング設定を行います。 サイトのプライマリとセカンダリトンネルの非公開IPを定義します。

      環境で動的ルーティングが設定されている場合は、ステップ4をスキップする必要があります。

      image008.png

    3. サイトのプライマリおよびセカンダリBGP設定を行います。

      image009.png

  4. FortiGate GUIで動的ルーティング設定を行います。

    1. 各インタフェースをCatoとFortiGateプライベートIPに設定し、Ping管理アクセスを有効にします:

      image011.pngimage012.png

    2. ネットワーク > BGPに移動し、Cato設定を反映する2つの新しい隣接を作成します:

      image013.png

    3. Cato管理アプリケーションと同じ設定でローカルASを設定します:

      image014.png

    4. 保存をクリックします。

      Cato管理アプリケーションのサイト設定 > BGPで両方のトンネルが確立されているのが確認でき、ステータスは両方のIPsec接続で受信接続により確立されています:

      image015.png