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 Laughing:

#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 :

https://127.0.0.1/youtube.txt

L'alias url sera périodiquement et automatiquement rafraichit ... Smile

 

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)