Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

IBM Cloud での vSRX 仮想ファイアウォールの高度なタスクの実行

ファイアウォールの使用

IBM Cloud™ Juniper vSRX 仮想ファイアウォールは、セキュリティ ゾーンという概念を採用しています。ここでは、各 vSRX 仮想ファイアウォール インターフェイスを 1 つのゾーンにマッピングしてステートフル ファイアウォールを処理します。ステートレス ファイアウォールは、ファイアウォール フィルターによって制御されます。

ポリシーは、これらの定義されたゾーン間のトラフィックを許可およびブロックするために使用され、ここで定義されたルールはステートフルです。

IBM Cloud では、vSRX 仮想ファイアウォールは 4 つの異なるセキュリティ ゾーンを持つよう設計されています。

ゾーン

スタンドアロン インターフェイス

HA インターフェイス

SL-Private(タグなし)

ge-0/0/0.0 または ae0.0

reth0.0

SL-Public(タグなし)

ge-0/0/1.0 または ae1.0

reth1.1

顧客プライベート(タグ付き)

ge-0/0/0.1 または ae0.1

reth2.1

カスタマーパブリック(タグ付き)

ge-0/0/1.1 または ae1.1

reth3.1

ゾーン ポリシー

以下は、ポリシーで定義できる属性の一部です。

  • 送信元アドレス

  • 宛先アドレス

  • アプリケーション

  • アクション(permit/deny/reject/count/log)

これはステートフル操作であるため、パケットの返送を許可する必要はありません(この場合、エコーは応答します)。

ステートフル ファイアウォールを設定するには、次の手順に従います。

  1. セキュリティ ゾーンを作成し、それぞれのインターフェイスを割り当てます。

    スタンドアロンシナリオ:

    set security zones security-zone CUSTOMER-PRIVATE interfaces ge-0/0/0.1

    set security zones security-zone CUSTOMER-PUBLIC interfaces ge-0/0/1.1

    高可用性シナリオ:

    set security zones security-zone CUSTOMER-PRIVATE interfaces reth2.1

    set security zones security-zone CUSTOMER-PUBLIC interfaces reth2.1

  2. 2 つの異なるゾーン間のポリシーとルールを定義します。

    次の例は、ゾーン Customer-Private から Customer-Public へのトラフィックの ping を示しています。

    set security policies from-zone CUSTOMER-PRIVATE to-zone CUSTOMER-PUBLIC policy

    set security policies from-zone CUSTOMER-PRIVATE to-zone CUSTOMER-PUBLIC policy

  3. 以下のコマンドを使用して、vSRX仮想ファイアウォールに送信されるトラフィックを許可します。

    • スタンドアロンシナリオ:

      set security zones security-zone CUSTOMER-PRIVATE interfaces ge-0/0/0.0 host-inbound-traffic system-services all

    • 高可用性シナリオ:

      set security zones security-zone CUSTOMER-PRIVATE interfaces reth2.0 host-inbound-traffic system-services all

  4. OSPF や BGP などのプロトコルを許可するには、以下のコマンドを使用します。

    • スタンドアロンシナリオ:

      set security zones security-zone trust interfaces ge-0/0/0.0 host-inbound-traffic protocols all

    • 高可用性シナリオ:

      set security zones security-zone trust interfaces reth2.0 host-inbound-traffic protocols all

ファイアウォール フィルター

デフォルトでは、IBM Cloud™ Juniper vSRX 仮想ファイアウォールは ping、SSH、HTTPS をそれ自体で許可し、LO インターフェイスに PROTECT-IN フィルターを適用することで他のすべてのトラフィックをドロップします。

新しいステートレス ファイアウォールを設定するには、次の手順に従います。

  1. ファイアウォールフィルターと条件を作成します(以下のフィルターでは、ICMPのみが許可され、他のすべてのトラフィックがドロップされます)

    set firewall filter ALLOW-PING term ICMP from protocol icmp

    set firewall filter ALLOW-PING term ICMP then accept

  2. インターフェイスにフィルタールールを適用します(以下のコマンドは、すべてのプライベートネットワークトラフィックにフィルターを適用します)

    set interfaces ge-0/0/0 unit 0 family inet filter input ALLOW-PING

sNAT を使用する

vSRX仮想ファイアウォールアプライアンスでsNATの設定例を参照できます。ゲートウェイの背後でルーティングされたプライベートノードは、sNATとの連携で外部と通信できます。

IBM Cloud™ Juniper vSRX 仮想ファイアウォールに NAT を設定するには、ジュニパーの Web サイトで ネットワーク アドレス変換ユーザー ガイド を参照してください。

フェイルオーバーの使用

プライマリ IBM Cloud™ Juniper vSRX 仮想ファイアウォールからバックアップ デバイスへのフェイルオーバーを開始して、フェイルオーバー後にすべての制御プレーンおよびデータ プレーン トラフィックがセカンダリ ゲートウェイ デバイスを介してルーティングされるようにすることができます。

メモ:

このセクションは、ジュニパー vSRX 仮想ファイアウォール ゲートウェイ デバイスが高可用性モードでプロビジョニングされている場合にのみ適用されます。

以下の手順を実行します。

  1. プライマリ vSRX 仮想ファイアウォール ゲートウェイ デバイスにログインします。

  2. コンソール プロンプトでコマンド cli を実行して、CLI モードに入ります。CLI モードに入ると、コンソールにプライマリまたはセカンダリのノード ロールが表示されます。

  3. プライマリ vSRX 仮想ファイアウォール ゲートウェイ デバイスで、 コマンドを実行します。

    show chassis cluster status

    両方の冗長性グループで、同じノードがプライマリとして設定されていることを確認します。異なるノードを、異なる冗長性グループの主要な役割として設定することができます。

    メモ:

    vSRX 仮想ファイアウォールは、デフォルトで、冗長グループ 1 ではプリエンプトを yes に、冗長グループ 0 には no に設定します。このリンクを参照して、予防とフェイルオーバーの動作の詳細をご確認ください。

  4. コンソール プロンプトで次のコマンドを実行して、フェールオーバーを開始します。

    request chassis cluster failover redundancy-group <redundancy group number> node <node number>

    ステップ 2 の コマンドの出力から、適切な冗長性グループ番号とノード番号を選択します。両方の冗長グループをフェイルオーバーするには、前のコマンドを各グループに1つずつ 2 回実行します。

  5. フェイルオーバーが完了したら、コンソールの出力を確認します。セカンダリとして表示されます。

  6. お使いの他の vSRX 仮想ファイアウォール ゲートウェイにログインします。コマンド cli を再度実行して CLI モードに入り、コンソール出力がプライマリとして表示されていることを確認します。

    ヒント:

    Juniper vSRX仮想ファイアウォールゲートウェイデバイスでCLIモードに入ると、コントロールプレーンの観点から出力がプライマリとして表示されます。データ プレーンの観点から、必ずシャーシ クラスタ ステータスの出力を確認して、どのゲートウェイ デバイスがプライマリか判断します。冗長グループ、コントロールプレーン、データプレーンの詳細については、 vSRX仮想ファイアウォールのデフォルト設定を参照してください。

ルーティングの使用

IBM Cloud™ Juniper vSRX 仮想ファイアウォールは JunOS をベースにしています。ジュニパーのルーティング スタック全体にアクセスできます。

  • Static routing静的ルートを設定するには、以下のコマンドを実行します。

    デフォルトルートの設定—set routing-options static route 0/0 next-hop <Gateway IP>

  • Creating a static route-を実行します。 set routing-options static route <PREFIX/MASK> next-hop <Gateway IP>

  • Basic OSPF routing- エリア 0 のみを使用して基本的な OSPF ルーティングを設定するには、 コマンドを使用して md5 認証を使用して以下のコマンドを set protocols ospf area 0 interface ge-0/0/1.0 authentication md5 0 key <key> 実行します。

  • Basic BGP routing

    • 基本的なBGPルーティングを設定するには、まず コマンドを実行してローカルASを set routing-options autonomous-system 65001 定義します。

    • 次に、BGPネイバーとそのセッション属性を設定します。

      set protocols bgp group CUSTOMER local-address 10.1.1.1

      set protocols bgp group CUSTOMER family inet unicast

      set protocols bgp group CUSTOMER family inet6 unicast

      set protocols bgp group CUSTOMER peer-as 65002

      set protocols bgp group CUSTOMER neighbor 2.2.2.2

      この例では、BGPは以下のために設定されています。

      • 10.1.1.1 の送信元 IP アドレスを使用してセッションを確立するには

      • ipv4とipv6の両方のユニキャストファミリーをネゴシエートするには

      • AS 65002に属するネイバーとピアリングするには

      • ピア ネイバー IP 10.2.2.2

その他の設定については、 Junos OSのドキュメントを参照してください。

VPN の使用

このトピックでは、2 つのサイト間のルート ベース VPN の設定例について詳しく説明します。この構成例では、サーバー 1(サイト A)はサーバー 2(サイト B)と通信でき、各サイトは 2 つのフェーズ IPSEC 認証を利用します。詳細については、「 VPN の使用 」および「

サイト A(ダラス)の設定例:

サイト B の設定例(ロンドン):

パフォーマンスに関する考慮事項

最高の IPSEC VPN パフォーマンスを実現するために、IKE と IPSEC の両方のプロポーザルの暗号化アルゴリズムとして AES-GCM を使用します。

例えば:

set security ike proposal IKE-PROP encryption-algorithm aes-128-gcm

set security ipsec proposal IPSEC-PROP encryption-algorithm aes-128-gcm

AES-GCMを暗号化アルゴリズムとして使用する場合、同じプロポーザルで認証アルゴリズムを指定する必要はありません。AES-GCMは、暗号化と認証の両方を提供します。

VPN設定の詳細については、 セキュリティデバイスのIPsec VPNユーザーガイド例:ルートベースVPNの設定を参照してください。

ホストオペレーティングシステムのセキュリティ保護

IBM Cloud™ Juniper vSRX 仮想ファイアウォールは、Ubuntu と KVM がインストールされたベアメタル サーバー上で仮想マシンとして動作します。ホストOSを保護するには、同じOS上で他の重要なサービスがホストされていないことを確認する必要があります。

SSHアクセス

IBM Cloud™ Juniper vSRX 仮想ファイアウォールは、パブリック/プライベート ネットワーク アクセスまたはプライベート ネットワーク アクセスのみで導入できます。デフォルトでは、ホストOSのパブリックIPへのパスワードベースのSSHアクセスは、新しいプロビジョニングとOSのリロードでは無効になります。ホストへのアクセスは、プライベートIPアドレスを介して実現できます。または、鍵ベース認証を使用してパブリック IP にアクセスすることもできます。そのためには、新しいゲートウェイの順序を設定する際に公開 SSH キーを指定します。

IBM Cloud™ Juniper vSRX 仮想ファイアウォールの既存の導入環境によっては、ホスト OS のパブリック IP へのパスワードベースの SSH アクセスが可能な場合があります。これらの導入では、次の手順で、パスワードベースのSSHによるOSのパブリックIPへのアクセスを手動で無効にすることができます。

  1. 変更/etc/ssh/sshd_config

    • 以下の値が設定されていることを確認します。

    • ファイルの末尾に以下のフィルター ルールを追加します。

  2. コマンドを使用してSSHサービスを再起動します /usr/sbin/service ssh restart

    上記の手順により、プライベートインフラストラクチャネットワーク10.0.0.0/8サブネット内のアドレスがSSHアクセスを許可されます。このアクセスは、OSのリロード、クラスタリビルド、バージョンアップグレードなどのアクションに必要です。

ファイアウォール

必要なルールなしで Ubuntu ファイアウォール(UFW、Iptables など)を実装すると、vSRX 仮想ファイアウォール HA クラスターが無効になる可能性があります。vSRX 仮想ファイアウォール ソリューションは、プライマリ ノードとセカンダリ ノード間のハートビート通信に依存します。ファイアウォールルールがノード間の通信を許可していない場合、クラスタ通信は失われます。

vSRX 仮想ファイアウォール アーキテクチャは、以下で説明するファイアウォール ルールに影響を与えます。2つのアーキテクチャの詳細については、 vSRXのデフォルト設定を参照してください。

レガシー アーキテクチャで実行されている vSRX 仮想ファイアウォール バージョン 18.4 HA の導入では、UFW のクラスタ通信を許可するために、以下のルールが必要です。

  1. /etc/ufw/before.rules でプロトコル 47(ハートビート通信に使用)を許可するには:

    -A ufw-before-input -p 47 -j ACCEPT

  2. プライベートネットワーク通信を許可するには:

    ufw allow in from 10.0.0.0/8 to 10.0.0.0/8

  3. UFWを有効にするには:

    ufw enable

新しいアーキテクチャで動作する vSRX 仮想ファイアウォール バージョンでは、ファイアウォール ルールでマルチキャスト通信を許可する必要があります。

メモ:

場合によっては、トラブルシューティングの操作で、パブリック リポジトリへのアクセスのためにファイアウォールの無効化が必要になる場合があります。このような場合は、IBM Support と連携して手順を理解する必要があります。

ほとんどのゲートウェイアクションでは、ホストOSとvSRX仮想ファイアウォールのプライベート10.0.0.0/8サブネットへのSSHアクセスが必要です。ファイアウォールでこのアクセスをブロックすると、OSのリロード、クラスタの再構築、バージョンアップグレードのアクションが失敗する可能性があります。

その結果、10.0.0.0/8サブネットでSSHアクセスが無効になっている場合、これらのアクションを実行する前に再度有効にする必要があります。

管理インターフェイスの設定

IBM Cloud™ Juniper vSRX 仮想ファイアウォール ノードは、デフォルトでは設定されていない組み込み管理インターフェイス(「fxp0」)を提供します。設定した場合、これらのプライベートインターフェイスを使用して個々のノードと通信することができます。これは、高可用性クラスターでSSH、ping、SNMPなどを介してセカンダリノードのステータスを監視するのに役立つ場合があります。vSRX仮想ファイアウォールのプライベートIPはプライマリノードにフロートするため、セカンダリノードに直接アクセスすることはできません。

fxp0インターフェイスを設定するには、ゲートウェイのプライベートトランジットVLANに接続されたサブネット内のIPが必要です。ゲートウェイに付属するプライマリサブネットには利用可能なIPがありますが、この使用は推奨されません。これは、プライマリサブネットがゲートウェイプロビジョニングインフラストラクチャ用に予約されており、同じポッドに追加のゲートウェイを導入するとIPコリジョンが発生する可能性があるためです。

プライベート トランジット VLAN にセカンダリ サブネットを割り当て、このサブネットの IP を使用して fxp0 とホスト ブリッジ インターフェイスを PING および SSH アクセス用に設定できます。そのためには、次の手順を実行します。

  1. ポータブルプライベートサブネットを注文し、vSRX仮想ファイアウォールプライベートトランジットVLANに割り当てます。ゲートウェイの詳細ページで、プライベートトランジットVLANを見つけることができます。
    メモ:

    ホスト ブリッジ インターフェイスの IP を 2 つ、vSRX 仮想ファイアウォール fxp0 インターフェイス用に 2 個の IP をサポートするために、サブネットに少なくとも 8 個のアドレスが含まれているようにします。

  2. ホスト br0:0 の設定新しいサブネットから2つのIPを使用してインターフェイスをブリッジします。例えば:

    Ubuntu ホスト 0: ifconfig br0:010.177.75.140 ネットマスク 255.255.255.248

    Ubuntuホスト上 1: ifconfig br0:010.177.75.141 ネットマスク 255.255.255.248

  3. 各 Ubuntu ホストで /etc/network/interfaces を変更して、再起動全体でブリッジ インターフェイスの設定を保持します。例えば:
  4. 2 IP を vSRX 仮想ファイアウォール fxp0 インターフェイスに割り当て、セカンダリ ノードの fxp0 インターフェイスにアクセスするためのバックアップ ルーター設定を作成します
    メモ:

    バックアップ ルーターの設定に関する詳細については、このジュニパーの記事( KB17161)をご覧ください。

  5. サブネットへの静的ルートを作成します。例えば:

    set routing-options static route 10.177.75.136/29 next-hop 10.177.75.137

  6. ファイアウォール フィルターを作成して、fxp0 管理インターフェイスに PING と SSH を許可します

    set firewall filter PROTECT-IN term PING from destination-address 10.177.75.136/29

    set firewall filter PROTECT-IN term SSH from destination-address 10.177.75.136/29