Lundi 20 novembre 2006
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 :

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 :

/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

/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
Samedi 18 novembre 2006
Bon, aujourdh'ui un article assez long et un peu théorique, mais c'est pour la bonne cause ....

En effet, mes parents ont eu leur PC depuis quelques temps et bien sur tout de suite j'essaye de les amener à utiliser Linux. L'avantage (ou le désavantage) que j'ai c'est qu'il ne sont pas plus pour un OS que pour un autre. J'ai cité désavantage, pourquoi ? parce que si ils connaissaient bien Windows (OS par défaut sur un DELL), il y connaitraient aussi surement les dangers lors de leur accès au net. Bref, pas de débat ici, mais tout ca pour dire que l'autre jour, ma mère m'a appelée, car elle recevait des messages bizarres sur son écran. Après investigation, c'était (juste) un message de publicité pour un soit disant nettoyeur de disque. Seulement le pb, c'est qu'il ont téléchargé l'installeur, mais heureusement, ils ne l'ont pas lancé ... car c'était un genre de spyware ... D'autre part sur leur PC, leurs petits-fils viennent de temps en temps à la maison et bien sur, il vont sur le PC jouer à quelques jeux en ligne, aboluflash.com pour ne pas le citer par exemple. Dans ce site, il y a une section "chaude" , et ce n'est pas réservé à un public jeune. Là elle a commence à prendre un peu peur, normal, car ils ne sont pas toujours derrière eux pour surveiller. Elle m'en a donc parler le W.E dernier et je me suis dit que je devais faire quelque chose quand même, sous Linux bien sur ....

NOTE : L'article ici est écrit pour une configuration simple : un seul PC connecté à internet. En cas de réseau local, ce sera un peu différent.

Bon étude de tout ca ,pas facile, surf, lecture, surf lecture , et finalement je repère en googleisant quelques programmes sympas :

- Le proxy squid : incontournable apparemment (article sur wikipedia)
- dansguardian : en complément de squid pour le filtrage de sites.
- squidguard : plugin pour squid pour filtrage des sites

L'installation de ces outils ne pose aucun problème, donc je passe là dessus. Par contre la configuration est plus délicate et il faut lire un peu les docs. Au vu de toutes mes manips, j'ai retenu le couple squid et squidguard. En effet dansguardian, j'ai pas réussi à le faire fonctionner, j'ai pas compris tout le principe. L'avantage de squidguard, c'est qu'il se lance avec squid et fait partie du programme.

Après installation de squid et squidguard, un utilisateur pour ces programmes est crée automatiquement : l'utilisateur proxy

Très important : tous les fichiers et répertoires doivent avoir comme utilisateur proxy et comme groupe proxy. Si ce n'est pas le cas ca plantera. Et il faut fouiller dans les log pour trouver la source du problème.... Voir plus bas, pour vous aider, des indices pour ce genre de problèmes.

Bon maintenant allons-y pour la configuration de tout ca....

ETAPE 1 : Le proxy squid

Vérifier d'abord que l'utilisateur proxy est créé. Note, il se peut que ca soit un autre utilisateur qui soit créé, ca dépende de la distribution : utilisateur squid par exemple.

Etape 1.1 : l'utilisateur squid

taper la commande : su proxy
Si la réponse n'est pas : identifiant inconnu : proxy , c'est que l'utilsateur est créé. Je lui ait créé un mot de passe avec passwd proxy, mais je ne suis pas sur que ce soit nécessaire.
Dans le cas contraire, il faut créer cet utilisateur.

Etape 1.2 : le fichier de configuration

Le répertoire principal de squid est /etc/squid
Le fichier de configuration est : squid.conf

C'est ce fichier qu'il faut éditer pour configurer squid. Bon là je vais passer sur les détails, car j'avoue que je ne maitrise pas tout. C'est pourquoi je vous en fourni un ci-dessus. Il est surement incomplet et pas terrible, pour ceux qui maitrisent le proxy squid. N'hésitez pas à me faire parvenir vos remarques.

Etape 1.3 : les droits pour squid

Maintenant, il faut absolument mettre les droits à tout les fichiers utilisés par squid par les commandes suivantes :

sudo chown -R proxy.proxy /etc/squid /var/log/squid /var/spool/squid /usr/lib/squid /usr/sbin/squid
sudo chmod 665 /var/run

Maintenant il faut créer le cache avec le commande : squid -z

ETAPE 2 : le plugin Squidguard

Squiduard est un redirecteur qui utilise une base de données pour le filtrage des sites. C'est à dire que les requètes du navigateur lui parviennent (accès a un site), si elles sont conforme à sa configuration (site autorisé), pas de soucis la page est affichée dans le navigateur. Si par contre elle n'est pas conforem, à ce moment le navigateur est redirigé vers une autre page : message d'interdiction par exemple.

Etape 2.1 : les listes noires

Pour ce qui est du filtrage des sites, on ne vas bien sur pas entrer les adresses à la main, des listes noires existes sur le net. Voici une adresse de blacklist : Liste noire

Voici les commandes à faire pour les installer :

sudo tar zxvf blacklist.tar.gz -C /var/lib/squidguard/db/
cd /var/lib/squidguard/db
sudo mv blacklist/*
sudo rm -rf blacklist


Etape 2.2 : le fichier de configuration

Le fichier de configuration de squidguard se trouve dans le même répertoire que squid à ssavoir /etc/squid et se nomme : squidGuard.conf

Vous aurez donc sur le lien ci-dessous un fichier de configuration pour une machine seule connectée sur le net. Dans ce fichier il y a les diffrents thèmes que l'on autorise pas a visiter :  adult, warez, publicite, jeux etc ... C'est a vous de le configurer , par exemple les ligne suivantes suffisent pour bloquer les accès sur des sites violents définis dans la base de données:

dest violence {
    domainlist violence/domains
    urllist violence/urls
}

poste {
    pass !porn !adult !publicite !warez !violence all
    redirect http://www.roozeec.fr/interdiction.html
  }

Etape 2.3 : générer la base de données.

Afin d'avoir un accès plus rapide aux données des différents fichiers de liste noire, ceux ci doivent etre insérer dans la base de données de squidguard avec la commande :

squidGuard -C all

Cette commande est assez longue, profitez en pour faire un peu de lecture sur la configuration squid/squidguqrd ....

Etape 2.4 : Configuration de squid pour utiliser squidguard

Il faut maintenant indiquer à squid que l'on utilise squidguqrd avec lui et ceci en insérant dans le fichier de configuration de squid (squid.conf) les lignes suivantes :

redirect_program /usr/bin/squidGuard -c /etc/squid/squidGuard.conf
redirect_children 10

ETAPE 3 : Démarrer squid

Il faut s'assurer que tous les fichiers appartiennent à proxy pour que ca fonctionne donc la commande suivante est a faire :

sudo chown -R proxy.proxy /etc/squid /var/log/squid /var/spool/squid /usr/lib/squid /usr/sbin/squid /var/lib/squidguard

Maintenant que tout es prêt il faut démarrer le service avec la commande suivante :

sudo squid -z
sudo /etc/init.d/squid start

et la réponse doit être :
Starting Squid HTTP proxy squid [ok]

ETAPE 4 : Vérification

Il faut maintenant configurer le navigateur pour lui indiquer d'utiliser le proxy. Vous comprendrez aiseément que pour peu que l'enfant ou la personne qui utilise le PC connaisse un peu le navigateur et sa configuration, le contournement du proxy et donc l'accès complet à l'internet est très facile. C'est pourquoi il existe une autre méthode pour controuner ceci, mais ce sera le but d'un autre article (en principe avant le 26 novembre, car je rentre chez mes parents ce week end là ... donc j'en profiterais pour installer ceci)

Pour Firefox, il suffit d'aller dans le menu Editions/preférences , section Réseau :


Un clic sur la configuration de la connection :


Et vous configurer comme suit , si vous avez utilisé le fichier que je vous ait fourni

Maintenant si vous essayez d'accéder à :

http://www.google.fr
: ca marche sans problème
http://www.googleadservices.com/ : si vous avez interdit les publicités vous avez ceci d'affiché :

Formidable, ca marche. La page qui est affichée provient en fait de mon site web roozeec.fr car c'est celle ci qui a été configuré dans le fichiers de squidguard avec la ligne :

redirect http://www.roozeec.fr/interdiction.html

Bon, maintenant je fais un petit tour sur le site de jeux flash et je clique sur la session "chaude" et ce magnifique sens interdit apparait, cool !!

Ouf, voilà j'en ai terminé pour aujourdh'ui , juste un petit mot pour vous donner quelques informations :

Les fichiers utilser a consulter si ca ne marche pas :

- Ceux dans /var/log/squid
- le fichier :  /var/log/user.log
- le fichier :  /var/log/syslog | grep squid
- le fichier :  /var/log/messages | grep squid

Bon, tout ceci fonctionne mais mérite perfection et surement quelques tests a faire. La principale chose a faire est d'éviter que l'utilisateur puisse outre passer le proxy, ceci doit se faire très bien en interceptant les requetes http et en les redirigeant vers le proxy automatiquement avec les fonctions iptables de Linux. A étudier et a écrire.

J'espère que cet article vous aura intéressé, merci de m'avoir lu jusqu'à la fin !
Tous commentaires bienvenus !
par Roozeec publié dans : Ubuntu
Mardi 14 novembre 2006
En ce moment, les sociétés commerciales commencent a réagir en faveur des logiciels libres et principalement Linux. C'est une bonne chose, en voici un petit exemplaire tire deci dela :
  • AMD aide l'opengl

    AMD, le celebre fabricant de microprocesseur, vient de fournir la premiere version d'un outil de conversion de parties de programmes developpes pour Directx (windows) vers Opengl (multiplateformes dont Linux). Ce programme s'appele HSGL2GLSL.

    "HLSL (High Level Shader Language) est le langage de programmation créé par Microsoft pour développer des effets graphiques avancés de façon simplifié, et GLSL (OpenGL Shading Language) est son équivalent OpenGL."

    Source : PcInpact , OpenGL
  • FLASH 9

    Depuis quelques temps, une nouvelle version du lecteur Flash (version 9) est disponibles pour Linux. Ce qui permet d'etre compatible avec la majorite des sites utilisant les dernieres innovations Flash.
On va pas se plaindre ...
Lundi 13 novembre 2006
Les PC de marque DELL m'ont toujours semblés etre les meilleurs tant au niveau prix qu'en qualité. Ceci pour des personnes désirant un PC tout pret et fonctionnel, donc le cas des assembleurs est mis de coté pour cet article.

J'ai donc recommandé DELL pour mon beau-frère et sa petite famille tout en lui expliquant le pour et le contre de Windows et le pour et le contre de Linux. Je lui ai dit que je pourrais installer Linux sans problèmes sur son PC. Je l'avait fait il y a quelques mois pour mon père et ca a marché tres bien. Mais ce n'était pas le meme modèle et c'est la toute la difference...

En effet pour mon beau-frère , j'ai commande un DELL C521 a un prix abordable (AMD 2.4Ghz, écran plat 19 pouces) et j'ai donc voulu installer Linux Ubuntu Dapper dessus et la stupéfaction !

En effet impossible d'installer Linux. Soit je suis nul, soit DELL a modifié sa configuration de partitions du disque. Et je pense que c'est cette dernière qui est la plus probable ...

En effet en regardant la table de partition du disque (160 go), que vois-je :
  • Une partition FAT16 : ?????
  • Une partition NTFS : Windows XP
  • Une partition NTFS : Sauvegarde
  • Une parition FAT32 : Dell Utility ??
Et le problème est que sur un disque dur on ne peut pas installer plus de 4 partitions primaires, c'est ce que j'ai compris au vu de toutes les manipulations que l'on a faites. Alors ai-je loupé quelque chose ?

Je voulais utiliser (redimensionner ) la partition Windows XP (109 Go) pour la découper en 2 et mettre Ubuntu sur la deuxieme (comme d'habitude quoi ..) mais impossible de faire quoi que ce soit pour cette partition crée, puisqu'elle est indiquée : non-allouée.

Alors ma question : c'est quoi ce b..... ?

- Ais-je tout faux, devrais-je revoir mes lecons ?
- Ou est-ce que les partitions fantomes FAT16 et FAT32 sont la uniquement pour empecher une installation d'un nouvel OS ? Parce ce que franchement la première partition FAT16 a quoi sert-elle ? Est-ce sous la pression d'un grande multinationale (W$) que DELL a fait cette découpe du disque ?? Et la deuxieme Dell Utility .... ca sert a quoi ???

Donc la je suis très , mais très decu de DELL. Si ca avais été mon PC j'aurais tout viré ces partitions et refais tout propre. Vous me direz d'acheter un PC chez un assembleur, c'est vrai... c'est ce qu'il vaut mieux faire quand on s'y connait un peu en info. J'aurais peut-etre du me pencher sur le problème avant de commander ce DELL (chercher sur les forums si il y a des problèmes sur un type de PC). Mais ce que j'aime chez DELL : qualité et silence des PC. Ce qu'il y a dedans c'est plus aléatoire finalement ....

Voila pour l'histoire de l'installation de Linux. Qu'avons donc nous fait (mon beau-frère et moi) ?. Il était convaincu du bien fondé de mon explication des avantages de Linux (pas de virus,logiciels libres, ...) et donc voulait avoir Linux d'installé, il est alors parti acheter un disque dur externe a brancher sur un port USB. Ce qui pourra se révéler pratique si il veut montrer Linux a ses proches ;-)

Bon, après installation (tres simple) de son disque externe voici l'installation de Linux sur ce disque externe, pas de problèmes particulier. Juste a savoir qu'il vaut mieux faire un partitionnement personnalisé (une partition Linux ext3 + 1 partition swap), sinon l'installeur fait sa petite tambouille (une partition Linux, une étendue, 2 swap, une partition / de 2.5 go (trop juste) ... j'ai pas trouvé ca top...).

Tout ca étant terminé, je relance le tout et Linux redémmarre sans problèmes, je montre un peu l'interface Gnome a mon beau-frere, je lui explique le tout et tout d'un coup plus rien : freeze total de l'ecran, la souris ne bouge plus. Arghhhh ! c'est quoi ce bin'z encore !!! Apres redémarrage, je m'apercois lors du boot qu'un problème de timer et apic. Je lance donc grub ave l'option noapic et c'est toujours pareil, d'une minute a l'autre, c'est tres aléatoire, la souris se fige. J'ai pensé pour ma part a un problème de drivers videos sur le chipset nvidia du PC, mais mon beau-frère débranche a tout hasard la souris et la rebranche et la miracle ca refonctionne. Mais c'est pas top du tout faut l'avouer. Il me dit qu'il fait a fait ca car de temps en temps dans son boulot, c'est pareil les PC se plantent et en rebranchant les souris ca refonctionne (note ils sont sous Windows). En cherchant ce matin sur le web, je m'apercois que c'est un problème connu :
En fait, c'est un problème de gestion USB, mais d'ou ca vient du hardware ou du software ? , a mon avis un peu des deux...

Apparemment le seul recours pour l'instant serait :
  • D'acheter une carte PCI avec des ports USB
  • Modifier Grub pour lancer le boot avec l'option noapic seulement et pas les autres genre splash, quiet : A essayer

Au bilan de tout ca , un samedi complet a se prendre la tete sur ce PC, la franchement ca me fout un coup sur la marque DELL que je vantais aupraravant, je vais maintenant y reflechir un peu plus avant de commander un DELL ....
 
 
Créer un blog sur over-blog.com - Contact - C.G.U. - Rémunération en droits d'auteur avec TF1 Network - Signaler un abus