IPCop permet de filtrer facilement les sites web https en utilisant un firewall et un proxy qui NE DOIT PAS être configuré en mode transparent ( https://blog.lesfourmisduweb.org/pourquoi-il-ne-faut-pas-utiliser-squid-en-mode-transparent/ )
Pour IPCop 1.4.x, il faut utiliser les addons Blockouttraffic (firewall), Advanced Proxy (proxy squid) et URLFilter.
Pour IPCop 2.x.x, il n'y a pas besoin d'addon car le proxy et le firewall sont déjà intégrés.
Principe :
- activer le proxy d'IPCop (PAS en mode transparent)
- dans les options du proxy, indiquer les sites à bloquer (ils seront bloqués qu'ils soient en https ou non)
- au niveau du firewall d'IPCop, autoriser l'accès des PC à filtrer vers IPCop avec le port du proxy et bloquer tous les accès vers Internet (ainsi les PC peuvent seulement communiquer avec le proxy et si l'utilisation du proxy est désactivée au niveau d'un PC (options du navigateur par exemple) celui ne pourra accéder à rien du tout).
- au niveau des PC filtrés, configurer les applis qui doivent accéder à internet pour qu'elles utilisent le proxy (options du navigateur, ...).
Consulter la doc d'IPCop pour mettre en oeuvre cette méthode.
En cherchant sur Internet j'avais trouvé la méthode suivante mais elle ne fonctionne pas car iptables fait une seule requête DNS pour convertir les noms de domaine en adresse IP et facebook/youtube/twitter ont plusieurs adresses IP donc elles ne seront pas toutes bloquées et les sites restent accessibles.
# Used for private firewall rules
# source : http://adabi.kelatekito.my/block-faceboo-https-port-using-ipcop/#codesyntax_1
# usage /etc/rc.d/rc.firewall.local start|stop|reload
# See how we were called.
case "$1" in
start)
## add your 'start' rules here
iptables -t nat -I PREROUTING -m tcp -p tcp -d facebook.com --dport 443 -j DROP
iptables -t nat -I PREROUTING -m tcp -p tcp -d twitter.com --dport 443 -j DROP
iptables -t nat -I PREROUTING -m tcp -p tcp -d youtube.com --dport 443 -j DROP
;;
stop)
## add your 'stop' rules here
iptables -t nat -I PREROUTING -m tcp -p tcp -d facebook.com --dport 443 -j ACCEPT
iptables -t nat -I PREROUTING -m tcp -p tcp -d twitter.com --dport 443 -j ACCEPT
iptables -t nat -I PREROUTING -m tcp -p tcp -d youtube.com --dport 443 -j ACCEPT
;;
reload)
$0 stop
$0 start
## add your 'reload' rules here
#iptables -t nat -I PREROUTING -m tcp -p tcp -d facebook.com --dport 443 -j DROP
#iptables -t nat -I PREROUTING -m tcp -p tcp -d twitter.com --dport 443 -j DROP
#iptables -t nat -I PREROUTING -m tcp -p tcp -d youtube.com --dport 443 -j DROP
;;
*)
echo "Usage: $0 {start|stop|reload}"
;;
esac
Aucun commentaire:
Enregistrer un commentaire