Certificats pour le filtrage HTTPS
-
Bonjour a tous,
Je suis RSI dans un lycée pro avec son lot de pirates en herbes.
Arrivé il y a un an, j'ai dû en urgence parer au problème le plus urgent : PAS DE FILTRAGE sur la ligne. Leur proxy (forefront) ne fonctionnait plus depuis 2 ans au bas mot. La région gueulait et le budget… était inexistant.
Rapide et simple : j'ai mis un IPfire.Mais Ipfire, bien que simple, est insuffisant pour les besoins du lieu. Je me suis donc mis a PfSense avec émerveillement et agréables surprises.
Il est quasiment prêt mais je bloque sur le filtrage HTTPS.
pour le descriptif:
LAN : 272 PCs IP en 10.0.x.x/16
DMZ : 2012-R2
Packages ajoutés : sqwid
Autres fonctions assignées au pfSense : Portail captif
Je cherche a filtrer le HTTPS en suivant cet exemple https://www.youtube.com/watch?v=xAI-Z0ZAc0I
Parfait pour moi : j'ai absolument besoin d'un proxy transparentMon problème: le certificat que j’installe sur ma machine test n'a aucun effet. Les sites en https ne s'ouvrent plus. Tant mieux pour facebook... dommage pour yahoo, wikipedia, youtube etc...
Avez vous une piste?
PS: en aparté y a t-il une solution pour forcer le safesearch dans google image toujours en transparent?
-
Quelques remarques générales :
-
un fonction de 'Responsable de Sécurité' suppose des connaissances approfondies en 'protocoles'
-
il est (toujours) nécessaire d'adapter les moyens à la menace
-
la fonction de 'proxy transparent' est une fausse bonne idée : ne fonctionne que pour HTTP, peut fonctionner avec HTTPS qu'avec suppression du vrai certificat et remplacement par un faux certificat
-
avec 227 pc clients possible (/16=65634 maxi !), il est à conseiller d'utiliser un proxy dédié et de mettre en place WPAD
-
quelle identification pensez vous utiliser ? (est ce compatible avec 'transparent' ?)
-
dans un établissement scolaire, il y a nécessité de blacklist …
Ne confondez pas solution et besoin !
Posez bien vos besoins, en premier, quitte à accepter quelques contraintes ...Il y a un célèbre phrase de Benjamin FRANKLIN : Un peuple prêt à sacrifier un peu de liberté pour un peu de sécurité ne mérite ni l'une ni l'autre, et finit par perdre les deux.
Avec l'accès à Internet, il faut nécessairement un peu de contrainte : comment identifier les utilisateurs ? est la question incontournable ! -
-
Quelques réflexions sur votre problématique.
1.
Parfait pour moi : j'ai absolument besoin d'un proxy transparent
J'ignore pourquoi vous en avez absolument besoin, pas du proxy, mais du mode transparent.
Pour le mode transparent c'est une façon de faire qui n'est pas conforme aux dispositions légales.2.
LAN : 272 PCs IP en 10.0.x.x/16
Avec un parc de cette taille le proxy dédié s'impose, hors du firewall. Vous trouverez sur le forum de nombreuses discussions sur le sujet. Nous sommes plusieurs à avoir expliqué en quoi cette solution est préférable. Notamment parce d'un point de vue légal vous avez besoin de stocker une année de logs.
3.Interception https.
Là aussi il faut prendre en compte les contraintes légales. Cette opération est techniquement réalisable mais revient à usurper l'identité de l'internaute. Sur le sujet je vous recommande la lecture d'un document publié par l'ANSI.
https://www.ssi.gouv.fr/administration/guide/recommandations-de-securite-concernant-lanalyse-des-flux-https/
En particulier à partir de la page 30 pour l'aspect juridique.J'ajoute que je partage les points de vie de JDH dans le post qui précède.
-
Merci pour vos réponses.
Je ne suis pas responsable de sécurité mais des systèmes informatiques. Sécuriser (a mon niveau) le parc n'est qu'une de mes taches. Je ne suis pas un spécialiste.
Pour ce qui est du mode transparent, ce n'est pas par choix. Il s'agit d'un ensemble scolaire privé de plusieurs établissement et les normes sont déterminées par le responsable "général".
J'ai parlé a plusieurs reprises du mode transparent et de ces contraintes mais ils ne veulent rien entendre. Je fais avec ce que j'ai.
Il s'agit bien d'un proxy dédié.
L'identification est gérée pour les PCs par AD et mes responsable ne veulent pas d'un portail en plus pour le net.
Allergiques au mots de passe.En gros, mes contraintes:
Un filtrage avec blacklist (déjà mis en place), en transparent, sans identification autre que les sessions windows.
D’où mon problème pour filtrer correctement le HTTPS et activer safesearch sur tout les profils (la gpo de 2012-r2 n'est pas efficace pour ça).
Le fait de permettre l'acces au site en HTTPS via un certificat me plaisait bien. J'avais juste a l'exporter de pfsense et l'ajouter a ma gpo… Mais c'est sans effet.
-
Merci ccnet pour le lien.
Peut-être qu'avec un texte sous les yeux je serais plus convainquant. -
Je vous bien dans quelle position vous êtes face à des dirigeants. Je ne suis pas certain que le responsable général intègre tous les aspects du problème.
Vous pouvez aussi consulter : https://www.legifrance.gouv.fr/affichTexte.do?cidTexte=JORFTEXT000000801164&dateTexte=&categorieLien=id
Dans la situation de votre structure c'est la jurisprudence qui dispose que vous êtes assujetti aux mêmes obligations que les opérateurs Telecom s'agissant de la collecte et conservation des données de connexion.
Sur l’interception (et donc déchiffrement) vous pouvez aussi regarder le site de la Cnil Et enfin cet établissement privé est sans doute sous tutelle du ministère de l'éducation. Il se pourrait que le RGS (Référentiel Général de Sécurité) s'applique comme à toutes les entités de l'état. La réponse n'est pas évidente.
Techniquement, vous pouvez utiliser AD pour authentifier vos utilisateurs sur le proxy. Pas de login mot de passe supplémentaire. -
Un proxy dédié (vu la taille) est indispensable.
Obliger les navigateurs à passer par ce proxy est simple avec WPAD (hors Firefox où il faut indiquer "Détection auto des paramètres" au lieu du "Utiliser les param proxy system" qui est, hélas, le défaut)Sur ce proxy dédié, on doit trouver Squid (proxy HTTP, HTTPS et FTP) + SquidGuard + …
L'authentification via l'AD est 'ajoutable' au niveau de proxy et contrôlable avec SquidGuard :
grâce à WPAD et l'AD, cela sera 'transparent' pour l'utilisateur et respectera la sécurité de HTTPS (=présentation du bon certificat)En fait il y a confusion entre 'mode transparent' d'un proxy et 'transparence' par absence de saisie d'un mot de passe, etc ...
(Je suis de moins en moins présent sur ce site, mais je partage quasi toujours le point de vue de ccnet, même si nous ne nous connaissons pas physiquement ...
C'est un expert, vous pouvez avoir confiance dans sa réflexion et sa pratique : cf la qualité des doc dont il fournit les URL !) -
Merci pour tout ça.
Je me met au WPAD. Le temps me manque mais a force…
jdh : en gros j'ai tout sauf le WPAD. L’authentification AD avait des ratés. Je doit m'y pencher a nouveau.
-
Je reviens vers vous pour vous demander si vous avez un lien vers un guide, un tuto ou autre pour le wpad en transparent … si c'est du domaine du possible.
Les sites youporn et pornhub (entre autre) sont maintenant en https... Si je ne trouve pas de solution mes responsables vont peut etre changer d'avis ceci dit.
-
Si vous aviez cherché un peu sur le site, par exemple avec le mot clé WPAD, vous auriez trouvé.
Je suis certain que quelqu'un a rédigé un fil assez complet sur le sujet …. -
Dans le design de la solution, il ne faut pas te focaliser sur WPAD qui n'est, finalement, "que" le service qui va permettre d'éviter de devoir configurer la grande majorité des navigateurs à la main.
A noter que, même si la solution est loin d'être idéale, tu peux, dans un environnement "full Windows domain" pousser le proxy par GPO.
Pour en revenir à WPAD, j'ai écris il y a quelques années ça. Ce n'est pas pour pfSense mais c'est facile à adapter car le principe ne change pas.
En gros, en terme de démarche, WPAD est vraiment la dernière roue du carrosse.
Dans l'ordre, de mon point de vue, il faut commencer par:
1 - t'assurer que ton proxy en mode explicite fonctionne correctement, y compris en ce qui concerne l'authentification et le filtrage
=> ça se vérifie en configurant ton proxy manuellement dans le browser
2 - déployer sur un serveur web interne un fichier proxy.pac qui fonctionne
=> ça se vérifie en définissant manuellement l'URL du proxy.pac dans le navigateur
3 - tu peux alors, et uniquement après les 2 étapes précédentes, pousser via DHCP et DNS (je te conseille de vraiment implémenter TOUTES les solutions de publication car tous les clients ne s'appuient pas sur la même) l'URL du proxy.pac, car au final, WPAD, ce n'est qu'une manière de dire où trouver le proxy.pac
=> ton browser en mode "automatique" devrait alors accéder au proxy.pac qui lui dit où se trouve le proxyCe n'est pas plus compliqué que ça 8)
Et ça ne marche pas pour 100% des devices, notamment avec les smartphones.Tu noteras que WPAD n'adresse absolument pas d'autres points qui sont pour toi importants dans le design, comme par exemple l’authentification unique basée sur celle du domaine. Il y a plein de tutos sur le web pour ça. Par exemple.
L'important, c'est de bien comprendre quel sont les besoins et les priorités et quelles solutions techniques les adressent et, à partir de là, de ne pas essayer de résoudre toutes les questions en parallèle.
Enfin, si tu as un domaine Windows, il est fort probable que ton DNS et ton serveur DHCP soient ceux de Microsoft: ça ne change absolument rien à ce que je décris ci-dessus.
Il faut juste pousser l'option 252 de DHCP avec le serveur Microsoft. Et idem pour les enregistrements DNS. Et pfSense ne sert à rien dans ce design… sauf à s'assurer que seul le proxy et quelques éventuelles autres machines peuvent accéder à internet :) -
Merci chris4916
j'ai trouvé des tutos assez sympas pour faire tout ça ;D
pour d’éventuels passants
https://nguvu.org/pfsense/pfSense-2.3-WPAD-PAC-proxy-configuration-guide/
Je vais commencer par tester ça :D
-
Comme je l'ai écrit, il y a, sur ce forum, un fil assez complet sur la mise en oeuvre de WPAD … (nul besoin d'aller ailleurs)
Le post de Chris1496 est, à son habitude, : oui mais non mais oui, bref embrouillant parce qu'il veut absolument rajouter SA participation
Pourtant le raisonnement est très simple :
- nécessité de filtrer HTTP et HTTPS
- solution 1 : proxy transparent : ok pour HTTP, incorrect pour HTTP, aucun impact sur tous browser ou tous logiciels, DONC à revoir
- solution 2 : proxy explicite : ok pour HTTP et HTTPS, mais nécessité de configurer tous browser et tous logiciels, DONC à améliorer
- WPAD : permet l'auto-config des navigateurs (IE, Chrome, Edge) et quelques logiciels (pas tous), pour Firefox une option à cocher
- il restera (toujours) les smartphone, les logiciels qui vérifient leur mise à jour sans regarder la conf proxy 'système', les wget pour lequel il faut 'export http_proxy', ...
Les GPO, déjà mentionné par le même, n'est qu'un gros marteau qui ne fonctionne QUE pour les pc internes de l'entreprise (sous Windows).
Bref WPAD fait mieux et plus simple ...Au moins dans ce fil, il y a les bons liens, et notamment l'apport de Juve pour 'autoprox'
-
Salut tout le monde!
Poiral j'ai, à un de chose près, la même problématique que toi…
Si tu pouvais partager ta manipulation pour mettre en place WPAD ça serait super sympa ! ;D
J'essaie d'installer WPAD depuis quelques jours, essayer le tuto que tu as mis un peu avant et encore d'autres, mais rien n'y fait :'( -
Donc, cela fait 2 personnes qui n'arrivent pas à trouver un fil 'synthèse' sur WPAD sur ce forum et à en suivre les indications …
La recherche doit être plus difficile que je le pensais ... -
J'essaie d'installer WPAD depuis quelques jours, essayer le tuto que tu as mis un peu avant et encore d'autres, mais rien n'y fait :'(
Si tu décrivais ce que tu fais, ce qui fonctionne et ce qui ne fonctionne pas, ce serait beaucoup plus simple pour t'aider.
- est que le proxy fonctionne en mode explicite ?
- est-que ton proxy.pac fonctionne ?
- arrives-tu à le lire sur le serveur "http://wpad.tondomain/wpad.dat" ?
- comment pousses-tu l'information relative à ce serveur ? (WPAD, c'est cette ligne uniquement et c'est assez simple, via DHCP et/ou DNS)
-
jdh ton post sur wpad est, je pense, très complet! (https://forum.pfsense.org/index.php?topic=105675.msg643146#msg643146) je l'ai relu ton post en long large et travers, depuis plusieurs jours en espérant pouvoir me débloquer.
Comme je l'ai dit juste avant, ayant vu plusieurs tutos, topics de forum (pour ne pas dire beaucoup! Mes résultats sur Google s'affichent maintenant en grande majorité violet!)
Mais malgré cela, en ayant :
- Créé les 3 fichiers .pac, .dat et .da dans le répertaoire /usr/local/www/ de mon routeur
function FindProxyForURL(url, host) { if (isInNet(host, "192.168.2.0", "255.255.255.0")) { return "DIRECT"; } else { if (shExpMatch(url, "http:*")) return "PROXY 192.168.2.254:3128" ; if (shExpMatch(url, "https:*")) return "PROXY 192.168.2.254:3128" ; if (shExpMatch(url, "ftp:*")) return "PROXY 192.168.2.254:3128" ; return "DIRECT"; } }
- Ajouté l'option 252 sur le dhcp de mon LAN pour chaque fichier
- Ajouté un "Host Overrides" wpad
- Bloqué les ports 80 et 443 (Internet coupé)/ Créé un port Forwarding des 80 et 443 vers celui du proxy (3128) (ne redirige rien du tout)
Et en testant avec monip.org et lagado.com pour vérifié si mon proxy était détecté ( Il ne l'est pas )
je n'arrive pas à mettre en place WPAD
voilà voilà
Donc tout ça pour dire, oui jdh j'ai vu ton post ;D
-
Merci Chris4916 :)
Oui le Proxy fonctionne en mode explicite, lorsque je renseigne dans les options du navigateur l’adresse de celui-ci.
Comment peut-on vérifier le fichier proxy.pac? ???
Quand j'écris l'adresse http://wpad.mondomain/wpad.dat je récupére bien le fichier wpad.dat
Pour ce qui est pousser l'information, comme je l'ai dit juste avant j'utilise le DNS Forwarder et mon DHCPPetite information supplémentaire,
Je sais qu'il a été dit et re-dit d'utiliser un serveur Proxy dédié mais le proxy se trouve sur mon routeur car j'ai n'ai qu'une quinzaine de connections à tenir maximum, et pas d'autres PCs à pouvoir mettre en place.Voilà voilà :D
-
Donc probablement que ta syntaxe pour l'option 252 n'est pas la bonne.
Voila un exemple qui fonctionne.
Option: 252
type: string
Value: "http://wpad.mon_domaine/wpad.dat" (avec les quotes)un petit point de détail: un des modes de découverte de l'URL du proxy se base sur la résolution de nom.
Il faut donc que ton serveur DHCP pousse un domaine de recherche, mais ce doit être le cas avec le serveur DHCP de pfSense.
Tu peux le vérifier en cherchant "http://wpad/wpad.dat"Pour le DNS (je n'utilise pas "forwarder" mais "resolver"):
local-data: "wpad IN TXT service:wpad: http://wpad.mon_domaine/wpad.dat"
local-data: "_wpad._tcp IN SRV 0 0 80 wpad.mon_domaine."Et le forward des ports 80 et 443 vers le port 3128…. bof... quelle utilité si tu as un proxy en mode explicite ?
-
Mon Option 252 est juste, je l'avais bien écrit comme ça :)
Pour ce qui est du DNS resolver je pensais pas qu'il y avait de l'importance
Je Check tout ça demain matin ! :)