ユースケース: ICAPを使用したリモートマルウェア検査によるエンタープライズネットワークの保護
Citrix Secure Web Gateway™ (SWG) アプライアンスはプロキシとして機能し、すべてのクライアントトラフィックを傍受します。アプライアンスはポリシーを使用してトラフィックを評価し、クライアント要求をリソースが存在するオリジンサーバーに転送します。アプライアンスはオリジンサーバーからの応答を復号化し、プレーンテキストコンテンツをICAPサーバーに転送してマルウェア対策チェックを行います。ICAPサーバーは「適応不要」またはエラー、あるいは変更された要求を示すメッセージで応答します。ICAPサーバーからの応答に応じて、要求されたコンテンツはクライアントに転送されるか、適切なメッセージが送信されます。
このユースケースでは、Citrix® SWGアプライアンスで、一般的な構成、プロキシおよびSSLインターセプト関連の構成、そしてICAP構成を実行する必要があります。
一般的な構成
以下のエンティティを構成します。
- NSIPアドレス
- サブネットIP (SNIP) アドレス
- DNSネームサーバー
- SSLインターセプト用のサーバー証明書に署名するためのCA証明書とキーのペア
プロキシサーバーとSSLインターセプトの構成
以下のエンティティを構成します。
- すべての送信HTTPおよびHTTPSトラフィックを傍受するための明示モードのプロキシサーバー
- 接続用の暗号やパラメーターなどのSSL設定を定義するSSLプロファイル
- トラフィックを傍受するためのルールを定義するSSLポリシー。すべてのクライアント要求を傍受するにはtrueに設定します。
詳細については、以下のトピックを参照してください。
以下のサンプル構成では、マルウェア対策検出サービスは www.example.com にあります。
一般的な構成の例:
add ns ip 192.0.2.5 255.255.255.0
add ns ip 198.51.100.5 255.255.255.0 -type SNIP
add dns nameServer 203.0.113.2
add ssl certKey ns-swg-ca-certkey -cert ns_swg_ca.crt -key ns_swg_ca.key
<!--NeedCopy-->
プロキシサーバーとSSLインターセプト構成の例:
add cs vserver explicitswg PROXY 192.0.2.100 80 –Authn401 ENABLED –authnVsName explicit-auth-vs
set ssl parameter -defaultProfile ENABLED
add ssl profile swg_profile -sslInterception ENABLED
bind ssl profile swg_profile -ssliCACertkey ns-swg-ca-certkey
set ssl vserver explicitswg -sslProfile swg_profile
add ssl policy ssli-pol_ssli -rule true -action INTERCEPT
bind ssl vserver explicitswg -policyName ssli-pol_ssli -priority 100 -type INTERCEPT_REQ
<!--NeedCopy-->
ICAP構成の例:
add service icap_svc 203.0.113.225 TCP 1344
enable ns feature contentinspection
add icapprofile icapprofile1 -uri /example.com -Mode RESMOD
add contentInspection action CiRemoteAction -type ICAP -serverName icap_svc -icapProfileName icapprofile1
add contentInspection policy CiPolicy -rule "HTTP.REQ.METHOD.NE(\"CONNECT\")" -action CiRemoteAction
bind cs vserver explicitswg -policyName CiPolicy -priority 200 -type response
<!--NeedCopy-->
SNIPアドレスとDNSネームサーバーの構成
-
WebブラウザーでNSIPアドレスを入力します。例:
http://192.0.2.5。 -
ユーザー名とパスワードに管理者資格情報を入力します。次の画面が表示されます。次の画面が表示されない場合は、プロキシ設定のセクションに進んでください。

-
サブネットIPアドレスセクション内をクリックし、IPアドレスを入力します。

-
完了をクリックします。
-
ホスト名、DNS IPアドレス、およびタイムゾーンセクション内をクリックし、これらのフィールドの値を入力します。

-
完了をクリックし、次に続行をクリックします。
プロキシ設定の構成
-
Secure Web Gateway > Secure Web Gateway Wizardに移動します。
-
開始をクリックし、次に続行をクリックします。
-
プロキシ設定ダイアログボックスで、明示的なプロキシサーバーの名前を入力します。
-
キャプチャモードで、明示的を選択します。
-
IPアドレスとポート番号を入力します。

-
続行をクリックします。
SSLインターセプト設定の構成
-
SSLインターセプトを有効にするを選択します。

-
SSLプロファイルで、既存のプロファイルを選択するか、「+」をクリックして新しいフロントエンドSSLプロファイルを追加します。このプロファイルでSSLセッションインターセプトを有効にします。既存のプロファイルを選択した場合は、次の手順をスキップします。

-
OKをクリックし、次に完了をクリックします。
-
SSLインターセプトCA証明書とキーのペアの選択で、既存の証明書を選択するか、「+」をクリックしてSSLインターセプト用のCA証明書とキーのペアをインストールします。既存の証明書を選択した場合は、次の手順をスキップします。

-
インストールをクリックし、次に閉じるをクリックします。
-
すべてのトラフィックを傍受するポリシーを追加します。バインドをクリックします。新しいポリシーを追加するには追加をクリックするか、既存のポリシーを選択します。既存のポリシーを選択した場合は、挿入をクリックし、次の3つの手順をスキップします。

-
ポリシーの名前を入力し、詳細設定を選択します。式エディターで「true」と入力します。
-
アクションで、インターセプトを選択します。

-
作成をクリックします。
-
続行を4回クリックし、次に完了をクリックします。
ICAP設定の構成
-
負荷分散 > サービスに移動し、追加をクリックします。

-
名前とIPアドレスを入力します。プロトコルでTCPを選択します。ポートに1344と入力します。OKをクリックします。

-
Secure Web Gateway > プロキシ仮想サーバーに移動します。プロキシ仮想サーバーを追加するか、仮想サーバーを選択して編集をクリックします。詳細を入力したら、OKをクリックします。

もう一度OKをクリックします。

-
詳細設定で、ポリシーをクリックします。

-
ポリシーの選択で、コンテンツ検査を選択します。続行をクリックします。

-
ポリシーの選択で、「+」記号をクリックしてポリシーを追加します。

-
ポリシーの名前を入力します。アクションで、「+」記号をクリックしてアクションを追加します。

-
アクションの名前を入力します。サーバー名に、以前に作成したTCPサービスの名前を入力します。ICAPプロファイルで、「+」記号をクリックしてICAPプロファイルを追加します。

-
プロファイル名、URIを入力します。モードでREQMODを選択します。

-
作成をクリックします。

-
ICAPアクションの作成ページで、作成をクリックします。

-
ICAPポリシーの作成ページで、式エディターに「true」と入力します。次に、作成をクリックします。

-
バインドをクリックします。

-
コンテンツ検査機能を有効にするよう求められたら、はいを選択します。

-
完了をクリックします。

Citrix SWGアプライアンスとICAPサーバー間のRESPMODにおけるICAPトランザクションの例
Citrix SWGアプライアンスからICAPサーバーへの要求:
RESPMOD icap://10.106.137.15:1344/resp ICAP/1.0
Host: 10.106.137.15
Connection: Keep-Alive
Encapsulated: res-hdr=0, res-body=282
HTTP/1.1 200 OK
Date: Fri, 01 Dec 2017 11:55:18 GMT
Server: Apache/2.2.21 (Fedora)
Last-Modified: Fri, 01 Dec 2017 11:16:16 GMT
ETag: "20169-45-55f457f42aee4"
Accept-Ranges: bytes
Content-Length: 69
Keep-Alive: timeout=15, max=100
Content-Type: text/plain; charset=UTF-8
X5O\!P%@AP\[4\\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE\!$H+H\*
<!--NeedCopy-->
ICAPサーバーからCitrix SWGアプライアンスへの応答:
ICAP/1.0 200 OK
Connection: keep-alive
Date: Fri, 01 Dec, 2017 11:40:42 GMT
Encapsulated: res-hdr=0, res-body=224
Server: IWSVA 6.5-SP1\_Build\_Linux\_1080 $Date: 04/09/2015 01:19:26 AM$
ISTag: "9.8-13.815.00-3.100.1027-1.0"
X-Virus-ID: Eicar\_test\_file
X-Infection-Found: Type=0; Resolution=2; Threat=Eicar\_test\_file;
HTTP/1.1 403 Forbidden
Date: Fri, 01 Dec, 2017 11:40:42 GMT
Cache-Control: no-cache
Content-Type: text/html; charset=UTF-8
Server: IWSVA 6.5-SP1\_Build\_Linux\_1080 $Date: 04/09/2015 01:19:26 AM$
Content-Length: 5688
\<html\>\<head\>\<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"/\>
…
…
\</body\>\</html\>
<!--NeedCopy-->