Cas d’utilisation : sécuriser le réseau d’entreprise à l’aide d’ICAP pour l’inspection à distance des logiciels malveillants

L’appliance Citrix Secure Web Gateway (SWG) agit comme un proxy et intercepte tout le trafic client. L’appliance utilise des stratégies pour évaluer le trafic et transmet les demandes client au serveur d’origine sur lequel réside la ressource. L’appliance décrypte la réponse du serveur d’origine et transmet le contenu en texte brut au serveur ICAP pour une vérification anti-programme malveillant. Le serveur ICAP répond par un message indiquant « Aucune adaptation requise », une erreur ou une demande modifiée. Selon la réponse du serveur ICAP, le contenu demandé est soit transféré au client, soit un message approprié est envoyé.

Pour ce cas d’utilisation, vous devez effectuer une configuration générale, une configuration liée à l’interception par proxy et SSL et une configuration ICAP sur l’appliance Citrix SWG.

Configuration générale

Configurez les entités suivantes :

  • Adresse NSIP
  • Adresse IP du sous-réseau (SNIP)
  • Serveur de noms DNS
  • Paire de clé de certificat CA pour signer le certificat du serveur pour l’interception SSL

Configuration du serveur proxy et de l’interception SSL

Configurez les entités suivantes :

  • Serveur proxy en mode explicite pour intercepter tout le trafic HTTP et HTTPS sortant.
  • Profil SSL pour définir les paramètres SSL, tels que les chiffrements et les paramètres, pour les connexions.
  • Stratégie SSL pour définir des règles d’interception du trafic. Définissez la valeur true pour intercepter toutes les demandes client.

Pour plus de détails, consultez les rubriques suivantes :

Dans l’exemple de configuration suivant, le service de détection de logiciels malveillants réside àwww.example.com.

Exemple de configuration générale :

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

Exemple de configuration de serveur proxy et d’interception 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

Exemple de configuration 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

Configurer l’adresse SNIP et le serveur de noms DNS

  1. Dans un navigateur Web, tapez l’adresse NSIP. Par exemple, http://192.0.2.5.

  2. Dans Nom d’utilisateur et mot de passe, tapez les informations d’identification de l’administrateur. L’écran suivant s’affiche. Si l’écran suivant n’apparaît pas, passez à la section Paramètres du proxy.

    image localisée

  3. Cliquez dans la section Adresse IP du sous-réseau, puis entrez une adresse IP.

    image localisée

  4. Cliquez sur Terminé.

  5. Cliquez dans la section Nom d’hôte, Adresse IP DNS et Fuseau horaire, puis entrez des valeurs pour ces champs.

    image localisée

  6. Cliquez sur Terminé, puis sur Continuer.

Configurer les paramètres proxy

  1. Accédez à Secure Web Gateway > Assistant Passerelle Web sécurisée.

  2. Cliquez sur Démarrer, puis sur Continuer.

  3. Dans la boîte de dialogue Paramètres proxy, entrez un nom pour le serveur proxy explicite.

  4. Dans Mode Capture, sélectionnez Explicite.

  5. Entrez une adresse IP et un numéro de port.

    image localisée

  6. Cliquez sur Continuer.

Configurer les paramètres d’interception SSL

  1. Sélectionnez Activer l’interception SSL.

    image localisée

  2. Dans Profil SSL, sélectionnez un profil existant ou cliquez sur « + » pour ajouter un profil SSL frontal. Activez l’interception des sessions SSL dans ce profil. Si vous sélectionnez un profil existant, ignorez l’étape suivante.

    image localisée

  3. Cliquez sur OK, puis sur Terminé.

  4. Dans Sélectionner une paire de clés de certificat d’autorité de certification d’interception SSL, sélectionnez un certificat existant ou cliquez sur « + » pour installer une paire de clés de certificat d’autorité de certification pour l’interception SSL. Si vous sélectionnez un certificat existant, ignorez l’étape suivante.

    image localisée

  5. Cliquez sur Installer, puis sur Fermer.

  6. Ajoutez une stratégie pour intercepter tout le trafic. Cliquez sur Bind. Cliquez sur Ajouter pour ajouter une nouvelle stratégie ou sélectionnez une stratégie existante. Si vous sélectionnez une stratégie existante, cliquez sur Inséreret ignorez les trois étapes suivantes.

    image localisée

  7. Entrez un nom pour la stratégie et sélectionnez Avancé. Dans l’éditeur d’expressions, entrez true.

  8. Pour Action, sélectionnez INTERCEPT.

    image localisée

  9. Cliquez sur Créer.

  10. Cliquez sur Continuer quatre fois, puis cliquez sur Terminé.

Configurer les paramètres ICAP

  1. Accédez à Équilibrage de charge > Services, puis cliquez sur Ajouter.

    image localisée

  2. Tapez un nom et une adresse IP. Dans Protocole, sélectionnez TCP. Dans Port, tapez 1344. Cliquez sur OK.

    image localisée

  3. Accédez à Secure Web Gateway > Serveurs virtuels proxy. Ajoutez un serveur virtuel proxy ou sélectionnez un serveur virtuel et cliquez sur Modifier. Après avoir saisi les détails, cliquez sur OK.

    image localisée

    Cliquez à nouveau sur OK.

    image localisée

  4. Dans Paramètres avancés, cliquez sur Stratégies.

    image localisée

  5. Dans Choisir une stratégie, sélectionnez Inspection du contenu. Cliquez sur Continuer.

    image localisée

  6. Dans Sélectionner une stratégie, cliquez sur le signe « + » pour ajouter une stratégie.

    image localisée

  7. Entrez un nom pour la stratégie. Dans Action, cliquez sur le signe « + » pour ajouter une action.

    image localisée

  8. Tapez un nom pour l’action. Dans Nom du serveur, tapez le nom du service TCP créé précédemment. Dans Profil ICAP, cliquez sur le signe « + » pour ajouter un profil ICAP.

    image localisée

  9. Tapez un nom de profil, URI. En Mode, sélectionnez REQMOD.

    image localisée

  10. Cliquez sur Créer.

    image localisée

  11. Dans la page Créer une action ICAP, cliquez sur Créer.

    image localisée

  12. Dans la page Créer une stratégie ICAP, entrez true dans l’ éditeur d’expressions. Cliquez ensuite sur Créer.

    image localisée

  13. Cliquez sur Bind.

    image localisée

  14. Si vous êtes invité à activer la fonction d’inspection du contenu, sélectionnez Oui.

    image localisée

  15. Cliquez sur Terminé.

    image localisée

Exemple de transactions ICAP entre le dispositif Citrix SWG et le serveur ICAP dans RESPMOD

Demande de l’appliance Citrix SWG vers le serveur 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*

Réponse du serveur ICAP à l’appliance 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>