Configuration SSL Bumping dans le service Squid

Il est recommandé de configurer SSL Bumping dans le service Squid pour le traitement des connexions chiffrées. Si SSL Bumping n'est pas configuré, le serveur proxy ne peut pas interférer avec le processus de configuration d'une connexion chiffrée. Dans ce cas, les modules de protection Kaspersky Web Traffic Security (Antivirus et Antiphishing) ne peuvent pas analyser les données transmises à l'intérieur du canal de communication chiffré. Cela réduit le niveau de protection de l'infrastructure informatique de l'organisation.

SSL Bumping nécessite un certificat SSL et une clé privée au format PEM pour fonctionner. Vous pouvez créer un nouveau certificat SSL auto-signé ou utiliser un certificat prêt à l'emploi (par exemple, un certificat SSL émis par le centre de certification de l'organisation).

Si la clé privée est protégée par mot de passe, elle doit d'abord être déchiffrée.

Pour configurer SSL Bumping dans le service Squid, procédez comme suit :

  1. Assurez-vous que le service Squid utilisé prend en charge les options nécessaires. Pour ce faire, saisissez la commande :

    squid -v

    Le paramètre configure options doit contenir les valeurs --enable-ssl-crtd et --with-openssl.

  2. Copiez le certificat SSL au format PEM dans le fichier /etc/squid/bump.crt.
  3. Copiez la clé privée au format PEM dans le fichier /etc/squid/bump.key.
  4. Générez un fichier de paramètres pour l'algorithme Diffie-Hellman. Pour ce faire, saisissez la commande :

    openssl dhparam -outform PEM -out /etc/squid/bump_dhparam.pem 2048

  5. Configurez les droits d'utilisation du fichier du certificat SSL. Pour ce faire, exécutez les commandes suivantes en fonction du système d'exploitation utilisé :
    • CentOS, Red Hat Enterprise Linux ou SUSE Linux Enterprise Server :

      chown squid:squid /etc/squid/bump*

      chmod 400 /etc/squid/bump*

    • Ubuntu ou Debian :

      chown proxy:proxy /etc/squid/bump*

      chmod 400 /etc/squid/bump*

  6. Déterminez la version du service Squid utilisée sur votre serveur. Pour ce faire, saisissez la commande :

    squid -v

    Les informations sur la version utilisée seront affichées au format Squid Cache: Version <version>.

  7. Arrêtez le service Squid s'il est en cours d'exécution. Pour ce faire, saisissez la commande :

    service squid stop

  8. Si vous utilisez la version 3.5.x du service Squid, procédez comme suit :
    1. Créez un répertoire pour la base de données de certificats et initialisez la base de données. Pour ce faire, exécutez les commandes suivantes en fonction du système d'exploitation utilisé :
      • CentOS ou Red Hat Enterprise Linux :

        mkdir -p /var/lib/squid

        rm -rf /var/lib/squid/ssl_db

        /usr/lib64/squid/ssl_crtd -c -s /var/lib/squid/ssl_db

        chown -R squid:squid /var/lib/squid

      • SUSE Linux Enterprise Server :

        mkdir -p /var/lib/squid

        rm -rf /var/lib/squid/ssl_db

        /usr/sbin/ssl_crtd -c -s /var/lib/squid/ssl_db

        chown -R squid:squid /var/lib/squid

      • Ubuntu ou Debian :

        mkdir -p /var/lib/squid

        rm -rf /var/lib/squid/ssl_db

        /usr/lib/squid/ssl_crtd -c -s /var/lib/squid/ssl_db

        chown -R proxy:proxy:<groupe> /var/lib/squid

    2. Dans le fichier de configuration /etc/squid/squid.conf, apportez les modifications suivantes :
      1. À la fin du fichier, ajoutez les directives suivantes, selon votre système d'exploitation :
        • CentOS ou Red Hat Enterprise Linux :

        sslcrtd_program /usr/lib64/squid/ssl_crtd -s /var/lib/squid/ssl_db -M 20MB

        sslproxy_cert_error allow all

        ssl_bump stare all

        • SUSE Linux Enterprise Server :

        sslcrtd_program /usr/sbin/ssl_crtd -s /var/lib/squid/ssl_db -M 20MB

        sslproxy_cert_error allow all

        ssl_bump stare all

        • Ubuntu ou Debian :

        sslcrtd_program /usr/lib/squid/ssl_crtd -s /var/lib/squid/ssl_db -M 20MB

        sslproxy_cert_error allow all

        ssl_bump stare all

      2. Remplacez la directive http_port par ce qui suit :

        http_port 3128 tcpkeepalive=60,30,3 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=20MB cert=/etc/squid/bump.crt key=/etc/squid/bump.key cipher=HIGH:MEDIUM:!LOW:!RC4:!SEED:!IDEA:!3DES:!MD5:!EXP:!PSK:!DSS options=NO_TLSv1,NO_SSLv3,NO_SSLv2,SINGLE_DH_USE,SINGLE_ECDH_USE tls-dh=prime256v1:/etc/squid/bump_dhparam.pem

  9. Si vous utilisez la version 4.x du service Squid, procédez comme suit :
    1. Créez un répertoire pour la base de données de certificats et initialisez la base de données. Pour ce faire, exécutez les commandes suivantes en fonction du système d'exploitation utilisé :
      • CentOS ou Red Hat Enterprise Linux :

        mkdir -p /var/lib/squid

        rm -rf /var/lib/squid/ssl_db

        /usr/lib64/squid/security_file_certgen -c -s /var/lib/squid/ssl_db -M 20MB

        chown -R squid:squid /var/lib/squid

      • SUSE Linux Enterprise Server :

        mkdir -p /var/lib/squid

        rm -rf /var/lib/squid/ssl_db

        /usr/sbin/security_file_certgen -c -s /var/lib/squid/ssl_db -M 20MB

        chown -R squid:squid /var/lib/squid

      • Ubuntu ou Debian :

        mkdir -p /var/lib/squid

        rm -rf /var/lib/squid/ssl_db

        /usr/lib/squid/security_file_certgen -c -s /var/lib/squid/ssl_db -M 20MB

        chown -R proxy:proxy /var/lib/squid

    2. Dans le fichier de configuration /etc/squid/squid.conf, apportez les modifications suivantes :
      1. Ajoutez les directives suivantes au début du fichier ou avant la première directive http_access :

        acl intermediate_fetching transaction_initiator certificate-fetching

        http_access allow intermediate_fetching

      2. Ajoutez les directives suivantes à la fin du fichier, selon votre système d'exploitation :
        • CentOS ou Red Hat Enterprise Linux :

        sslcrtd_program /usr/lib64/squid/security_file_certgen -s /var/lib/squid/ssl_db -M 20MB

        sslproxy_cert_error allow all

        ssl_bump stare all

        • SUSE Linux Enterprise Server :

        sslcrtd_program /usr/sbin/security_file_certgen -s /var/lib/squid/ssl_db -M 20MB

        sslproxy_cert_error allow all

        ssl_bump stare all

        • Ubuntu ou Debian :

        sslcrtd_program /usr/lib/squid/security_file_certgen -s /var/lib/squid/ssl_db -M 20MB

        sslproxy_cert_error allow all

        ssl_bump stare all

      3. Remplacez la directive http_port par ce qui suit :

        http_port 3128 tcpkeepalive=60,30,3 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=20MB tls-cert=/etc/squid/bump.crt tls-key=/etc/squid/bump.key cipher=HIGH:MEDIUM:!LOW:!RC4:!SEED:!IDEA:!3DES:!MD5:!EXP:!PSK:!DSS options=NO_TLSv1,NO_SSLv3,SINGLE_DH_USE,SINGLE_ECDH_USE tls-dh=prime256v1:/etc/squid/bump_dhparam.pem

  10. Relancez le service Squid. Pour ce faire, saisissez la commande :

    service squid restart

La configuration SSL Bumping dans le service Squid se termine.

Haut de page