3 581
contributi
m (compatibilità riservata a Jessie - guida passo-passo) |
|||
(13 versioni intermedie di 3 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|ONLY|Jessie}} | |||
== Introduzione == | == Introduzione == | ||
In diversi contesti di rete, si pensi ad esempio ad una rete LAN aziendale o ai laboratori informatici di scuole medie inferiori, può essere importante implementare un sistema il più possibile automatico per il controllo e il filtraggio di alcuni contenuti web considerati dall'amministratore inappropriati al contesto. Si considerino a titolo di esempio le seguenti necessità: | In diversi contesti di rete, si pensi ad esempio ad una rete LAN aziendale o ai laboratori informatici di scuole medie inferiori, può essere importante implementare un sistema il più possibile automatico per il controllo e il filtraggio di alcuni contenuti web considerati dall'amministratore inappropriati al contesto. Si considerino a titolo di esempio le seguenti necessità: | ||
Riga 30: | Riga 31: | ||
Nel resto della guida supporremo che le due schede di rete siano così configurate: | Nel resto della guida supporremo che le due schede di rete siano così configurate: | ||
<pre> | <pre> | ||
# | # ETH0 - Connessa a LAN | ||
allow-hotplug eth0 | allow-hotplug eth0 | ||
iface eth0 inet static | iface eth0 inet static | ||
Riga 39: | Riga 40: | ||
dns-nameservers 8.8.4.4 8.8.8.8 | dns-nameservers 8.8.4.4 8.8.8.8 | ||
# | # ETH1 - Connessa a INTERNET | ||
allow-hotplug eth1 | allow-hotplug eth1 | ||
iface eth1 inet dhcp | iface eth1 inet dhcp | ||
Riga 159: | Riga 160: | ||
con contenuto: | con contenuto: | ||
<pre> | <pre> | ||
Abilito la modalità trasparente | |||
http_port 3128 transparent | http_port 3128 transparent | ||
# | # Definisco le LAN locali | ||
acl localnet1 src 192.168.1.0/24 | |||
acl localnet2 src 192.168.2.0/24 | |||
acl localnet3 src 10.59.0.0/16 | |||
acl localhost src 127.0.0.1/255.255.255.255 | acl localhost src 127.0.0.1/255.255.255.255 | ||
acl CONNECT method CONNECT | acl CONNECT method CONNECT | ||
# | # Abilito alla navigazione le LAN locali | ||
http_access allow localnet1 | |||
http_access allow localnet2 | |||
http_access allow localnet3 | |||
http_access allow localhost | |||
always_direct allow all | |||
# | # Se si modifica la linea seguente occorre lanciare: | ||
# squid3 -f /etc/squid3/squid.conf -z | |||
# per ricostruire la cache | |||
cache_dir aufs /var/spool/squid3 50000 16 256 | |||
# | # I Log | ||
#cache_mgr info@miodominio.org | |||
#cache_access_log /var/log/squid3/access.log common | |||
#cache_log /var/log/squid3/cache.log | |||
#cache_store_log /var/log/squid3/store.log | |||
#cache_swap_log /var/log/squid3/cache_swap.log | |||
# | # Direttive per navigazione anonima | ||
#request_header_access Referer deny all | |||
#request_header_access X-Forwarded-For deny all | |||
#request_header_access Via deny all | |||
#request_header_access Cache-Control deny all | |||
# Imposto | # Imposto il nome del Proxy | ||
visible_hostname firewall | visible_hostname firewall | ||
forwarded_for off | |||
</pre> | |||
Il proxy così configurato non fa altro che controllare le classi degli indirizzi autorizzati alla navigazione, ma a noi serve qualcosa in più... Prima di configurare un primo filtro, però, decommentiamo la riga per attivare il proxy trasparente nel nostro script <code>firebox.sh</code>: | |||
<pre> | |||
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 | |||
</pre> | </pre> | ||
Il proxy | Riavviamo il nostro script e prepariamoci a verificarne il funzionamento. Se da un client della rete proviamo a navigare su internet, agendo sulla console del nostro gateway dovremmo vederne i log: | ||
<pre> | |||
# tail -f /var/log/squid3/access.log | |||
1104854410.086 159 192.168.10.50 TCP_MISS/302 469 GET \ | |||
http://www.google.com/ - DIRECT/216.239.59.104 text/html | |||
1104854410.217 128 192.168.10.50 TCP_MISS/200 1459 GET \ | |||
http://www.google.it/ - DIRECT/216.239.59.99 text/html | |||
1104854410.397 180 192.168.10.50 TCP_MISS/200 9022 GET \ | |||
http://www.google.it/intl/it/images/logo.gif - DIRECT/216.239.59.99 image/gif | |||
1104854415.196 200 192.168.10.50 TCP_MISS/200 1459 GET \ | |||
http://www.google.it/ - DIRECT/216.239.59.99 text/html | |||
1104854415.271 74 192.168.10.50 TCP_REFRESH_HIT/304 235 GET \ | |||
http://www.google.it/intl/it/images/logo.gif - DIRECT/216.239.59.99 text/html | |||
</pre> | |||
Perfetto! Il nostro proxy server è entrato correttamente in funzione. | |||
=== Il filtro SquidGuard === | === Il filtro SquidGuard (OPZIONALE)=== | ||
Cominciamo con installare SquidGuard, un programma che ci permette di filtrare i tipi di siti web autorizzati e di impostare la navigazione in funzione delle fasce orarie stabilite. | Cominciamo con installare SquidGuard, un programma che ci permette di filtrare i tipi di siti web autorizzati e di impostare la navigazione in funzione delle fasce orarie stabilite. | ||
<pre> | <pre> | ||
Riga 234: | Riga 229: | ||
# wget http://www.shallalist.de/Downloads/shallalist.tar.gz | # wget http://www.shallalist.de/Downloads/shallalist.tar.gz | ||
# tar xzf shallalist.tar.gz | # tar xzf shallalist.tar.gz | ||
# chown | # chown proxy:proxy -R /var/lib/squidguard/db/ | ||
# ln -s /etc/squidguard/squidGuard.conf /etc/squid3/squidGuard.conf | # ln -s /etc/squidguard/squidGuard.conf /etc/squid3/squidGuard.conf | ||
# squidGuard -d - | # cd BL | ||
# squidGuard -d -b -C all | |||
</pre> | </pre> | ||
A questo punto possiamo crearci il nostro file di configurazione personalizzato per SquidGuard: | A questo punto possiamo crearci il nostro file di configurazione personalizzato per SquidGuard: | ||
Riga 410: | Riga 406: | ||
Installiamo DansGuardian: | Installiamo DansGuardian: | ||
<pre> | <pre> | ||
# apt-get install dansguardian | # apt-get install dansguardian unrar-free | ||
</pre> | </pre> | ||
Il file principale di configurazione è <code>/etc/dansguardian/dansguardian.conf</code>. Apportiamovi alcune modifiche: | Il file principale di configurazione è <code>/etc/dansguardian/dansguardian.conf</code>. Apportiamovi alcune modifiche: | ||
Riga 489: | Riga 485: | ||
=== Le blacklist === | === Le blacklist === | ||
Per far funzionare al meglio il nostro DansGuardian abbiamo bisogno ancora di una cosa: un insieme di blacklist preconfezionato e diviso in categorie. Il migliore (e anche quello consigliato dagli autori di DansGuardian) è l'elenco scaricabile da URL Blacklist. Si noti che il download non è gratuito e che, prima di sottoscrivere un abbonamento, abbiamo diritto ad un solo download di prova. Purtroppo non sono a conoscenza di altre backlist compatibili con DansGuardian e altrettanto valide. | Per far funzionare al meglio il nostro DansGuardian abbiamo bisogno ancora di una cosa: un insieme di blacklist preconfezionato e diviso in categorie. Il migliore (e anche quello consigliato dagli autori di DansGuardian) è l'elenco scaricabile da URL Blacklist. Si noti che il download non è gratuito e che, prima di sottoscrivere un abbonamento, abbiamo diritto ad un solo download di prova. Purtroppo non sono a conoscenza di altre backlist compatibili con DansGuardian e altrettanto valide. | ||
Se volete utilizzarlo, potete scaricare il file delle blacklists aggiornate dal sito: [http://urlblacklist.com/?sec=download URL Blacklist]: | |||
<pre> | <pre> | ||
# tar -xzf bigblacklist.tar.gz | # tar -xzf bigblacklist.tar.gz | ||
Riga 495: | Riga 491: | ||
# chown -R root:root /etc/dansguardian/lists | # chown -R root:root /etc/dansguardian/lists | ||
</pre> | </pre> | ||
Così facendo abbiamo scompattato il file scaricato dentro la directory <code>/etc/dansguardian/lists</code> | '''In alternativa''' è possibile utilizzare lo stesso file delle blacklist di SquidGuard: | ||
<pre> | |||
# cd /tmp | |||
# wget http://www.shallalist.de/Downloads/shallalist.tar.gz | |||
# tar xzf shallalist.tar.gz | |||
# cd BL | |||
# mv * /etc/dansguardian/lists/blacklists | |||
</pre> | |||
Così facendo abbiamo scompattato il file scaricato dentro la directory <code>/etc/dansguardian/lists/blacklists</code>, contenente tutte le liste, immediatamente utilizzabili. | |||
<br/> | <br/> | ||
Per rendere attive le blacklist scaricate dobbiamo aprire i files bannedsitelist e bannedurllist e decommentare le categorie di siti che intendiamo filtrare. | Per rendere attive le blacklist scaricate dobbiamo aprire i files bannedsitelist e bannedurllist e decommentare le categorie di siti che intendiamo filtrare. | ||
Riga 595: | Riga 599: | ||
[[Categoria:Altri servizi di rete]] | [[Categoria:Altri servizi di rete]] | ||
[[Categoria:Network tools]] | [[Categoria:Network tools]] | ||
[[Categoria: Proxy]] |
contributi