Est-il possible de bloquer une page Web en utilisant ufw?

8

en gros j'ai deux machines X et Y.

Je veux bloquer "http: // <IP-of-Y-Here> / AFolder /" de la machine X sur le port HTTP 80 en utilisant ufw.

Trivialement, cela peut être complété (terriblement) en utilisant ufw via:

sudo ufw deny out 80

Mais est-il possible de faire quelque chose comme:

ufw deny from (X IP ADDRESS) port 80 to (Y IP ADDRESS)/AFolder

Cela satisfera mes exigences?

Ed George
la source

Réponses:

6

Non, vous ne pouvez pas utiliser ufw pour bloquer l'accès à certaines pages spécifiques d'un serveur Web mais pas à d'autres.

ufw est une interface pour iptableslaquelle contrôle le pare-feu netfilter , qui est intégré au noyau Linux. Il s'agit d'un pare-feu ordinaire - vous pouvez l'utiliser pour filtrer les paquets en fonction de leurs en-têtes.

Une adresse IP et un port sont inclus dans les en-têtes d'un paquet, mais pas le document Web en cours de récupération. Au lieu de cela, ces informations sont transmises dans les corps des paquets, après qu'une connexion est déjà établie.

Comme vous le savez probablement, il est possible de bloquer l'accès à certains sites Web (bien qu'il soit généralement assez facile pour quelqu'un de contourner le blocage), et il existe des utilitaires qui fournissent la granularité pour bloquer des pages spécifiques tout en permettant l'accès à d'autres pages sur le même serveur. Mais pour répondre à ce que vous avez demandé: ufw ne le fera pas.

Eliah Kagan
la source
6

Vous pouvez bloquer l'accès à un port sur un serveur avec ufw. man ufwa tout un tas d'exemples mais en supposant qu'il est activé, cela devrait être comme ceci:

sudo ufw deny out to <<ip address>> port 80

Je viens de tester cela sur mon propre serveur et cela fonctionne. N'oubliez pas que le port 443 est utilisé pour SSL, ce qui peut également vouloir être bloqué.

N'oubliez pas que cela bloque l'ensemble du port 80 sur ce serveur.


Si vous souhaitez commencer le filtrage en fonction des sous-dossiers (autorisant certains chemins mais pas d'autres), vous allez avoir besoin de quelque chose qui proxy les demandes. Un pare-feu ne regarde pas le contenu, il regarde les connexions. Pour un pare-feu, une demande de / sous-dossier est identique à une demande de / un-sous-dossier différent.

Donc, ce que vous recherchez, c'est un proxy transparent que vous pouvez transformer en nixing une partie de votre trafic. Le logiciel de contrôle parental est probablement votre meilleur choix pour une configuration rapide. Quelque chose comme était dansguardiancertainement populaire et je dirais que cela mérite d'être exploré. Plus d'informations sont disponibles sur le wiki:

Oli
la source
Simple et parfait. Testé le 16.04
Sam