Squid / SquidGuard / dansguardian : Différence entre versions

De Wiki des Responsables Techniques du 85
Aller à : navigation, rechercher
(Installation de Squid/SquidGuard/DANSguardian)
(Configuration)
Ligne 17 : Ligne 17 :
 
<syntaxhighlight lang="bash">apt-get install samba</syntaxhighlight>
 
<syntaxhighlight lang="bash">apt-get install samba</syntaxhighlight>
  
== Configuration ==
+
= Configuration =
  
Pour une meilleure sécurité il y a deux modes opératoire :
+
Pour une meilleure sécurité il y a deux modes possibles :
  
* Un "multi-patte" deux réseaux distinct ( vlan ) dansguardian ecoute sur un vlan1 ''"qui ne route pas !!!"'' sur le port 8080, valide la recherche suivant les règles et transmet la requête à squid sur l'adresse loopback ( 127.0.0.1 ) qui lui peut sortir sur le vlan2 vers internet.
+
* Serveur Squid en "multi-patte" sur deux réseaux distinct, DANSGuardian écoute sur un des réseaux sur le port 8080, valide la recherche suivant les règles et transmet la requête à Squid sur l'adresse loopback ( 127.0.0.1 ) qui lui peut sortir sur vers internet.
 +
* Un seul réseau ou plusieurs avec routage, même topo dansguardian écoute sur le port 8080 transmet a squid en loopback qui lui est le seul à pouvoir passer le firewall pour l’accès à internet.
 +
 
 +
== Fichier de configuration Squid ==
 +
 
 +
Voici un exemple de fichier de configuration Squid
 +
 
 +
<syntaxhighlight lang="bash">
 +
dns_v4_first on
 +
visible_hostname squid
 +
 
 +
error_directory /usr/share/squid/errors/French
 +
 
 +
cache_dir ufs /data/squid/spool 5000 16 256
 +
cache_mem 256 MB
 +
coredump_dir /data/squid/spool
 +
cache_store_log none
 +
 
 +
auth_param ntlm program /usr/bin/ntlm_auth —helper-protocol=squid-2.5-ntlmssp
 +
auth_param ntlm children 5
 +
auth_param ntlm keep_alive off
 +
#auth_param ntlm realm ETAB
 +
 
 +
acl sitebypass dstdomain "/var/lib/squidguard/db/exception/bypassite/bypassite.url"
 +
acl tor dst "/etc/squid/tor"
 +
 
 +
acl administrationzone src 172.21.0.0/16
 +
acl srvzone src 172.20.0.0/16
 +
acl ntlm proxy_auth REQUIRED
 +
acl url_exe url_regex -i \.[Mm][Ss][Ii]$ \.[Dd][Ll][Ll]$
 +
 
 +
 
 +
acl SSL_ports port 443
 +
acl Safe_ports port 80    # http
 +
acl Safe_ports port 21    # ftp
 +
acl Safe_ports port 443    # https
 +
acl Safe_ports port 70    # gopher
 +
acl Safe_ports port 210    # wais
 +
acl Safe_ports port 1025-65535  # unregistered ports
 +
acl Safe_ports port 280    # http-mgmt
 +
acl Safe_ports port 488    # gss-http
 +
acl Safe_ports port 591    # filemaker
 +
acl Safe_ports port 777    # multiling http
 +
acl CONNECT method CONNECT
 +
 
 +
http_access deny tor
 +
http_access deny url_exe
 +
http_access allow administrationzone
 +
http_access allow srvzone
 +
http_access allow ntlm
 +
 
 +
http_access deny !Safe_ports
 +
 
 +
http_access deny CONNECT !SSL_ports
 +
 
 +
http_access allow localhost manager
 +
http_access deny manager
 +
 
 +
http_access allow localhost
 +
 
 +
http_access deny all
 +
http_port 8080
 +
 
 +
url_rewrite_program /usr/bin/squidGuard -P -c /etc/squidguard/squidGuard.conf
 +
url_rewrite_children 5
  
* Un seul réseau ou plusieurs avec routage, même topo dansguardian écoute sur le port 8080 transmet a squid en loopback qui lui est le seul à pouvoir passer le firewall pour l’accès à internet.
 
  
 +
coredump_dir /var/spool/squid
 +
refresh_pattern ^gopher:  1440  0%  1440
 +
refresh_pattern -i (/cgi-bin/|\?) 0  0%  0
 +
refresh_pattern (Release|Packages(.gz)*)$      0      20%    2880
 +
refresh_pattern .    0  20%  4320
 +
</syntaxhighlight>
  
 
== Bloquer le réseaux TOR ==
 
== Bloquer le réseaux TOR ==

Version du 29 juin 2016 à 13:55

Squid2.gif

Présentation

  • Squid est un logiciel serveur permettant de faire passerelle et cache mémoire des connexions Internet
  • SquidGuard est un autre logiciel qui couplé a Squid permet de faire du filtrage des connexions Internet
  • dansguardian a le même rôle que SquidGuard

Installation de Squid/SquidGuard/DANSguardian

Installer Squid avec votre gestionnaire de paquet

apt-get install squid

Installer Samba

apt-get install samba

Configuration

Pour une meilleure sécurité il y a deux modes possibles :

  • Serveur Squid en "multi-patte" sur deux réseaux distinct, DANSGuardian écoute sur un des réseaux sur le port 8080, valide la recherche suivant les règles et transmet la requête à Squid sur l'adresse loopback ( 127.0.0.1 ) qui lui peut sortir sur vers internet.
  • Un seul réseau ou plusieurs avec routage, même topo dansguardian écoute sur le port 8080 transmet a squid en loopback qui lui est le seul à pouvoir passer le firewall pour l’accès à internet.

Fichier de configuration Squid

Voici un exemple de fichier de configuration Squid

dns_v4_first on
visible_hostname squid

error_directory /usr/share/squid/errors/French

cache_dir ufs /data/squid/spool 5000 16 256
cache_mem 256 MB
coredump_dir /data/squid/spool
cache_store_log none

auth_param ntlm program /usr/bin/ntlm_auth —helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 5
auth_param ntlm keep_alive off
#auth_param ntlm realm ETAB

acl sitebypass dstdomain "/var/lib/squidguard/db/exception/bypassite/bypassite.url"
acl tor dst "/etc/squid/tor"

acl administrationzone src 172.21.0.0/16
acl srvzone src 172.20.0.0/16
acl ntlm proxy_auth REQUIRED
acl url_exe url_regex -i \.[Mm][Ss][Ii]$ \.[Dd][Ll][Ll]$


acl SSL_ports port 443
acl Safe_ports port 80    # http
acl Safe_ports port 21    # ftp
acl Safe_ports port 443    # https
acl Safe_ports port 70    # gopher
acl Safe_ports port 210    # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280    # http-mgmt
acl Safe_ports port 488    # gss-http
acl Safe_ports port 591    # filemaker
acl Safe_ports port 777    # multiling http
acl CONNECT method CONNECT

http_access deny tor
http_access deny url_exe
http_access allow administrationzone
http_access allow srvzone
http_access allow ntlm

http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports

http_access allow localhost manager
http_access deny manager

http_access allow localhost

http_access deny all
http_port 8080

url_rewrite_program /usr/bin/squidGuard -P -c /etc/squidguard/squidGuard.conf
url_rewrite_children 5


coredump_dir /var/spool/squid
refresh_pattern ^gopher:  1440  0%  1440
refresh_pattern -i (/cgi-bin/|\?) 0  0%  0
refresh_pattern (Release|Packages(.gz)*)$      0       20%     2880
refresh_pattern .    0  20%  4320

Bloquer le réseaux TOR

Bloquer les blocs d'IP TOR connues

On peut essayer de bloquer le réseau TOR sur son réseau avec squid3.

Le premier essai est concluant:

  • 1 - On récupère la liste des ip tor via ce lien :
 https://www.dan.me.uk/torlist/
  • 2 - On les stock dans un fichier
/etc/squid3/iptor
  • 3 - On créer notre acl dans :
/etc/squid3/squid.conf:
  • 4 - et on ajoute l'acl avec le http_acces qui va avec :
acl tor dst "/etc/squid3/torlist"
http_access deny tor

Très efficace, par contre TOR essaiera de passer par des port de votre firewall , il faut donc tout bloquer correctement et ne laisser sortir que le serveur proxy sur internet :

proxysortie

Bloquer le surf ip

Cela signifie que l'utilisateur ne pourra pas surfer en tapant directement d'adresse ip : http://92.222.29.147 par exemple

Attention cela peut entraîner d'autre soucis

Configuration SquidGuard

Sous squidguard il vous suffit il vous suffit de rajouter !in-addr a votre acl, comme ceci : Dans le fichier :

   
   /etc/squidguard/squidguard.conf

    profs {
                pass !in-addr !autresitebloquer all
                redirect http://172.21.254.254/cgi-bin/squidGuard.cgi?clientaddr=%a+clientname=%n+clientident=%i+srcclass=%s+targetclass=%t+url=%u
    }


Configuration DansGuardian

Dans le fichier :

   /etc/dansguardian/lists/bannedsitelist


Dé-commenter les ligne comme ceci:

   #Blanket IP Block.  To block all sites specified only as an IP,
   #remove the # from the next line to leave only a '*ip':
   *ip

   #Blanket SSL/CONNECT IP Block.  To block all SSL and CONNECT
   #tunnels to sites specified only as an IP,
   #remove the # from the next line to leave only a '*ips':
   *ips


Pour bloquer la liste des ip du réseau tor (comme expliquer plus haut) vous pouvez également la faire avec dansguardian a ajoutant comme ceci toujours dans le fichier :

   /etc/dansguardian/lists/bannedsitelist

    # Bloc IP TOR
   .Include</etc/squid3/torlist>