Configuration SSL Bumping dans le service Squid

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. Accédez au répertoire du service Squid. Pour ce faire, saisissez la commande :

    cd /etc/squid

  3. Créez le certificat SSL auto-signé. Pour ce faire, saisissez la commande :

    openssl req -new -newkey rsa:2048 -days <nombre de jours de validité du certificat> -nodes -x509 -keyout squidCA.pem -out squidCA.pem

    L'invite de saisie d'informations dans les champs du certificat SSL auto-signé s'affiche.

  4. Remplissez les champs du certification SSL auto-signé.
  5. Créez le certificat de confiance pour l'importation dans le navigateur. Pour ce faire, saisissez la commande :

    openssl x509 -in squidCA.pem -outform DER -out squid.der

  6. Importez le fichier squid.der dans les navigateurs des utilisateurs des ordinateurs locaux.

    Le mode d'importation du fichier squid.der dans le navigateur dépend du type du navigateur.

  7. Configurez les droits d'utilisation du fichier du certificat auto-signé. 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 squidCA.pem

      chmod 400 squidCA.pem

    • Ubuntu ou Debian :

      chown proxy:proxy squidCA.pem

      chmod 400 squidCA.pem

  8. Créez le répertoire pour les futurs certificats. 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

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

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

    • Ubuntu :

      mkdir -p /var/lib/squid

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

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

    • SUSE Linux Enterprise Server :

      mkdir -p /var/lib/squid

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

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

    • Dans le système d'exploitation Debian, le service Squid ne ne prend pas en charge par défaut SSL Bumping. Si le service Squid était compilé avec la prise en charge de SSL Bumping activée, il vous faut créer un répertoire pour les prochains certificats au moyen des commandes suivantes :

      mkdir -p /var/lib/squid

      <Le chemin indiqué à la compilation>/ssl_crtd-c-s/var/lib/squid/ssl_db

      chown-R <l'utilisateur indiqué à la compilation> : <le groupe indiqué à la compilation>/var/lib/squid

  9. Modifiez les paramètres du service Squid. Pour cela, dans le fichier/etc/squid/squid.conf, procédez comme suit :
    1. Remplacez http_port 3128 par http_port 3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=/etc/squid/squidCA.pem.
    2. Ajoutez à la fin du fichier les lignes suivantes :
      • CentOS ou Red Hat Enterprise Linux :

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

        sslcrtd_children 5

        ssl_bump server-first all

        sslproxy_cert_error deny all

      • Ubuntu :

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

        sslcrtd_children 5

        ssl_bump server-first all

        sslproxy_cert_error deny all

      • SUSE Linux Enterprise Server :

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

        sslcrtd_children 5

        ssl_bump server-first all

        sslproxy_cert_error deny all

      • Debian (si le service Squid était compilé avec le support SSL Bumping activé) :

        sslcrtd_program <Le chemin indiqué au moment de la compilation>/ssl_crtd-s/var/lib/squid/ssl_db-M 4MB

        sslcrtd_children 5

        ssl_bump server-first all

        sslproxy_cert_error deny all

    3. Si vous voulez exclure de la vérification les certificats pour les domaines confiés, ajoutez les lignes suivantes :
      • CentOS ou Red Hat Enterprise Linux :

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

        sslcrtd_children 5

        ssl_bump server-first all

        acl BrokenButTrustedServers dstdomain <example.com>

        sslproxy_cert_error allow BrokenButTrustedServers

        sslproxy_cert_error deny all

      • Ubuntu :

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

        sslcrtd_children 5

        ssl_bump server-first all

        acl BrokenButTrustedServers dstdomain <example.com>

        sslproxy_cert_error allow BrokenButTrustedServers

        sslproxy_cert_error deny all

      • SUSE Linux Enterprise Server :

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

        sslcrtd_children 5

        ssl_bump server-first all

        acl BrokenButTrustedServers dstdomain <example.com>

        sslproxy_cert_error allow BrokenButTrustedServers

        sslproxy_cert_error deny all

      • Debian (si le service Squid était compilé avec le support SSL Bumping activé) :

        sslcrtd_program <Le chemin indiqué au moment de la compilation>/ssl_crtd-s/var/lib/squid/ssl_db-M 4MB

        sslcrtd_children 5

        ssl_bump server-first all

        acl BrokenButTrustedServers dstdomain <example.com>

        sslproxy_cert_error allow BrokenButTrustedServers

        sslproxy_cert_error deny all

    4. Si vous voulez désactiver la vérification des certificats pour tous les domaines, ajoutez les lignes suivantes :
      • CentOS ou Red Hat Enterprise Linux :

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

        sslcrtd_children 5

        ssl_bump server-first all

        sslproxy_cert_error allow all

        sslproxy_flags DONT_VERIFY_PEER

      • Ubuntu :

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

        sslcrtd_children 5

        ssl_bump server-first all

        sslproxy_cert_error allow all

        sslproxy_flags DONT_VERIFY_PEER

      • SUSE Linux Enterprise Server :

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

        sslcrtd_children 5

        ssl_bump server-first all

        sslproxy_cert_error allow all

        sslproxy_flags DONT_VERIFY_PEER

      • Debian (si le service Squid était compilé avec le support SSL Bumping activé) :

        sslcrtd_program <le chemin dépend des configurations à la compilation>/ssl_crtd-s/var/lib/squid/ssl_db-M 4MB

        sslcrtd_children 5

        ssl_bump server-first all

        sslproxy_cert_error allow all

        sslproxy_flags DONT_VERIFY_PEER

  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