Infos générales
Bon, après une petite recherche sur le net et quelques essais, voici une méthode pour éviter à l'utilisateur du navigateur de pouvoir outre-passer le proxy. En fait, il suffit d'utiliser une règle du programme iptables, qui est fourni sous Linux par défaut, et qui sert souvent pour le pare-feu.
Le but du jeu est de transférer toutes les requêtes du navigateur (port 80) vers le proxy Squid et SquidGuard. Voici un petit schéma que je vous ait concocté pour vous montrer le principe :

La règle suivante doit être définie pour un utilisateur différent du proxy, pour celà il faut donc rechercher l'UID de l'utilisateur proxy avec la commande suivante :
Donc ici, l'UID de l'utilisateur proxy est 13.
La commande iptables est alors :
Cette commande doit s'effectuer au chargement de Linux donc il suffit de la mettre dans le fichier /etc/rc.local et c'est réglé. Vous éditez ce fichier avec nano par exemple en tapant :
/etc/squid/squid.conf : Il faut indiquer ici l'utilisation en mode proxy transparent avec les lignes suivantes :
/etc/squid/squidGuard.conf : J'ai modifé ce fichier de facon a utiliser un mode defaut pour le PC.
Si vous téléchargez les fichier ci-dessus , renommez les en squid.conf et squidGuard.conf.
Voilà, c'était relativement simple à mettre en place.
Le but du jeu est de transférer toutes les requêtes du navigateur (port 80) vers le proxy Squid et SquidGuard. Voici un petit schéma que je vous ait concocté pour vous montrer le principe :

La règle suivante doit être définie pour un utilisateur différent du proxy, pour celà il faut donc rechercher l'UID de l'utilisateur proxy avec la commande suivante :
grep proxy /etc/passwd
réponse : proxy:x:13:13:proxy:/bin:/bin/sh
Donc ici, l'UID de l'utilisateur proxy est 13.
La commande iptables est alors :
sudo iptables -t nat -A OUTPUT -m owner ! --uid-owner 13 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
Cette commande doit s'effectuer au chargement de Linux donc il suffit de la mettre dans le fichier /etc/rc.local et c'est réglé. Vous éditez ce fichier avec nano par exemple en tapant :
sudo nano /etc/rc.local
Tapez la lignes iptables
Touches : CTRL+O puis ENTREE puis CTRL+X
Maintenant il faut modifier les 2 fichiers de configurations de squid :Tapez la lignes iptables
Touches : CTRL+O puis ENTREE puis CTRL+X
/etc/squid/squid.conf : Il faut indiquer ici l'utilisation en mode proxy transparent avec les lignes suivantes :
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
/etc/squid/squidGuard.conf : J'ai modifé ce fichier de facon a utiliser un mode defaut pour le PC.
Si vous téléchargez les fichier ci-dessus , renommez les en squid.conf et squidGuard.conf.
Voilà, c'était relativement simple à mettre en place.
par Roozeec
publié dans :
Ubuntu

