AWS へのNetScaler Web App Firewall デプロイ
本番環境への導入のための AWS 上の NetScaler Web App Firewall アーキテクチャ
-
このアーキテクチャは、AWS CloudFormation テンプレートと AWS クイックスタートガイドの使用を前提としています。このガイドは、 GitHub/AWS-QuickStart/QuickStart-Citrix-ADC-VPXにあります。
-
2 つの可用性ゾーンにまたがる VPC。AWS のベストプラクティスに従って、2 つのパブリックサブネットと 4 つのプライベートサブネットで構成され、/16 クラスレスドメイン間ルーティング (CIDR) ブロック (65,536 個のプライベート IP アドレスを持つネットワーク) を持つ AWS 上の独自の仮想ネットワークを提供します。。*
-
NetScaler Web App Firewall の 2 つのインスタンス (プライマリとセカンダリ)。各可用性ゾーンに 1 つずつ。
-
ネットワークインターフェイス (管理、クライアント、サーバー) ごとに 1 つずつ、関連付けられたインスタンスのトラフィックを制御する仮想ファイアウォールとして機能する3 つのセキュリティグループ。
-
インスタンスごとに3 つのサブネット。1 つは管理用、1 つはクライアント用、もう 1 つはバックエンドサーバー用です。
-
VPC にアタッチされたインターネットゲートウェイ 、およびインターネットへのアクセスを許可するためにパブリックサブネットに関連付けられた Public Subnets ルートテーブル。このゲートウェイは、Web App Firewall ホストがトラフィックを送受信するために使用されます。インターネットゲートウェイの詳細については、「 インターネットゲートウェイ」を参照してください。*
-
5 つのルートテーブル-プライマリとセカンダリ Web App Firewall の両方のクライアントサブネットに関連付けられた 1 つのパブリックルートテーブル。残りの 4 つのルートテーブルは、4 つのプライベートサブネット (プライマリおよびセカンダリ Web App Firewall の管理サブネットとサーバー側サブネット) のそれぞれにリンクしています。。*
-
Web App Firewall の AWS Lambda は次のことを処理します:
-
HA モードの各可用性ゾーンに 2 つの Web App Firewall を設定する
-
サンプルの Web アプリケーションファイアウォールプロファイルを作成し、この構成を Web App Firewall に関してプッシュします
-
-
AWS Identity and Access Management (IAM) は、ユーザーの AWS サービスとリソースへのアクセスを安全に制御します。デフォルトでは、CloudFormation テンプレート (CFT) によって必要な IAM ロールが作成されます。ただし、ユーザーはNetScaler ADCインスタンスに独自のIAMロールを提供できます。
-
パブリックサブネットでは、パブリックサブネット内のリソースへのアウトバウンドインターネットアクセスを許可する 2 つのマネージドネットワークアドレス変換 (NAT) ゲートウェイ。
コストとライセンス
-
ライセンスモデル:従量制(本番ライセンスの場合はPAYG)または自分のライセンスの使用(BYOL、カスタマーライセンスAMI-NetScaler ADC プール容量)。NetScaler ADC プールキャパシティの詳細については、「 NetScaler ADC プールキャパシティ」を参照してください。
-
BYOL には、次の 3 つのライセンスモードがあります:
-
NetScaler プールキャパシティの構成: Citrix ADC プールキャパシティの構成
-
NetScaler VPX チェックインおよびチェックアウトライセンス (CICO): Citrix ADCVPX チェックインおよびチェックアウトライセンス
ヒント:ユーザーがVPX-200、VPX-1000、VPX-3000、VPX-5000、またはVPX-8000のアプリケーションプラットフォームタイプでCICOライセンスを選択した場合は、NetScaler Consoleライセンスサーバーに同じスループットライセンスがあることを確認する必要があります。-
NetScaler 仮想 CPU ライセンス: NetScaler 仮想 CPU ライセンス
-
-
-
スループット:200 Mbps または 1 Gbps
-
バンドル:プレミアム
展開オプション
-
最初のオプションは、クイックスタートガイド形式と次のオプションを使用して展開することです:
-
NetScaler Web App Firewall を新しいVPCに展開します(エンドツーエンド展開)。このオプションは、VPC、サブネット、セキュリティグループ、およびその他のインフラストラクチャコンポーネントで構成される新しいAWS環境を構築し、その新しいVPCにNetScaler Web App Firewallをデプロイします。
-
既存のVPCにNetScaler Web App Firewall を展開します。このオプションは、ユーザーの既存のAWSインフラストラクチャにNetScaler Web App Firewallをプロビジョニングします。
-
-
2つ目のオプションは、NetScaler Consoleを使用してWeb App Firewall StyleBookを使用して展開することです
AWS クイックスタート
ステップ 1: ユーザー AWS アカウントにサインインする
-
AWS のユーザーアカウントにサインインする:Amazon アカウントの作成 (必要な場合) または Amazon アカウントにサインインするために必要なアクセス権限を持つ IAM (アイデンティティおよびアクセス管理) ユーザーロールを持つ AWS 。
-
ナビゲーションバーのリージョンセレクターを使用して、ユーザーが AWS 可用性ゾーン全体に高可用性をデプロイする AWS リージョンを選択します。
-
ユーザーAWSアカウントが正しく設定されていることを確認してください。詳細については、このドキュメントの「技術要件」セクションを参照してください。
ステップ 2: NetScaler Web App Firewall AMI にサブスクライブする
-
このデプロイには、AWS Marketplace にあるNetScaler Web App Firewall 用のAMIへのサブスクリプションが必要です。
-
ユーザー AWS アカウントにサインインします。
-
次の表のいずれかのリンクを選択して、NetScaler Web App Firewallオファリングのページを開きます。
-
ユーザーは、以下のステップ3でクイックスタートガイドを起動してNetScaler Web App Firewallを展開するときに、 NetScaler Web App Firewallイメージパラメーターを使用して 、AMIサブスクリプションに一致するバンドルとスループットオプションを選択します。次のリストは、AMI オプションと対応するパラメーター設定を示しています。このVPX AMIインスタンスには2つ以上の仮想CPUと2GB以上のメモリが必要です。
-
-
AWS Marketplace AMI
-
NetScaler Web App Firewall (Web App Firewall)-200 Mbps: Citrix Web App Firewall (Web アプリケーションファイアウォール)-200 Mbps
-
NetScaler Web App Firewall (Web App Firewall)-1000 Mbps: Citrix Web App Firewall (Web アプリケーションファイアウォール)-1000 Mbps
-
-
サブスクリプションプロセスが完了したら、それ以上アクションを行わずに AWS Marketplace を終了します。AWS Marketplace からソフトウェアをプロビジョニングしないでください。ユーザーは、クイックスタートガイドを使用して AMI をデプロイします。
ステップ 3: AWS クイックスタートを起動する
-
ユーザー AWS アカウントにサインインし、次のいずれかのオプションを選択して AWS CloudFormation テンプレートを起動します。オプションの選択に関するヘルプについては、このガイドの前半の「展開オプション」を参照してください。
-
以下のいずれかのAWS CloudFormation テンプレートを使用して、AWS上の新しいVPCにNetScaler VPXをデプロイします:
-
-
各デプロイが完了するまでに約 15 分かかります。
-
ナビゲーションバーの右上隅に表示される AWS リージョンを確認し、必要に応じて変更します。ここで、Citrix Web App Firewall のネットワークインフラストラクチャが構築されます。テンプレートは、デフォルトで米国東部 (オハイオ) リージョンで起動されます。
-
次の表では、パラメータがカテゴリ別にリストされ、デプロイオプションについて個別に説明されています:
-
NetScaler Web App Firewallを新規または既存のVPCに展開するためのパラメータ(展開オプション1)
NetScaler Web App Firewall を新しいVPCに展開するためのパラメーター
VPC ネットワーク設定
| パラメータラベル (名前) | デフォルト | 説明 |
|---|---|---|
| プライマリアベイラビリティゾーン (primaryAvailabilityZone) | 入力が必要 | プライマリNetScaler Web App Firewall 展開の可用性ゾーン |
| セカンダリ可用性ゾーン (セカンダリ可用性ゾーン) | 入力が必要 | NetScaler Web App Firewall セカンダリ展開の可用性ゾーン |
| VPC CIDR (VPCCIDR) | 10.0.0.0/16 | VPC の CIDR ブロック。x.x.x.x/x 形式の有効な IP CIDR 範囲である必要があります。 |
| リモート SSH CIDR IP (管理) (restrictedsSHCIDR) | 入力が必要 | EC2 インスタンスに SSH できる IP アドレス範囲 (ポート:22)。 |
| たとえば、0.0.0.0/0を使用すると、すべてのIPアドレスがSSHまたはRDPを使用してユーザーインスタンスにアクセスできるようになります。注:ユーザーインスタンスを本番環境で使用するのは安全ではないため、特定の IP アドレスまたはアドレス範囲のみにユーザーインスタンスへのアクセスを許可してください。 | ||
| リモート HTTP CIDR IP (クライアント) (制限付き WebAppCIDR) | 0.0.0.0/0 | EC2 インスタンスに HTTP できる IP アドレス範囲 (ポート:80) |
| リモート HTTP CIDR IP (クライアント) (制限付き WebAppCIDR) | 0.0.0.0/0 | EC2 インスタンスに HTTP できる IP アドレス範囲 (ポート:80) |
| プライマリ管理プライベートサブネット CIDR (プライマリ管理プライベートサブネットCIDR) | 10.0.1.0/24 | 可用性ゾーン 1 にあるプライマリ管理サブネットの CIDR ブロック。 |
| プライマリ管理プライベートIP (プライマリ管理プライベートIP) | — | プライマリ管理サブネットCIDRからプライマリ管理ENI(最後のオクテットは5から254の間でなければならない)に割り当てられたプライベートIP。 |
| プライマリクライアントパブリックサブネット CIDR (primary ClientPublicSubnetCIDR) | 10.0.2.0/24 | 可用性ゾーン 1 にあるプライマリクライアントサブネットの CIDR ブロック。 |
| プライマリクライアントプライベート IP (プライマリクライアントプライベート IP) | — | プライマリクライアントサブネットCIDRのプライマリクライアントIPからプライマリクライアントENI(最後のオクテットは5〜254でなければなりません)に割り当てられたプライベートIP。 |
| プライマリサーバプライベートサブネット CIDR (プライマリサーバプライベートサブネットCIDR) | 10.0.3.0/24 | 可用性ゾーン 1 にあるプライマリサーバーの CIDR ブロック。 |
| プライマリサーバプライベートIP (プライマリサーバプライベートIP) | — | プライマリサーバサブネット CIDR からプライマリサーバ ENI(最後のオクテットは 5 ~ 254)に割り当てられたプライベート IP。 |
| セカンダリ管理プライベートサブネット CIDR (セカンダリ管理プライベートサブネットCIDR) | 10.0.4.0/24 | 可用性ゾーン 2 にあるセカンダリ管理サブネットの CIDR ブロック。 |
| セカンダリ管理プライベートIP (セカンダリ管理プライベートIP) | — | セカンダリ管理 ENI に割り当てられたプライベート IP(最後のオクテットは 5 ~ 254 である必要があります)。セカンダリ管理サブネット CIDR からセカンダリ管理 IP を割り当てます。 |
| セカンダリクライアントパブリックサブネット CIDR (セカンダリ ClientPublicSubnetCIDR) | 10.0.5.0/24 | 可用性ゾーン 2 にあるセカンダリクライアントサブネットの CIDR ブロック。 |
| セカンダリクライアントプライベート IP (セカンダリクライアントプライベート IP) | — | セカンダリクライアント ENI に割り当てられたプライベート IP(最後のオクテットは 5 ~ 254 である必要があります)。セカンダリ・クライアント・サブネットCIDRからセカンダリ・クライアントIPを割り当てます。 |
| セカンダリサーバプライベートサブネット CIDR (セカンダリサーバプライベートサブネットCIDR) | 10.0.6.0/24 | 可用性ゾーン 2 にあるセカンダリサーバーサブネットの CIDR ブロック。 |
| セカンダリサーバプライベートIP (セカンダリサーバプライベートIP) | — | セカンダリサーバ ENI に割り当てられたプライベート IP(最後のオクテットは 5 ~ 254 である必要があります)。セカンダリサーバサブネット CIDR からセカンダリサーバ IP を割り当てます。 |
VPC テナンシー属性 (VPCTenancy) |
デフォルト | VPC に起動されたインスタンスの許可されたテナンシー。単一の顧客専用の EC2 インスタンスを起動するには、[Dedicated tenancy] を選択します。 |
踏み台ホスト設定
| パラメータラベル (名前) | デフォルト | 説明 |
|---|---|---|
| 踏み台ホストが必要 (LinuxBastionHostEIP) | いいえ | デフォルトでは、踏み台ホストは設定されません。ただし、ユーザーがサンドボックスデプロイを選択する場合は、メニューから [ はい]を選択します。これにより、プライベートサブネットとパブリックサブネットのコンポーネントへのアクセス権をユーザーに付与する EIP を使用して、パブリックサブネットにLinux 踏み台ホストがデプロイされます 。 |
NetScaler Web App Firewall 構成
| パラメータラベル (名前) | デフォルト | 説明 |
|---|---|---|
| キーペア名 (keyPairName) | 入力が必要 | 公開鍵と秘密鍵のペア。これにより、ユーザーは起動後にユーザーインスタンスに安全に接続できます。これは、ユーザーが希望する AWS リージョンで作成したキーペアです。「技術要件」セクションを参照してください。 |
| NetScaler インスタンスタイプ (CitrixADCInstanceType) | m4.xlarge | ADC インスタンスに使用する EC2 インスタンスタイプ。選択したインスタンスタイプが AWS Marketplace で利用可能なインスタンスタイプと一致していることを確認してください。一致しない場合、CFT が失敗する可能性があります。 |
| NetScaler ADC AMI ID (Citrix ADC ImageID) | — | NetScaler Web App Firewall 導入に使用されるAWS Marketplace AMI。これは、ステップ 2 でサブスクライブした AMI ユーザーと一致する必要があります。 |
NetScaler ADC VPX IAMロール(iam:GetRole) |
— | このテンプレート: AWS-QuickStart/Quickstart-Citrix-ADC-VPX/テンプレートは 、NetScaler VPXに必要なIAMロールとインスタンスプロファイルを作成します。空のままにすると、CFT は必要な IAM ロールを作成します。 |
| クライアント・パブリック IP (EIP) (クライアント・パブリック IP) | いいえ | ユーザーがユーザーのクライアントネットワークインターフェイスにパブリック EIP を割り当てる場合は、[はい] を選択します。それ以外の場合、展開後でも、ユーザーは必要に応じて後で割り当てることができます。 |
プールライセンス設定
| パラメータラベル (名前) | デフォルト | 説明 |
|---|---|---|
| NetScaler コンソールプールライセンス | いいえ | ライセンスに BYOL オプションを選択する場合は、リストから [ はい ] を選択します。これにより、ユーザーはすでに購入したライセンスをアップロードできます。ユーザーは作業を開始する前に、NetScaler ADCプールキャパシティを構成して、NetScaler Consoleのプールライセンスが利用可能であることを確認する必要があります。「NetScalerプール容量の構成」を参照してください。 |
| アクセス可能なNetScaler コンソール/NetScaler コンソールエージェントIP | 入力が必要 | カスタマーライセンスオプションでは、ユーザーがNetScaler Consoleをオンプレミスで展開するか、エージェントをクラウドに展開するかにかかわらず、入力パラメーターとして使用できるNetScaler Console IPにアクセスできることを確認してください。 |
| ライセンスモード | オプション |
ユーザーは3つのライセンスモードから選択できます:
|
| ライセンス帯域幅 (Mbps) | 0 メガビット/秒 | ライセンスモードが Pooled-Licensing の場合のみ、このフィールドが表示されます。これは、BYOL ADCが作成された後に割り当てられるライセンスの初期帯域幅をMbps単位で割り当てます。10 Mbps の倍数でなければなりません。 |
| ライセンスエディション | Premium | プールキャパシティライセンスモードのライセンスエディションはプレミアムです。 |
| アプライアンスプラットフォームタイプ | オプション | ユーザが CICO ライセンスモードを選択する場合のみ 、必要なアプライアンスプラットフォームタイプを選択してください。ユーザーには、VPX-200、VPX-1000、VPX-3000、VPX-5000、VPX-8000などのオプションが表示されます。 |
| ライセンスエディション | Premium | vCPU ベースのライセンスのライセンスエディションはプレミアムです。 |
AWS クイックスタート設定
| パラメータラベル (名前) | デフォルト | 説明 |
|---|---|---|
| クイックスタートガイド S3 バケット名 (qss3BucketName) | aws-quickstart |
ユーザーがクイックスタートガイドアセットのコピー用に作成した S3 バケット(ユーザーがクイックスタートガイドを自分で使用するためにカスタマイズまたは拡張することを決定した場合)。バケット名には、数字、小文字、大文字、ハイフンを含めることができますが、ハイフンで開始または終了することはできません。 |
| クイックスタートガイド S3 キープレフィックス (qss3KeyPrefix) | クイックスタート-citrix-adc-vpx/ | [オブジェクトキー] と [メタデータ: [オブジェクトキーとメタデータ] の S3 キー名プレフィックスは](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html)、クイックスタートガイドアセットのユーザーコピー用のフォルダーをシミュレートするために使用されます。これは、ユーザーがクイックスタートガイドを自分用にカスタマイズまたは拡張することを決定した場合に、クイックスタートガイドアセットのユーザーコピー用のフォルダーをシミュレートするために使用されます。この接頭辞には、数字、小文字、大文字、ハイフン、およびスラッシュを含めることができます。 |
-
** ページで、ユーザーはスタック内のリソースにリソースタグまたはキーと値のペアを指定し、詳細オプションを設定できます。リソースタグの詳細については、「 リソースタグ」を参照してください。AWS CloudFormation スタックオプションの設定の詳細については、「 AWS CloudFormation スタックオプションの設定」を参照してください。完了したら、 を選択する必要があります。
-
スタックのステータスを監視します。ステータスが CREATE_COMPLETE の場合、NetScaler Web App Firewall インスタンスは準備完了です。
ステップ 4: デプロイメントをテストする
-
NetScaler Web App Firewallは、IPセットが接続されている仮想サーバーをチェックします。
-
NetScaler Web App Firewallは、仮想サーバーがリッスンしている2つのIPアドレスから、関連するパブリックIPアドレスを持つIPアドレスを見つけます。1 つは仮想サーバに直接接続され、もう 1 つは IP セットを介して接続されます。
-
NetScaler Web App Firewall は、パブリックElastic IPアドレスを、新しいプライマリ仮想IPアドレスに属するプライベートIPアドレスに再関連付けます。
-
プライマリインスタンスに接続する
-
トリガーアクションを実行してフェイルオーバーを強制し、セカンダリインスタンスが引き継ぐかどうかを確認します。
Sh appfw profile QS-Profile
踏み台ホストを使用してNetScaler Web App Firewall HAペアに接続
-
PrivateManagementPrivatenSIP と primaryADCInstanceId キーの値は、ADC に SSH 接続するための後のステップで使用します。
-
-
リソースで、 実行中のインスタンスを選択します。
-
-
キーをユーザーキーチェーンに保存するには、次のコマンドを実行します。
ssh-add -K [your-key-pair].pem
-
ユーザーがステップ 1 でメモした LinuxBastionHosteIP1 の値を使用して、次のコマンドを使用して踏み台ホストにログインします。
ssh -A ubuntu@[LinuxBastionHostEIP1]
-
踏み台ホストから、ユーザーは SSH を使用してプライマリ Web App Firewall インスタンスに接続できます。
ssh nsroot@[Primary Management Private NSIP]
NetScalerコンソール
NetScalerコンソールを使用して AWS にNetScaler VPX インスタンスをデプロイする
NetScaler Web App Firewall とOWASPトップ10 — 2017
-
ネガティブセキュリティモデル:ネガティブセキュリティモデルでは、ユーザーは事前に構成された豊富なシグネチャルールを使用して、パターンマッチングの機能を適用して攻撃を検出し、アプリケーションの脆弱性から保護します。ユーザーは望まないものだけをブロックし、残りを許可します。ユーザーは、ユーザーアプリケーションの特定のセキュリティニーズに基づいて独自の署名ルールを追加して、独自のカスタマイズされたセキュリティソリューションを設計できます。
-
ハイブリッドセキュリティモデル:署名の使用に加えて、ユーザーはポジティブセキュリティチェックを使用して、ユーザーアプリケーションに最適な構成を作成できます。署名を使用してユーザーが望まないものをブロックし、肯定的なセキュリティチェックを使用して許可されているものを強制します。
NetScaler Web App Firewall
Web App Firewall 導入戦略
NetScalerコンソール
NetScalerコンソールのアプリケーション分析 および管理機能
前提条件
制限事項と使用ガイドライン
技術的要件
リソース
| リソース | この展開では、 |
|---|---|
| VPC | 1 |
| エラスティックIPアドレス | 0/1 (踏み台ホスト用) |
| IAM セキュリティグループ | 3 |
| IAM ロール | 1 |
| サブネット | 6 (3/アベイラビリティゾーン) |
| インターネットゲートウェイ | 1 |
| ルートテーブル | 5 |
| Web App Firewall VPX インスタンス | 2 |
| 踏み台ホスト | 0/1 |
| NAT ゲートウェイ | 2 |