Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Mini::HowTo] Squid e squidGuard
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools)
View previous topic :: View next topic  
Author Message
DGilmour
Tux's lil' helper
Tux's lil' helper


Joined: 28 Aug 2005
Posts: 132
Location: Abbadia San Salvatore

PostPosted: Thu Oct 27, 2005 7:49 pm    Post subject: [Mini::HowTo] Squid e squidGuard Reply with quote

In una radio, dicui sono stato nominato amministatore di quasi tutto, è sorto un piccolo problema legato ai client winbows e ai LowUser (Utonti generici winbloz). Dopo aver falciato tutti i pc winblows e tolto tutti i vari virus in rete ho proceduto per un cache server.

Ho usato squid in un serverino gentoo su stage1.

Per prima cosa ho instalato il programma con:

Code:
emerge squid squidGuard


Poi ho configurato il tutto. Ammettiamo che l'IP della macchina sia 192.68.0.3.

Code:
mv /etc/squid.conf /etc/squid/original.squid.conf


Questo per tenermi il file squid originale...
Ecco come ho poi creato il file /etc/squid/squid.conf:

Code:

http_port       192.68.0.3:3128                                   <-- Mettere qui il vostro IP
icp_port                   3130
cache_access_log        /var/log/squid/access.log
cache_log               /var/log/squid/cache.log
cache_store_log         /var/log/squid/store.log
useragent_log           /var/log/squid/useragent.log
referer_log             /var/log/squid/referer.log
emulate_httpd_log       on
logfile_rotate          7
mime_table              /etc/squid/mime.conf
pid_filename            /var/run/squid.pid
cache_mem               128 MB                                          <-- Memoria RAM da usare per squid... Vedere il manuale per chiarimenti
high_memory_warning     140 MB
cache_dir       ufs     /var/cache/squid 8192 16 256
cache_mgr               info@kerescontorni.com                   <-- Da modificare con la vostra email
visible_hostname        lupin.fidelionet.org                         <-- Da modificare con il vostro nome fqdn
append_domain           .fidelionet.org                               <-- Da modificare con il vostro dominio
cache_effective_user    squid
cache_effective_group   squid
acl deny_download url_regex -i ^http://.*\.(exe|src|bat|pif|com|sys|reg|ini|inf)$   <-- Meraviglisa...
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl locallans src 192.68.0.0/255.255.255.0
acl to_localhost dst 127.0.0.0/8
acl SSL_Ports port 443 563
acl Safe_ports port 80 443
acl CONNECT method CONNECT
http_access     deny    deny_download
http_access     allow   manager localhost
http_access     deny    manager
http_access     deny    !Safe_ports
http_access     deny    CONNECT !SSL_Ports
http_access     allow   locallans
http_access     deny    all
icp_access      deny    all


Nontale la meravigliosa acl deny_dowload. Così posso decidere quali files non devono assolutamente essere scaricati... Posso aggiungere di tutto... Tra poco penso inserirò la lista per tutti i file video e audio e l'estenzione per i torrent. Visto che gli LU si scaricano di tutto...
Faccio inizializzare la directory di swap con il comando:

Code:
squid -z


Facciamo poi partire squid e aggiungiamolo agli init di partenza:

Code:

   /etc/init.d/squid start
   rc-update add squid default

Ora non ci resta che configurare i client Microsoft Windows con Internet Explorer. Aprimo il programma e poi dal menù Strumenti scegliamo l'opzione Opzioni Internet. Facciamo click sulla tabella Connessioni e poi sul pulsante Impostazioni Lan. Ora selezioniamo il quadratino dove c'è scritto “Utilizza server proxy...”, inseriamo l'indirizzo IP del server proxy e poi inseriamo il numero della porta che è 3128. Funziona da dio...

Aggiungere squidGuard
Squid guard è un bellissimo programmino free che ci permette di controllare i domini che possiamo vedere sulla nostra Lan. Possiamo fare di tutto, ma per correttezza io vi illustro la configurazione base e se volete il sito è molto più illustrativo e completo di esempi www.squidguard.org.
Stoppare squid con il comando:

Code:
/etc/init.d/squid stop


Inserire nel file /etc/squid/squid.conf la seguente riga:

Code:
redirect_program /usr/bin/squidGuard -c /etc/squidGuard/squidGuard.conf


Poi posizionarsi nella directory di squidGuard e:

Code:

   cd /etc/squidGuard
   mkdir db
   nano -w squidGuard.conf


Nel file appena aperto scrivere:

Code:

logdir /var/log/squidGuard
dbhome /etc/squidGuard/db

dest blockedsites {
        domainlist blacklists/porn/domains            <-- Aggiungere qui le altre liste nere...
}

acl {
        default {
                pass !blockedsites all
                redirect http://www.sample.com/empty.png <-- Inserire qui il link di rimando...
        }
}


Scaricare da internet il blocco dei file con tutta la lista dei siti bloccati:

Code:

cd /etc/squidGuard/db
wget ftp://ftp.teledanmark.no/pub/www/proxy/squidGuard/contrib/blacklists.tar.gz
tar xvfz blacklists.tar.gz


Provare la configurazione di squidGuard con il comando:

Code:
squidGuard -c /etc/squidGuard/squidGuard.conf


Controllare nel file di log che il programma funzioni.
Code:
tail -f /var/log/squidGuard/squidGuard.log


Riavviare squid con il comando:

Code:
/etc/init.d/squid start


Potete dare una bella sbirciatina alla directory db e vedere voi stessi cosa aggiungere...
Si possono anche creare file propri con i siti che non vogliamo che siano visti...

Sperando di aver fatto cosa buona e giusta, ciao a tutti.

N.B.: In un futuro, sò già che non sarà molto lontano, proverò a configurare squid come transparent proxy con la modifica al kernel e aggiungere una specie di finestra login per gli amministratori in modo che possano scaricare determinati tipi di files. Ma questa sarà un'altra storia, come quella di agganciare clamAV a squid...

Keres.
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3652

PostPosted: Fri Oct 28, 2005 7:57 am    Post subject: Reply with quote

Complimenti per la guida, veramente pregevole il deny_download 8)
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Fri Oct 28, 2005 11:45 am    Post subject: Reply with quote

Avrei bisogno di negare tutti i siti tranne 4 o 5, come e' possibile specificarlo con le regole deny di squid? E' possibile scrivere la lista dei siti in questione in un file esterno?

Fede
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
DGilmour
Tux's lil' helper
Tux's lil' helper


Joined: 28 Aug 2005
Posts: 132
Location: Abbadia San Salvatore

PostPosted: Fri Oct 28, 2005 12:19 pm    Post subject: Reply with quote

Fai l'esatto contrario...

Prepari una lista di siti che si possono vedere e con squid guard fai una acl e poi neghi l'accesso per tutti i siti.

Trovi maggiori info sul sito di squid guard..

Ciao, Keres.
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Fri Oct 28, 2005 4:17 pm    Post subject: Reply with quote

Dove potrei sbagliare in questo ? Blocca tutto...

Code:

logdir /var/log/squidGuard
dbhome /etc/squidGuard/db

dest local {
        domainlist local/domains
}

acl {
        default {
                pass !local none
                redirect http://www.sample.com/empty.png
        }
}

_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
pistodj
Apprentice
Apprentice


Joined: 26 Jan 2005
Posts: 229

PostPosted: Fri Oct 28, 2005 6:35 pm    Post subject: Reply with quote

veramente un'ottimo howto complimenti! :)
Back to top
View user's profile Send private message
DGilmour
Tux's lil' helper
Tux's lil' helper


Joined: 28 Aug 2005
Posts: 132
Location: Abbadia San Salvatore

PostPosted: Fri Oct 28, 2005 8:21 pm    Post subject: Reply with quote

Ciao Federico ecco la risposta al tuo broblema (almeno credo: è solo un ipetesi).

Tu crei un file con:
Code:
nano -w /etc/squidGuard/db/siti_ok


e ci scrivi dentro tutti i domini che vuoi far vedere. Es.:
Code:
pincopallino.com
google.it
gentoo.it
...


Poi editi il config di squidGuard:

Code:
nano -w /etc/squidGuard/squidGuard.conf


Scrivi la seguente configurazione:

Code:

logdir /var/log/squidGuard
dbhome /etc/squidGuard/db

dest local {
        domainlist siti_ok
}

acl {
        default {
                pass siti_ok none
                redirect http://www.sample.com/empty.png
        }
}


Ricordati di riavviare squid con:
Code:
/etc/init.d/squid restart

Creco che così possa funzionare...

Ciao, Keres.
Back to top
View user's profile Send private message
DGilmour
Tux's lil' helper
Tux's lil' helper


Joined: 28 Aug 2005
Posts: 132
Location: Abbadia San Salvatore

PostPosted: Fri Oct 28, 2005 8:22 pm    Post subject: Reply with quote

P.S.: Voglio l'aumento di grado!!!!!
Back to top
View user's profile Send private message
FonderiaDigitale
Veteran
Veteran


Joined: 06 Nov 2003
Posts: 1710
Location: Rome, Italy

PostPosted: Fri Oct 28, 2005 10:11 pm    Post subject: Reply with quote

a roma si dice: nun t'allargà.
_________________
Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica :)
Back to top
View user's profile Send private message
makoomba
Moderator
Moderator


Joined: 03 Jun 2004
Posts: 1856

PostPosted: Sat Oct 29, 2005 9:09 am    Post subject: Reply with quote

@fede
puoi farlo anche solo con le acl di squid
Code:
acl domains dstdomain "/etc/squid/domains.conf"
http_access allow domains
http_access deny all

in ufficio ho una configurazione simile a quella descritta nell'howto (senza squidguard); durante l'utilizzo, sono comparsi alcuni problemi legati ad un setup troppo restrittivo:

1) i client windows montano in genere software antivirus che necessita di aggiornamento
2) i server linux presenti nella lan non devono avere restrizioni
3) di tanto in tanto, è molto più comodo scaricare aggiornamenti, drivers, software direttamente dal client

il primo punto si risolve facilmente, basta identificare i servers a cui si collega l'antivirus.
nel caso di norton, si aggiunge
Code:
acl goodURL url_regex -i ^http://liveupdate.symantecliveupdate.com/
http_access allow goodURL


per il secondo, basta definire un'acl apposita
Code:
acl server src 10.0.0.8/32
acl server src 10.0.0.7/32
acl server src 10.0.0.4/32

http_access allow server

il terzo si può risolvere definendo una classe di utenti privelegiati che non abbia restrizioni sul download e che sia indipendente dal client
il primo passo è impostare un meccanismo di autenticazione:
Code:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squidusers
auth_param basic children 5
auth_param basic realm Azienda - Accesso al Proxy
auth_param basic credentialsttl 2 hours

acl squid_users proxy_auth REQUIRED

utenti e password possono essere aggiunti a squidusers utilizzando htpasswd
successivamente, si spezza il "deny_download" dell'howto in due acl distinte
Code:
# da escludere sempre
acl forbURL url_regex -i \.pif$|\.scr$

# permesse solo agli utenti privilegiati
acl badURL url_regex -i \.exe$|\.zip$|\.avi$|\.mpg$|\.mpeg$|\.mov$|\.doc$|\.rtf$|\.xls$

# nessuna restrizione
http_access allow servers
http_access allow localhost

# sempre negati
http_access deny forbURL

# permessi a tutti
http_access allow goodURL

# utenti normali
http_access allow locallans !badURL

# utenti privelegiati
http_access allow squid_users

http_access deny all

il proxy continua a funzionare senza autenticazione fino a quando non viene richiesto un file con estensione badURL.
in questo caso , squid mostra il popup per l'autenticazione e nega l'accesso all'utente che non dispone delle credenziali.
Back to top
View user's profile Send private message
FonderiaDigitale
Veteran
Veteran


Joined: 06 Nov 2003
Posts: 1710
Location: Rome, Italy

PostPosted: Sat Oct 29, 2005 2:11 pm    Post subject: Reply with quote

complimenti da parte mia per l'ultimo post, mi e' stato utile.
_________________
Come disse un amico, i sistemisti sono un po' come gli artigiani per l'informatica :)
Back to top
View user's profile Send private message
JacoMozzi
l33t
l33t


Joined: 12 May 2003
Posts: 645
Location: Giubiasco world(EU(CH(TI)))

PostPosted: Sun Oct 30, 2005 1:39 pm    Post subject: Reply with quote

Bella guida, grazie mille :-D
Back to top
View user's profile Send private message
kattivo
Guru
Guru


Joined: 28 Jan 2005
Posts: 450
Location: Treviso

PostPosted: Sun Dec 11, 2005 8:27 pm    Post subject: Reply with quote

Volevo aggiungere una cosa che puo' essere utile se si vuole applicare squid a una numerosa rete di client
Beh, attivando una funzione di nat sul firewall che rindirizza il traffico di richiesta sulla porta 80 (traffico internet), a quella usata da squid, (tipo la 3128 mi sembra che fosse di default...) Non servirebbe impostare il proxy su ogni client...a volte puo' essere una scocciatura :P


PS: Bell How TO :wink:
_________________
Eurostep Consulting S.r.l.
Andrea P. <andrea@eurostep.it>
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3652

PostPosted: Sun Mar 26, 2006 11:04 am    Post subject: Reply with quote

Porca pupattola, squidGuard e squid non vogliono saperne di collaborare ...
Anche provando una configurazione minimalissima di squidGuard per bloccare tradedoubler riesco a farlo reindirizzare
Code:
echo "http://hstit.tradedoubler.com/file/39024/registrazionedomini/HK-reg-120x600.gif - - GET" | $(which squidGuard) -c /etc/squidGuard/squidGuard.conf -d
2006-03-26 12:48:45 [8262] init domainlist /etc/squidGuard/db/dom_blocked
2006-03-26 12:48:45 [8262] loading dbfile /etc/squidGuard/db/dom_blocked.db
2006-03-26 12:48:45 [8262] squidGuard 1.2.0 started (1143370125.702)
2006-03-26 12:48:45 [8262] squidGuard ready for requests (1143370125.704)
http://linuxlandia.no-ip.org/empty.png -/- - GET
2006-03-26 12:48:45 [8262] squidGuard stopped (1143370125.714)

come si può vedere il tentativo di accedere al banner di tradedoubler viene rediretto proprio come voglio io ma squid non mi tiene in considerazione, infatti il tentativo di aprire anche solo quella singola immagine me la mostra in tutto il suo splendore (si fa per dire) anche se ho aggiunto
Code:
redirect_program /usr/bin/squidGuard -c /etc/squidGuard/squidGuard.conf
al file /etc/squid/squid.conf e ho controllato che sia le directory di configurazione e dei log di squidGuard e i file che contengono sia dell'utente squid e del gruppo squid.

Avete qualche suggerimento ?

/EDIT:ovviamente dopo aver modificato il file di configurazione di squid ho anche riavviato il proxy :wink:
/EDIT2:ho scoperto che bisogna riavviare squid anche dopo aver modificato la configurazione di squidGuard, non è possibile rendere attive le modifiche di squidGuard senza riavviare squid ? se ogni volta che voglio bannare un sito devo riavviare il proxy mi rompo le scatole :?
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
X-Drum
Advocate
Advocate


Joined: 24 Aug 2003
Posts: 2517
Location: ('Modica','Trieste','Ferrara') Italy

PostPosted: Sun Mar 26, 2006 10:09 pm    Post subject: Reply with quote

DGilmour wrote:
P.S.: Voglio l'aumento di grado!!!!!

-_-"
_________________
"...There are two sort of lies, lies and benchmarks..."
Back to top
View user's profile Send private message
makoomba
Moderator
Moderator


Joined: 03 Jun 2004
Posts: 1856

PostPosted: Mon Mar 27, 2006 2:19 pm    Post subject: Reply with quote

Kernel78 wrote:
non è possibile rendere attive le modifiche di squidGuard senza riavviare squid ?

Code:
squid -k reconfigure

_________________
When all else fails, read the instructions.
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3652

PostPosted: Mon Mar 27, 2006 2:52 pm    Post subject: Reply with quote

makoomba wrote:
Kernel78 wrote:
non è possibile rendere attive le modifiche di squidGuard senza riavviare squid ?

Code:
squid -k reconfigure

Anche se continuo a pensare che sei un'ottima fonte di info interessanti e anche se la risposta che mi hai dato (e di cui ti ringrazio) è corretta ho anche scoperto
Code:
/etc/init.d/squid reload
che è più in gentoo-style 8)
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
makoomba
Moderator
Moderator


Joined: 03 Jun 2004
Posts: 1856

PostPosted: Mon Mar 27, 2006 3:05 pm    Post subject: Reply with quote

Code:
reload() {
    checkconfig || return 1
    ebegin "Reloading squid"
    /usr/sbin/squid -k reconfigure
    eend $?
}

in fondo, il succo è quello ;)
_________________
When all else fails, read the instructions.
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3652

PostPosted: Mon Mar 27, 2006 3:10 pm    Post subject: Reply with quote

da non sottovalutare il checkconfig però ...
Cmq è stata la tua risposta che ha fatto girare il mio neurone nella giusta direzione :wink:
Grazie ancora
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
makoomba
Moderator
Moderator


Joined: 03 Jun 2004
Posts: 1856

PostPosted: Tue Mar 28, 2006 9:23 am    Post subject: Reply with quote

aggiungo all'howto un paio di tip.
Code:
shutdown_lifetime 2 seconds

riduce notevolmente il tempo necessario a chiudere squid.

Code:
extension_methods REPORT MERGE MKACTIVITY CHECKOUT

è necessario qualora si voglia accedere a repository svn tramite il proxy.
_________________
When all else fails, read the instructions.
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3652

PostPosted: Tue Mar 28, 2006 10:02 am    Post subject: Reply with quote

ma quante ne sai ??!!??!
Ti spiace se mi faccio un tuo santino da portarmi nel portafoglio ? :lol:
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
makoomba
Moderator
Moderator


Joined: 03 Jun 2004
Posts: 1856

PostPosted: Tue Mar 28, 2006 10:13 am    Post subject: Reply with quote

eheh, non so se è il caso...
se $moglie vede la sua foto vicino ad una voodoo-doll, potrebbe fraintendere e agire d'anticipo
_________________
When all else fails, read the instructions.
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3652

PostPosted: Tue Mar 28, 2006 10:16 am    Post subject: Reply with quote

makoomba wrote:
eheh, non so se è il caso...
se $moglie vede la sua foto vicino ad una voodoo-doll, potrebbe fraintendere e agire d'anticipo

Ma quante ne sai ?!?!? :lol: :lol: :lol:
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
cagnaluia
l33t
l33t


Joined: 01 Sep 2004
Posts: 998
Location: Treviso

PostPosted: Wed Apr 12, 2006 12:07 pm    Post subject: Reply with quote

ma poi... dopo aver sistemato grossomodo tutto il proxy, è possibile creare dei report dettagliati magari in PDF.. magari spediti via mail ?

il Top sarebbe spedire questi PDF settimanalmente/mensilmente/a richiesta .... con i dati e le statistiche sui client e psecialmente sugli utenti (della rete.. che nel mio caso sarebbe sotto il dominio di win2003srv, quindi qualche problema per recuperare il nome utente?).

c'è modo di affinare squid in tal senso?
Back to top
View user's profile Send private message
Kernel78
Moderator
Moderator


Joined: 24 Jun 2005
Posts: 3652

PostPosted: Wed Apr 12, 2006 12:16 pm    Post subject: Reply with quote

cagnaluia wrote:
ma poi... dopo aver sistemato grossomodo tutto il proxy, è possibile creare dei report dettagliati magari in PDF.. magari spediti via mail ?

il Top sarebbe spedire questi PDF settimanalmente/mensilmente/a richiesta .... con i dati e le statistiche sui client e psecialmente sugli utenti (della rete.. che nel mio caso sarebbe sotto il dominio di win2003srv, quindi qualche problema per recuperare il nome utente?).

c'è modo di affinare squid in tal senso?

Quello che chiedi tu non è parte del meccanismo di proxy quindi non devi puntare a farlo fare a squid ...
Ci sono molti pacchetti in portage che permettono di analizzare i log di squid e/o di creare dei report html a partire dai log, una volta che hai l'html puoi convertirlo in pdf e fare uno script che te lo invii via mail o farci quello che vuoi.
_________________
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con
Code:
grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools) All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum