#1 Le 21/09/2013, à 15:29
- zargos
SSL Inspection avec Ubuntu - comment installer deux squids
Bonjour,
je veux faire un serveur permettant de faire du SSL Inspection.
En clair pouvoir traiter les flus HTTPS. L'objectif est de pouvoir traiter les flux avec un antivirus, un zapper de publicité, et de faire un scan avec snort et/ou prelude. De plus, de pouvoir aussi vérifier l'accès à certains site avec DansGuardian/SquidGuard.
L'objectif n'est pas de fliquer les utilisateurs mais de s'assurer que les flux HTTPS ne servent pas à encapsuler d'autres flux moins autorisés MSN, SKYPE, EMLE et autres P2P, etc...).
Pour cela j'utilise SQUID dans une configuration chainée. Ces deux squid devront etre sur le meme serveur. Aucun des deux ne fera de cache ou de gestion de cache.
J'ai recompilé squid3 pour autoriser le SSL:
$ sudo apt-get install build-essential fakeroot devscripts gawk gcc-multilib dpatch
$ sudo apt-get build-dep squid3
$ sudo apt-get build-dep openssl
$ sudo apt-get source squid3
$ sudo vi squid3-3.x.y/debian/rules
...
DEB_CONFIGURE_EXTRA_FLAGS := --datadir=/usr/share/squid3 \
--sysconfdir=/etc/squid3 \
--mandir=/usr/share/man \
--with-cppunit-basedir=/usr \
--enable-inline \
--enable-ssl \
...
$ debuild -us -uc -b
J'obtiens ainsi les packages nécessaires.
Je voudrais donc pouvoir utiliser ces packages deux fois sur une même machine. Ma question est alors la suivante:
Existe-t-il une commande d'installation dpkg qui permette de relocaliser le --prefix ?
Hors ligne
#2 Le 21/09/2013, à 19:31
- Haleth
Re : SSL Inspection avec Ubuntu - comment installer deux squids
Tu peux faire un schéma de ton architecture ?
Ça me semble curieux;
Existe-t-il une commande d'installation dpkg qui permette de relocaliser le --prefix ?
--root=répertoire
Modifier root change instdir par répertoire et admindir par
dir/var/lib/dpkg.
En clair pouvoir traiter les flus HTTPS. L'objectif est de pouvoir traiter les flux avec un antivirus, un zapper de publicité, et de faire un scan avec snort et/ou prelude. De plus, de pouvoir aussi vérifier l'accès à certains site avec DansGuardian/SquidGuard.
L'objectif n'est pas de fliquer les utilisateurs mais de s'assurer que les flux HTTPS ne servent pas à encapsuler d'autres flux moins autorisés MSN, SKYPE, EMLE et autres P2P, etc...).
Donc, si je comprends bien, ton but est de :
- Appliquer une censure auprès de tes utilisateurs
- Modifier du contenu à l'insu des utilsateurs
Tes utilisateurs ont-ils le choix d'utiliser ou non ton infrastructure ? Sont-il au courant du "traitement spécial" que tu appliques à leurs données ?
Si non, alors [modération, on reste poli]
Si oui, alors c'est une infrastructure interessante, j'aimerais beaucoup en savoir plus
Dernière modification par nesthib (Le 23/09/2013, à 02:00)
Ubuntu is an ancien African word which means "I can't configure Debian"
Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.
Hors ligne
#3 Le 21/09/2013, à 21:19
- zargos
Re : SSL Inspection avec Ubuntu - comment installer deux squids
non, pas de censure autre que celle qui leur est annoncé au regard d'une charte ou d'un règlement interne et surtout aucune modification si ce n'est les pubs dont on sait qu'un grand nombre d'entre elles sont porteuses de malware ou de virus. Tout accès à internet à partir des infrastructures d'une entreprise n'implique pas son utilisation à des fins personnelles. Même si on sait que plus de 75% de l'utilisation d'internet en entreprise est à des fins personnelles totalement sans rapport avec l'activité de l'entreprise. Hors une entreprise a le droit (légal) de ne pas accepter cela à la condition bien sur que les employés en soit complètement informés. Certaines le font déjà (je pense par exemple à Renault).
Les utilisateurs sont obligatoirement informés, mais ils n'ont pas le choix d'utiliser l’infrastructure. Ceci dit l'information est de toute façon obligatoire au regard de la loi française. La plateforme ne permet pas de faire un proxy transparent. Enfin, pas que je sache en tout cas vis à vis des choix techniques.
L’objectif est de s'assurer de divers points dont les plus évident sont les suivants:
1- Un utilisateur ne contourne pas le système et les infrastructure (et vu ce que j'ai personnellement pu constater, c'est presque un sport national)
2- A son insu l'utilisateur n'est pas à l'origine d'une defaillance ou d'une brèche du système d'information
3- Que des informations pertinente et confidentielles à l’entreprise ne se baladent pas dans la nature
4- même les flux HTTPS sont scannés par un antivirus AVANT d'arriver sur le poste de l'utilisateur
5- les publicités néfastes ne viennent pas polluer le système d'information avec leur cookies traceurs et autres saloperies
6- D'avoir un état statistique technique exhaustif quand à l'utilisation technique des infrastructures liées à internet (bande passante, utilisation de cette bande passante, utilité et gestion d'un éventuel cache)
7- un autre aspect est de pouvoir tester les flux internet des smartphones dont il est plus qu’évident que la franchise et la clarté sont loin de prévaloir et pourrait permettre notamment de qualifier la qualité d'une application et le contenu de ses flux.
ceci dit nous ne vivons pas dans un pays complétement civilisé au regard de ce que ton commentaire implique de plus les lois n'ont que faire des droits de l'homme à moins que l'aspect ne soit prevu dans sa réalisation. POur cela je t renvoi à Hadopi et autres DADVSI, qui coté droit de l'homme dont un peu légères.
Mais ceci dit je comprend ta préoccupation qui ne me quitte pas l'esprit dans la réalisation de cette plate-forme qui n'est qu'une étude pour le moment.
Hors ligne
#4 Le 21/09/2013, à 21:29
- zargos
Re : SSL Inspection avec Ubuntu - comment installer deux squids
schématiquement,
1- le navigateur du client établi une connexion HTTPS avec le proxy squid en utilisant un certificat interne
2- le proxy transfert la requête HTTPS en flux HTTP vers le deuxième squid
3- le deuxieme squid etabli la connexion avec le serveur distant normalement comme s'il était lui même le navigateur
4- le flux en retour est transféré par le squid 2 vers le squid 1 en HTTP qui le transfere ensuite au navigateur via la liaison sécurisée interne HTTPS
5- ce flux est analysé par le squid1 pour les virus avec un antivirus, il est nettoyé au mieux des pubs avec adzapper
6- le flux en clair peut être analysé par DansGuardian, Prelude et/ou Snort pour y déterminer des comportements à risque
7- Squid Guard peut permettre de bloquer les site qu'on ne veut pas permettre, avec un accès public aux utilisateurs à la blackliste, car par défaut tout est autorisé sauf ce qui est explicitement interdit. En clair il n'y a d'interdiction que volontaire et ciblée.
8- des stats sont produites via Sarg, Calamaris etc....
9- la plateforme dispose d'un filtrage de type parefeu pour la protéger (utilisation de shorewall dans un premier temps, puis passage à un outils utilisable via une interface web
10- l'administration de la plate-forme est réalisée via un accès spécifique sur une interface spécifique (donc 3 interfaces sur la plateforme) en console via SSH et via une interface web.
Hors ligne
#5 Le 21/09/2013, à 21:31
- zargos
Re : SSL Inspection avec Ubuntu - comment installer deux squids
Il est clair qu'on peut utiliser cette plateforme pour en faire quelque chose de pas joli, mais ce n'est pas mon objectif. Pas plus qu'un coutelier qui fourni un beau couteau de cuisine qui peut malgré tout servi à assassiner quelqu'un.
Hors ligne
#6 Le 21/09/2013, à 21:32
- zargos
Re : SSL Inspection avec Ubuntu - comment installer deux squids
pour evenir à ma question concernant DPKG. Dans le cas de Squid, il faut avoir plusieurs répertoire pour la gestion du cache, pour exécutable, pour les fichiers de confs, pour les fichiers de logs. J'imagine que --root ne suffit pas pour tout ça? car c'est une option que j'avais vue, mais elle me semblait insuffisante
Hors ligne
#7 Le 21/09/2013, à 21:43
- Haleth
Re : SSL Inspection avec Ubuntu - comment installer deux squids
Hm, ouais en effet, --root est pas terrible
dpkg n'est clairement pas fait pour faire ce que tu souhaites
M'enfin, on peut spécifier tout ce que tu dis dans la configuration de squid
En bloc:
cache_dir ufs /var/spool/squid3 100 16 256
cache_log /var/log/squid3/cache.log
access_log daemon:/var/log/squid3/access.log squid
Le binaire devrait être le même fichier
Il te suffit donc de créer les deux configurations, et de copier le fichier /etc/init.d/squid3 vers /etc/init.d/squid3_secondary, puis de modifier ce dernier fichier en spécifiant la bonne configuration et autres valeurs (visible en début de fichier)
Ubuntu is an ancien African word which means "I can't configure Debian"
Because accessor & mutator are against encapsulation (one of OOP principles), good OOP-programmers do not use them. Obviously, procedural-devs do not. In fact, only ugly-devs are still using them.
Hors ligne
#8 Le 22/09/2013, à 02:38
- zargos
Re : SSL Inspection avec Ubuntu - comment installer deux squids
oui c'est aussi la conclusion à laquelle je suis arrivé depuis
Pas encore testé cependant
surtout que je vais activer les configuration du type SSL_Bumping et la génération dynamique de certficat ssl. Je ne suis pas encore au bout
Hors ligne
#9 Le 23/09/2013, à 03:40
- zargos
Re : SSL Inspection avec Ubuntu - comment installer deux squids
Tu peux faire un schéma de ton architecture ?
Ça me semble curieux;Si oui, alors c'est une infrastructure interessante, j'aimerais beaucoup en savoir plus
Voici un schéma de ce que je suis en train de monter comme projet d'étude:
- 3 machines virtuelles DEV01 et DEV02 pour les deux squids, et SQUID01 pour la plate-forme d'analyse.
- L'objectif à terme est de pouvoir tout mettre sur une seule machine.
- Un projet final serait aussi de faire une seule machine mais host de 3 machines virtuelles. A voir par rapport aux performances.
Hors ligne