Block Youtube, Facebook et autre via PFSENSE
Le principe le plus simple est de créer un alias puis de l'utiliser dans une règle ou un filtre de proxy.
Un alias est un conteneur : il peut contenir une liste de réseaux, une liste de port ou une liste d'adresses ip.
https://doc.pfsense.org/index.php/Aliases
Comment récupérer la liste de toutes les Ip du domaine que nous désirons bloquer :
'Whois' est la commande qu'il nous faut.
En lui donnant comme support RADB. Un registre public des informations de routage réseau qui facilite le transfert de données sur Internet.
Pour récupérer les listes d'IPs, nous utiliserons un shell LINUX ou FREEBSD
Pour installer whois sur PFSENSE :
Installer d'abord le gestionnaire de package pkg :
#pkg
Et valider l'install. Puis updater les packages de pkg :
#pkg update
Puis installer whois :
#pkg install whois
#rehash
La commande whois est maintenant active (mwhois) :
>mwhois google.com
.....
Maintenant, pour obtenir la liste des ips de FACEBOOK taper (attention au g de !g...) :
#mwhois -h whois.radb.net '!gAS32934'
AS32934 est le nom “OriginAS:” de Facebook
Vous pouvez trouver les OriginAS de tous les domaines du net grace a ce lien : http://centralops.net/co/, qui semble ne plus fonctionner...
Un plugin pour Firefox -> https://addons.mozilla.org/fr/firefox/addon/originas/
Par exemple, “OriginAS:” de YOUTUBE est : AS15169 (une fois installé vous avez un popup en bas de page lors du browsing ...)
Il ne vous reste plus qu'a envoyer cette sortie écran vers un fichier en effectuant quelques traitements de hashage
:
#mwhois -h whois.radb.net -- '-i origin AS15169' | grep ^route | grep -v route6 | cut -d" " -f7 > /usr/local/www/youtube.txt
Vous pouvez mettre cette commande dans un Cron (un package Cron est dispo sur PFSENSE via le menu System -> Packages ...) et programmer son execution régulière ...
Puis se rendre sur l'interface web PFSENSE : Créer un nouvel alias via le menu Firewall
Choisir comme type d'alias 'URL TABLES (IPs)', lui donner un nom explicite (YOUTUBE par ex) puis mettre le chemin d'acces à votre fichier en référence d'url :
L'alias url sera périodiquement et automatiquement rafraichit ... 
Puis se rendre dans Firewall -> rules -> LAN -> Créer une règle 'Block' a destination de l'alias 'YOUTUBE'.
Si vous désirez que cette règle n'affecte que certaine machine de votre réseau, spécifier leur IP ou leur ALIAS dans la zone 'Sources'.
Sauver puis raffraichissez les règles ...
That's all !
(Pour aller plus loin : http://www.derman.com/blogs/Loading-BlockLists-Into-pfSense)
