web-dev-qa-db-fra.com

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

j'ai essentiellement deux machines X et Y.

Je souhaite bloquer "http: // <IP-of-Y-Here>/AFolder /" de la machine X sur le port HTTP 80 à l'aide de 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 dans le sens de:

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

Cela va satisfaire mes exigences?

8
Ed George

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

ufw est une interface pour iptables qui contrôle le pare-feu netfilter , 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 le document Web en cours de récupération ne l'est pas. Au lieu de cela, ces informations sont transmises dans le corps des paquets, une fois la connexion é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 de contourner le blocage), et il existe des utilitaires qui fournissent la granularité nécessaire pour bloquer des pages spécifiques tout en permettant l’accès à d’autres pages sur le même site. même serveur. Mais pour répondre à ce que vous avez demandé: Ufw ne le fera pas.

6
Eliah Kagan

Vous pouvez bloquer l'accès à un port sur un serveur avec ufw. man ufw a toute une série d'exemples, mais en supposant qu'il soit activé, il devrait ressembler à ceci:

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

Je viens de tester cela sur mon propre serveur et cela fonctionne. Rappelez-vous que le port 443 est utilisé pour SSL, il est donc possible que vous souhaitiez également le bloquer.

Souvenez-vous que ceci bloque la totalité du port 80 sur ce serveur.


Si vous souhaitez commencer à filtrer en fonction des sous-dossiers (en autorisant certains chemins mais pas d'autres), vous aurez besoin de quelque chose qui envoie les requêtes par proxy. Un pare-feu ne regarde pas le contenu, il regarde les connexions. Pour un pare-feu, une demande pour/sous-dossier est identique à une demande adressée à/a-different-sous-dossier.

Vous recherchez donc un proxy transparent que vous pouvez utiliser pour réduire en partie votre trafic. Le logiciel de contrôle parental est probablement votre meilleur choix pour une installation rapide. Quelque chose comme dansguardian était certainement populaire et je dirais que cela mérite une exploration. Plus d'informations sont disponibles sur le wiki:

6
Oli