Ecco una guida su come usare il server proxy/cache in modalità trasparente con controllo di clamav e dansguardian.
Articolo rilasciato sotto licenza GNU FDL 1.3.
Le interfacce di rete usate sono eth0 come interfaccia per la rete esterna. In questo caso ha IP statico (10.0.2.15) ma può avere anche IP dinamico. La rete tra le macchine che devono essere dietro il proxy è eth1 e ha indirizzo IP statico (192.168.56.10). Se qualcuno ha confidenza con virtualbox si accorgerà che quisti sono i suoi tipici IP.
Per la guida userò debian ma qualunque distro andrà bene, basta cambiare il gestore di pacchetti.
Installiamo squid, clamav e dansguardian.
apt-get install squid clamav clamav-daemon clamav-freshclam dansguardian
Per prima cosa configuriamo squid.
Il file di configurazione l’ho preso da FaberLibertatis.org.
Spostiamo il file di configurazione originale con mv /etc/squid/squid.conf /etc/squid/squid.conf.default
e ora facciamone uno noi salvandolo su /etc/squid/squid.conf
# File: squid.conf # Autore originale Stefano Sasso (ste A dscnet PUNTO org) # File preso da http://faberlibertatis.org/wiki/Squid_Mini_HOWTO # TAG: http_port : la posta in cui squid resta in ascolto http_port 192.168.56.10:3128 transparent # Cambiare col vostro IP # TAG: visible_hostname : il nome host che verrà visto visible_hostname proxy.miodominio.com # TAG: cache_mgr : l'email dell'amministratore della cache cache_mgr root@miodominio.com # ACL: access control list : non deve tenere in cache le pagine dinamiche acl CGI urlpath_regex cgi-bin ? acl ASP urlpath_regex asp ? acl PHP urlpath_regex php ? acl JSP urlpath_regex jsp ? no_cache deny CGI ASP PHP JSP # TAG: cache_mem : la ram utilizzata dalla cache; per avere prestazioni ottimali # dovrebbe essere 1/4 della ram del sistema cache_mem 128 MB # TAG: cache_dir : la directory dove deve venir memorizzata la cache # il primo numero si riferisce alla dimensione della cache in Mb cache_dir ufs /var/spool/squid 500 16 256 # TAG: cache_access_log : il file di log per gli accessi cache_access_log /var/log/squid/access.log # TAG: cache_log : i log della cache cache_log /var/log/squid/cache.log # TAG: cache_store_log : i log di storage cache_store_log /var/log/squid/store.log # TAG: emulate_httpd_log : scrive i log in una forma più leggibile emulate_httpd_log on # TAG: mime_table : il file di configurazione per i tipi MIME mime_table /usr/share/squid/mime.conf # TAG: dns_nameservers : i/il nostro/i DNS dns_nameservers 127.0.0.1 192.168.0.14 192.168.0.196 # ACL generali acl all src 0.0.0.0/0.0.0.0 acl manager proto cache_object acl localhost src 127.0.0.0/255.255.255.0 acl SSL_ports port 443 563 acl Safe_ports 80 81 21 443 563 70 210 1025-65535 acl CONNECT method CONNECT # ACL per l'accesso alla cache dalla/e nostra/e rete/i acl mynet1 src 192.168.0.0/255.255.255.0 # Cambiatela con la vostra rete/netmask #acl mynet2 src 10.0.0.0/255.0.0.0 #Eventuali altre reti #acl mynet3 src 192.168.10.0/255.255.255.0 # Le regole per l'accesso alla cache e a internet http_access allow localhost http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access allow mynet1 #http_access allow mynet2 #http_access allow mynet3 # Ora neghiamo tutto ciò che non è concesso esplicitamente http_access deny all icp_access allow localhost icp_access allow mynet1 #icp_access allow mynet2 #icp_access allow mynet3 icp_access deny all miss_access allow localhost miss_access allow mynet1 #miss_access allow mynet2 #miss_access allow mynet3 miss_access deny all # squid.conf END
ClamAV è già a posto, invece dansguardian ha bisogno di quattro modifiche. … [Leggi il resto]