Je comprends que très simplement mettre un proxy est une sorte d '"homme au milieu" autorisant/refusant l'accès à certains services/ressources. Strictement en termes de sécurité (je veux dire ici la confidentialité, le contrôle parental et autres exclus), peut-il offrir une sécurité supplémentaire par rapport à un pare-feu?
Oui, un proxy peut fournir une sécurité supplémentaire.
Preuve par l'exemple:
Un proxy comprend le protocole pour lequel il est conçu. Cela signifie que certains logiciels proxy peuvent autoriser ou interdire le trafic en fonction des éléments du protocole. Pour donner un exemple, votre proxy peut interdire le trafic HTTP avec un certain User-Agent:
en-tête ou autoriser uniquement le trafic avec certains Referer:
en-têtes. Un proxy peut également exiger une authentification avant d'envoyer les demandes.
Tous les logiciels proxy n'ont pas cette capacité. Certains procureront simplement les demandes sans analyse du contenu au-delà de ce qui est nécessaire pour répondre à la demande.
Un proxy inverse (souvent utilisé devant un serveur Web) peut potentiellement protéger contre les failles du logiciel du serveur Web. Il peut également présenter des défauts que le logiciel du serveur Web ne présente pas.
Un pare-feu réseau ne comprend pas le protocole HTTP et ne peut pas autoriser ou refuser le trafic en fonction des éléments de ce protocole. Il ne peut autoriser ou refuser que sur la base des protocoles de niveau inférieur tels que IP, TCP et UDP. Les pare-feu réseau ne peuvent pas faire d'authentification car cela n'est pas intégré aux niveaux inférieurs de la pile OSI .
Application Firewalls d'autre part comprendre le protocole de l'application pour laquelle ils ont été conçus et autoriser ou refuser le trafic en fonction du contenu du trafic. Je n'en ai pas vu un qui puisse faire l'authentification mais c'est certainement possible.
Un pare-feu d'application Web n'est qu'un pare-feu d'application conçu pour les protocoles Web.
De nombreux pare-feu commerciaux sont également (au moins partiellement) des pare-feu d'application.
Donc, que vous obteniez une sécurité supplémentaire d'un pare-feu ou d'un proxy dépend en grande partie du pare-feu ou du proxy que vous utilisez. Cela dépendra généralement de la façon dont il est configuré. En l'absence de configuration spécifique axée sur la sécurité, vous n'obtiendrez généralement aucune sécurité supplémentaire avec un pare-feu ou un proxy.
En fait, le terme pare-feu est couramment utilisé à mauvais escient et les gens l'utilisent généralement pour faire référence au filtrage de paquets qui n'est pas strictement correct.
Vous pouvez classer les pare-feu en 2 catégories. Filtrage de paquets et passerelles d'application (proxy AKA).
Le filtrage des paquets au niveau du protocole de service (par exemple, HTTP, SMTP, etc.) est une mauvaise approche par rapport aux passerelles d'application. Les passerelles d'application ont des connaissances sémantiques sur le protocole et sont beaucoup plus puissantes car elles peuvent regarder le contenu (HTTP: vérifier si vous téléchargez des logiciels malveillants, SMTP rechercher les virus et refuser un courrier particulier). Cela dit, c'est un fait que vous ne pouvez pas avoir de proxy pour tous les protocoles de service existants. Le filtrage de paquets, fonctionnant à un niveau inférieur, bien que n'ayant pas une granularité aussi fine, finit par être une approche plus universelle pour tous les protocoles (SMTP: n'acceptez rien pour le port 25 d'IP xx.xx.xx.xx).
Quoi qu'il en soit, il n'y a aucune raison de choisir l'un plutôt que l'autre. Vous pouvez les utiliser ensemble et tirer le meilleur parti de chaque solution.
Remarque: comme @Ladadadada l'a mentionné, tous les proxys ne peuvent pas effectuer de filtrage ou d'inspection approfondie, donc je dirais qu'il n'est pas correct de dire que tous les proxys sont des pare-feu. Mais vous pouvez toujours les considérer comme un élément de votre infrastructure de sécurité.
De nombreux pare-feu de filtrage de paquets "traditionnels" peuvent désormais regarder un niveau plus haut sur la pile réseau et effectuer une inspection de contenu (par exemple: inspection de contenu http/refus d'url)