Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 23/11/2012, à 16:15

kent2004

Squid et SquidGuard blacklists ne fonctionne pas

Bonjour,

je suis en test d'un proxy pour empêcher les utilisateurs d'aller sur facebook, youtube, ...
J'ai mis en place mon squid (il fonctionne). Squidguard à l'air de fonctionner. J'ai téléchargé une DB (université de Toulouse). Mais lorsque je compile la DB ca ne fonctionne pas.

Voici mon squidguard.conf :

#
# CONFIG FILE FOR SQUIDGUARD
#
# Caution: do NOT use comments inside { }
#

dbhome /var/lib/squidguard/db/blacklists
logdir /var/log/squid

#
# TIME RULES:
# abbrev for weekdays: 
# s = sun, m = mon, t =tue, w = wed, h = thu, f = fri, a = sat

time workhours {
	weekly mtwhf 08:00 - 16:30
	date *-*-01  08:00 - 18:30
}

#
# SOURCE ADDRESSES:
#

src admin {
	ip  		1.2.3.4  1.2.3.5
	user		root foo bar
	within		workhours
}

src foo-clients {
	ip		172.16.2.32-172.16.2.100 172.16.2.100 172.16.2.200
}

src bar-clients {
	ip		172.16.4.0/26
}

src dhcp {
	ip		192.168.10.4
}

#
# DESTINATION CLASSES:
#

dest good {
}
dest local {
}

dest drogues {
        urllist         drugs/urls
        domainlist      drugs/domains
}

#dest adult {
#	domainlist	BL/adult/domains
#	urllist		BL/adult/urls
#	expressionlist	BL/adult/expressions
#	redirect http://admin.foo.bar.de/cgi-bin/blocked.cgi?clientaddr=%a&clientname=%n&clientuser=%i&clientgroup=%s&targetgroup=%t&url=%u
#}

#
# ACL RULES:
#

acl {
	admin {
		pass	 any
	}
	dhcp {
		pass !drogues  any
                redirect http://127.0.0.1/cgi-bin/squidGuard.cgi?clientaddr=%a&clientname=%n&clientident=%i&srcclass=%s&targetclass=%t&url=%u
        }
	
	default {
		pass	 local none
		redirect http://www.cazier.be
	}
}

Voici le log :

administrator@squid:~$ tail -f /var/log/squid/squidGuard.log
2012-11-22 23:33:23 [8410] New setting: dbhome: /var/lib/squidguard/db/blacklist                                                                                        s
2012-11-22 23:33:23 [8410] New setting: logdir: /var/log/squid
2012-11-22 23:33:23 [8410] Added User: root
2012-11-22 23:33:23 [8410] Added User: foo
2012-11-22 23:33:23 [8410] Added User: bar
2012-11-22 23:33:23 [8410] destblock good missing active content, set inactive
2012-11-22 23:33:23 [8410] destblock local missing active content, set inactive
2012-11-22 23:33:23 [8410] init urllist /var/lib/squidguard/db/blacklists/drugs/                                                                                        urls
2012-11-22 23:33:23 [8410] /var/lib/squidguard/db/blacklists/drugs/urls: Permiss                                                                                        ion denied
2012-11-22 23:33:23 [8410] Going into emergency mode

Je penses que j'ai un problème de droits sur mes fichiers, mais je ne sais pas quoi mettre ?
Je suis quasi sur que je me suis en mêlé les pinceaux dans la config des droits (je n'y connais rien).

J'ai suivi ce tuto (en l'adaptant un peu) : http://irp.nain-t.net/doku.php/220squid:start

Un grand merci pour votre aide :-)

Dernière modification par kent2004 (Le 23/11/2012, à 16:16)

Hors ligne

#2 Le 23/11/2012, à 21:38

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

Tu as probablement mis en place tes fichiers en root, sans droit de lecture pour les utilisateurs.
Et squid tourne probablement sur un utilisateur qui n'est pas root.

Tente ça :

chmod -R a+r /var/lib/squidguard/db

Pour permettre à "tout le monde" (a) de lire (r) ces fichiers

Hors ligne

#3 Le 24/11/2012, à 02:40

kent2004

Re : Squid et SquidGuard blacklists ne fonctionne pas

Non ca ne change rien

2012-11-23 11:18:49 [14362] Added User: root
2012-11-23 11:18:49 [14362] Added User: foo
2012-11-23 11:18:49 [14362] Added User: bar
2012-11-23 11:18:49 [14362] destblock good missing active content, set inactive
2012-11-23 11:18:49 [14362] destblock local missing active content, set inactive
2012-11-23 11:18:49 [14362] init urllist /var/lib/squidguard/db/blacklists/drugs/urls
2012-11-23 11:18:49 [14362] /var/lib/squidguard/db/blacklists/drugs/urls: Permission denied
2012-11-23 11:18:49 [14362] Going into emergency mode
2012-11-23 11:18:49 [14361] /var/lib/squidguard/db/blacklists/drugs/urls: Permission denied
2012-11-23 11:18:49 [14361] Going into emergency mode

Hors ligne

#4 Le 24/11/2012, à 09:41

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

Peut-être que l'interdiction est encore plus haut, à savoir sur /var/lib/squidguard...

Tu peux exécuter la commande suivante et nous donner son retour ?

ls -ld /var/lib/squidguard /var/lib/squidguard/db /var/lib/squidguard/db/blacklists /var/lib/squidguard/db/blacklists/drugs /var/lib/squidguard/db/blacklists/drugs/*

Hors ligne

#5 Le 24/11/2012, à 11:13

kent2004

Re : Squid et SquidGuard blacklists ne fonctionne pas

Voila :

administrator@squid:~$ ls -ld /var/lib/squidguard /var/lib/squidguard/db /var/lib/squidguard/db/blacklists /var/lib/squidguard/db/blacklists/drugs /var/lib/squidguard/db/blacklists/drugs/*
drwxrwxrwx  4 root          root           4096 Nov 22 21:32 /var/lib/squidguard
drwxr-sr-x  3 proxy         proxy          4096 Nov 22 22:50 /var/lib/squidguard/db
drwxrwsr-- 48 administrator administrator  4096 Nov 22 21:44 /var/lib/squidguard/db/blacklists
lrwxrwxrwx  1 administrator administrator     6 May 11  2005 /var/lib/squidguard/db/blacklists/drugs -> drogue
-rwxrwxr--  1 administrator administrator  9222 Nov 22 23:30 /var/lib/squidguard/db/blacklists/drugs/domains
-rw-rw-r--  1 administrator administrator 32768 Nov 22 23:32 /var/lib/squidguard/db/blacklists/drugs/domains.db
-rwxrwxr--  1 administrator administrator 14355 Nov 22 13:57 /var/lib/squidguard/db/blacklists/drugs/urls
-rw-rw-r--  1 administrator administrator 36864 Nov 22 23:32 /var/lib/squidguard/db/blacklists/drugs/urls.db
-rwxrwxr--  1 administrator administrator     6 May 23  2005 /var/lib/squidguard/db/blacklists/drugs/usage
administrator@squid:~$

Hors ligne

#6 Le 24/11/2012, à 11:37

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

chmod a+x /var/lib/squidguard/db/blacklists

Pour les répertoires, quand on parle de droits UNIX, "exécution" = "ouvrir".

Par ailleurs, je constate des trucs bizarres sur tes droits, tu as le suid bit activé ("s") sur les répertoires, et pour certains les droits de lecture/écriture/exécution sont en place pour tout le monde (rwxrwxrwx), c'est mauvais.

Pour rétablir des droits à peu près corrects, je propose la commandes suivante :

chmod -R u=rwX,go=rX /var/lib/squidguard

Dernière modification par tiramiseb (Le 24/11/2012, à 11:37)

Hors ligne

#7 Le 24/11/2012, à 11:53

kent2004

Re : Squid et SquidGuard blacklists ne fonctionne pas

Voila les droits après tes deux commandes :

administrator@squid:~$ ls -ld /var/lib/squidguard /var/lib/squidguard/db /var/lib/squidguard/db/blacklists /var/lib/squidguard/db/blacklists/drugs /var/lib/squidguard/db/blacklists/drugs/*
drwxr-xr-x  4 root          root           4096 Nov 22 21:32 /var/lib/squidguard
drwxr-sr-x  3 proxy         proxy          4096 Nov 22 22:50 /var/lib/squidguard/db
drwxr-sr-x 48 administrator administrator  4096 Nov 22 21:44 /var/lib/squidguard/db/blacklists
lrwxrwxrwx  1 administrator administrator     6 May 11  2005 /var/lib/squidguard/db/blacklists/drugs -> drogue
-rwxr-xr-x  1 administrator administrator  9222 Nov 22 23:30 /var/lib/squidguard/db/blacklists/drugs/domains
-rw-r--r--  1 administrator administrator 32768 Nov 22 23:32 /var/lib/squidguard/db/blacklists/drugs/domains.db
-rwxr-xr-x  1 administrator administrator 14355 Nov 22 13:57 /var/lib/squidguard/db/blacklists/drugs/urls
-rw-r--r--  1 administrator administrator 36864 Nov 22 23:32 /var/lib/squidguard/db/blacklists/drugs/urls.db
-rwxr-xr-x  1 administrator administrator     6 May 23  2005 /var/lib/squidguard/db/blacklists/drugs/usage
administrator@squid:~$

Mais ça ne fonctionne toujours pas

Dernière modification par kent2004 (Le 24/11/2012, à 11:57)

Hors ligne

#8 Le 24/11/2012, à 11:59

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

Par contre avec ma commande j'ai oublié de faire supprimer le bit suid, tu peux exécuter :

chmod -R a-s /var/lib/squidguard

et tu as quelques fichiers qui ont le droit d'exécution (x) : c'est inutile si le fichier n'est pas un programme exécutable ou un répertoire. Mais bon a priori ça n'est pas moins sécurisé. Cela dit, pour corriger ça tu peux utiliser :

find /var/lib/squidguard -type f -exec chmod a-x {} \;

Dernière modification par tiramiseb (Le 24/11/2012, à 12:00)

Hors ligne

#9 Le 24/11/2012, à 12:00

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

kent2004 a écrit :

Mais ça ne fonctionne toujours pas

Toujours le même message d'erreur !?

Hors ligne

#10 Le 24/11/2012, à 12:02

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

Tu peux tenter de changer le propriétaire de tous les fichiers pour que ce soit le proxy... Pas l'idéal dans l'absolu en terme de sécurité, mais je n'y vois pas d'énorme faille a priori.

chown -R proxy.proxy /var/lib/squidguard/db

Hors ligne

#11 Le 24/11/2012, à 12:08

kent2004

Re : Squid et SquidGuard blacklists ne fonctionne pas

Quand je lance

squidGuard -c all

voila ce que j'ai dans le log :

2012-11-23 20:44:48 [18925] New setting: dbhome: /var/lib/squidguard/db/blackli  ts
2012-11-23 20:44:48 [18925] New setting: logdir: /var/log/squid
2012-11-23 20:44:48 [18925] Added User: root
2012-11-23 20:44:48 [18925] Added User: foo
2012-11-23 20:44:48 [18925] Added User: bar
2012-11-23 20:44:48 [18925] destblock good missing active content, set inactive
2012-11-23 20:44:48 [18925] destblock local missing active content, set inactiv
2012-11-23 20:44:48 [18925] init urllist /var/lib/squidguard/db/blacklists/drug  /urls
2012-11-23 20:44:48 [18925] create new dbfile /var/lib/squidguard/db/blacklists  drugs/urls.db
2012-11-23 20:44:48 [18925] init domainlist /var/lib/squidguard/db/blacklists/d  ugs/domains
2012-11-23 20:44:48 [18925] create new dbfile /var/lib/squidguard/db/blacklists  drugs/domains.db
2012-11-23 20:44:48 [18925] squidGuard 1.4 started (1353699888.357)
2012-11-23 20:44:48 [18925] db update done
2012-11-23 20:44:48 [18925] squidGuard stopped (1353699888.609)

Par contre quand je lance

services squid3 reload
2012-11-23 20:46:06 [18688] ending emergency mode, stdin empty
2012-11-23 20:46:06 [18689] ending emergency mode, stdin empty
2012-11-23 20:46:06 [18690] ending emergency mode, stdin empty
2012-11-23 20:46:06 [18691] ending emergency mode, stdin empty
2012-11-23 20:46:06 [18692] ending emergency mode, stdin empty
2012-11-23 20:46:06 [18931] New setting: dbhome: /var/lib/squidguard/db/blacklist                                                                            s
2012-11-23 20:46:06 [18931] New setting: logdir: /var/log/squid
2012-11-23 20:46:06 [18931] Added User: root
2012-11-23 20:46:06 [18931] Added User: foo
2012-11-23 20:46:06 [18931] Added User: bar
2012-11-23 20:46:06 [18931] destblock good missing active content, set inactive
2012-11-23 20:46:06 [18931] destblock local missing active content, set inactive
2012-11-23 20:46:06 [18931] init urllist /var/lib/squidguard/db/blacklists/drugs/                                                                            urls
2012-11-23 20:46:06 [18931] loading dbfile /var/lib/squidguard/db/blacklists/drug                                                                            s/urls.db
2012-11-23 20:46:06 [18931] Error db_open: Permission denied
2012-11-23 20:46:06 [18931] Going into emergency mode
2012-11-23 20:46:06 [18932] New setting: dbhome: /var/lib/squidguard/db/blacklist                                                                            s
2012-11-23 20:46:06 [18932] New setting: logdir: /var/log/squid
2012-11-23 20:46:06 [18932] Added User: root
2012-11-23 20:46:06 [18932] Added User: foo
2012-11-23 20:46:06 [18932] Added User: bar
2012-11-23 20:46:06 [18932] destblock good missing active content, set inactive
2012-11-23 20:46:06 [18932] destblock local missing active content, set inactive
2012-11-23 20:46:06 [18932] init urllist /var/lib/squidguard/db/blacklists/drugs/                                                                            urls
2012-11-23 20:46:06 [18932] loading dbfile /var/lib/squidguard/db/blacklists/drug                                                                            s/urls.db
2012-11-23 20:46:06 [18932] Error db_open: Permission denied
2012-11-23 20:46:06 [18932] Going into emergency mode
2012-11-23 20:46:06 [18935] New setting: dbhome: /var/lib/squidguard/db/blacklist                                                                            s
2012-11-23 20:46:06 [18935] New setting: logdir: /var/log/squid
2012-11-23 20:46:06 [18935] Added User: root
2012-11-23 20:46:06 [18935] Added User: foo
2012-11-23 20:46:06 [18935] Added User: bar
2012-11-23 20:46:06 [18935] destblock good missing active content, set inactive
2012-11-23 20:46:06 [18935] destblock local missing active content, set inactive
2012-11-23 20:46:06 [18935] init urllist /var/lib/squidguard/db/blacklists/drugs/                                                                            urls
2012-11-23 20:46:06 [18935] loading dbfile /var/lib/squidguard/db/blacklists/drug                                                                            s/urls.db
2012-11-23 20:46:06 [18935] Error db_open: Permission denied
2012-11-23 20:46:06 [18935] Going into emergency mode
2012-11-23 20:46:06 [18933] New setting: dbhome: /var/lib/squidguard/db/blacklist                                                                            s
2012-11-23 20:46:06 [18933] New setting: logdir: /var/log/squid
2012-11-23 20:46:06 [18933] Added User: root
2012-11-23 20:46:06 [18933] Added User: foo
2012-11-23 20:46:06 [18933] Added User: bar
2012-11-23 20:46:06 [18933] destblock good missing active content, set inactive
2012-11-23 20:46:06 [18933] destblock local missing active content, set inactive
2012-11-23 20:46:06 [18933] init urllist /var/lib/squidguard/db/blacklists/drugs/                                                                            urls
2012-11-23 20:46:06 [18933] loading dbfile /var/lib/squidguard/db/blacklists/drug                                                                            s/urls.db
2012-11-23 20:46:06 [18933] Error db_open: Permission denied
2012-11-23 20:46:06 [18933] Going into emergency mode
2012-11-23 20:46:06 [18934] New setting: dbhome: /var/lib/squidguard/db/blacklist                                                                            s
2012-11-23 20:46:06 [18934] New setting: logdir: /var/log/squid
2012-11-23 20:46:06 [18934] Added User: root
2012-11-23 20:46:06 [18934] Added User: foo
2012-11-23 20:46:06 [18934] Added User: bar
2012-11-23 20:46:06 [18934] destblock good missing active content, set inactive
2012-11-23 20:46:06 [18934] destblock local missing active content, set inactive
2012-11-23 20:46:06 [18934] init urllist /var/lib/squidguard/db/blacklists/drugs/                                                                            urls
2012-11-23 20:46:06 [18934] loading dbfile /var/lib/squidguard/db/blacklists/drug                                                                            s/urls.db
2012-11-23 20:46:06 [18934] Error db_open: Permission denied
2012-11-23 20:46:06 [18934] Going into emergency mode

Hors ligne

#12 Le 24/11/2012, à 12:14

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

Ok donc quand tu le lances manuellement en root, ça marche.
Quand squid le lance, ça foire. Squid fonctionne en tant que l'utilisateur "proxy".

SquidGuard régénère les ".db" quand on le lance, j'avais oublié ça.
Donc l'utilisateur "proxy" doit avoir les droits pour écrire dans le répertoire.

Donc la dernière commande que j'ai donnée est obligatoire :

chown -R proxy.proxy /var/lib/squidguard/db

Par contre si jamais tu le lances en root, il est possible que les fichiers ".db" deviennent propriété de root et que, lors du lancement de Squid, ça ne marche plus - et que du coup tu devras rechanger les droits à chaque fois que tu le lances en root (chose qu'a priori tu n'auras plus à faire une fois que ça tourne). À vérifier.

Hors ligne

#13 Le 24/11/2012, à 12:33

kent2004

Re : Squid et SquidGuard blacklists ne fonctionne pas

Je l'ai lancé ta commande avant de faire le post.
Ce n'est pas encore ça sad

Je peux tout recommencer depuis le début si tu veux ?

Hors ligne

#14 Le 24/11/2012, à 12:35

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

Ben là si tu as encore la même erreur je ne vois pas quel peut être le problème.

Il faut que :
- tous tes fichiers appartiennent à l'utilisateur "proxy"
- l'utilisateur "proxy" ait les droits d'écriture, lecture et exécution sur les répertoires
- l'utilisateur "proxy" ait les droits d'écriture et lecture sur les fichiers

Hors ligne

#15 Le 24/11/2012, à 13:04

kent2004

Re : Squid et SquidGuard blacklists ne fonctionne pas

Je suis en train de recommencer.
C'est quoi la bonne pratique pour éditer les fichiers de config ?

Lorsque je fais un VI sur /etc/squid3/squid.conf il refuse d'enregistrer car je n'ai  pas les droits.
Est ce que c'est correcte de l'éditer avec un sudo vi /etc/squid3/squid.conf ou non ?

Merci

Hors ligne

#16 Le 24/11/2012, à 13:06

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

kent2004 a écrit :

Est ce que c'est correcte de l'éditer avec un sudo vi /etc/squid3/squid.conf ou non ?

Oui.

Seul root a le droit d'éditer ce fichier, donc obligatoirement il faut être root ou utiliser sudo.

Hors ligne

#17 Le 24/11/2012, à 13:25

kent2004

Re : Squid et SquidGuard blacklists ne fonctionne pas

Voila, j'ai installé squid3 et squidGuard.
Les deux fonctionne ensemble, j'ai bien donné accès à une IP mais pas à une autre.

En faite, je veux moi même créer ma db avec les sites à exclure. Comment je peux créer une DB ? Ou quel db je peux télécharger pour la modifier ?

Hors ligne

#18 Le 24/11/2012, à 13:35

tiramiseb

Re : Squid et SquidGuard blacklists ne fonctionne pas

En faite, je veux moi même créer ma db avec les sites à exclure. Comment je peux créer une DB ?

La documentation de SquidGuard l'explique très bien.

Ou quel db je peux télécharger pour la modifier ?

La base de l'université de Toulouse 1 en est une très bonne : http://dsi.ut-capitole.fr/blacklists/.

Hors ligne