Aller au contenu
Avanet

Configurer et tester un upstream proxy sur Sophos Firewall

Un upstream proxy, également appelé parent proxy, est l’instance proxy suivante derrière Sophos Firewall. Les clients internes envoient d’abord leurs Web Requests au Web Proxy du firewall. Le firewall inspecte le trafic puis le transmet au proxy supérieur. C’est seulement ce dernier qui établit la connexion à Internet.

Sophos Firewall prend en charge exactement un upstream proxy. DPI Engine ne peut pas utiliser ce chemin. Les règles web concernées doivent donc fonctionner en mode proxy avec Use web proxy instead of DPI engine.

⚠️ Le parent proxy constitue une dépendance globale pour les Web Requests en mode proxy. Avant de l’activer, documenter une sauvegarde récente, une connexion d’administration indépendante, les règles proxy existantes, le chemin NAT d’origine et un chemin retour testé. Sophos Firewall ne propose pas une seconde entrée de parent proxy comme destination de failover intégrée.

Cette procédure traite les requêtes HTTP et HTTPS transférées depuis les réseaux internes. Elle n’affirme pas que le trafic système du firewall, les mises à jour du firmware ou les connexions de licence utilisent le même chemin de parent proxy.

Upstream proxy en dix étapes

  1. Définir un client pilote administré, une requête web autorisée et une autre bloquée.
  2. Déterminer si le parent proxy se trouve dans WAN, LAN ou DMZ.
  3. Documenter l’IP, le port, le compte de service facultatif, le routing et le chemin retour du proxy.
  4. Créer le proxy comme IP Host et vérifier que le firewall peut l’atteindre.
  5. Sous Routing > Upstream proxy, sélectionner Parent proxy et saisir l’adresse, le port et les identifiants facultatifs.
  6. Configurer la règle web du client avec Use web proxy instead of DPI engine et activer le logging.
  7. Pour un proxy dans WAN, créer une règle limitée du client vers le proxy et vérifier la règle SNAT effective.
  8. Pour un proxy dans LAN ou DMZ, traduire également le chemin client avec MASQ et créer une règle proxy-vers-WAN dédiée sans Web Policy ni analyse antimalware.
  9. Valider les accès autorisé, bloqué et direct au proxy à l’aide de la Firewall Rule ID, de la NAT Rule ID, des logs web et des logs du proxy.
  10. Tester la panne du proxy, le failover HA et le rollback dans une fenêtre de maintenance avant d’ajouter d’autres réseaux.

Comprendre deux connexions et deux topologies

Le chemin de données se compose de deux connexions distinctes :

  1. Le client envoie une requête HTTP ou HTTPS au Web Proxy de Sophos Firewall ou à travers celui-ci.
  2. Sophos Firewall la transforme en connexion vers le parent proxy, qui transmet la requête à Internet.

Le navigateur ne doit donc pas pointer directement vers le parent proxy. Avec un Direct Web Proxy et un fichier PAC explicites, Sophos Firewall reste la destination proxy du client. Le parent proxy est le saut suivant derrière le firewall.

Parent proxy dans WAN

Si le parent proxy se trouve dans WAN, le chemin de données nécessite, en plus de la règle Web Proxy, une règle firewall des réseaux clients internes vers l’hôte et le port précis du proxy. La règle Default SNAT IPv4 existante masque normalement les adresses source privées. Une règle SNAT distincte n’est nécessaire que si ce chemin doit utiliser une autre Source Translation.

Parent proxy dans LAN ou DMZ

Si le parent proxy se trouve dans LAN ou DMZ, son chemin Internet reste derrière Sophos Firewall. Trois composants supplémentaires sont nécessaires :

  • une règle firewall du client vers le proxy,
  • une règle SNAT MASQ limitée à ce chemin,
  • une règle proxy-vers-WAN sans Web Policy ni nouvelle analyse antimalware ou de contenu.

La règle proxy-vers-WAN doit se trouver au-dessus des règles qui se chevauchent en mode Web Proxy. Sinon, le trafic généré par le parent proxy peut entrer une nouvelle fois dans le chemin proxy ou être inspecté différemment de ce qui était prévu.

Exemple et valeurs à remplacer

L’article utilise deux variantes :

  • Client pilote : CLIENT-WEB-01
  • IP fixe du client : 10.20.30.50
  • Réseau client : 10.20.30.0/24
  • Zone client : LAN
  • Règle web : LAN_Web_ParentProxy_Pilot
  • Port du parent proxy : 3128
  • Proxy WAN : PARENT-WAN_192.0.2.80
  • IP du proxy WAN : 192.0.2.80
  • Proxy DMZ : PARENT-DMZ_10.20.40.20
  • IP du proxy DMZ : 10.20.40.20
  • Zone DMZ : DMZ
  • Compte proxy facultatif : svc_sfos_parent_proxy

192.0.2.80 est une adresse de documentation qui doit être remplacée par l’adresse IP publique ou côté fournisseur réelle de l’upstream proxy. 10.20.40.20 représente un proxy interne dans sa propre DMZ. Du point de vue de Sophos Firewall, l’adresse choisie doit être joignable par le chemin prévu.

Sophos accepte une adresse IPv4, IPv6 ou un nom de domaine. Pour un chemin de données maîtrisable, préférer l’adresse IP : Sophos la recommande afin d’empêcher les clients de contourner le Web Proxy du firewall en accédant directement à l’upstream proxy. Un nom de domaine ne constitue pas un second proxy ni un mécanisme de failover documenté.

Le port 3128 est couramment utilisé pour les proxies, mais ce n’est pas une valeur produit immuable. Si le parent proxy utilise un autre listener, l’objet hôte/service, les règles firewall, Packet Capture, le monitoring et les tests doivent tous utiliser le même port.

Le compte facultatif n’est utilisé que si le parent proxy exige une authentification. Utiliser un compte de service dédié et doté des privilèges minimaux, documenter la rotation du mot de passe et le responsable, et ne pas enregistrer de comptes administrateur personnels.

Saisir globalement le parent proxy

Avant la modification, le firewall doit pouvoir atteindre le proxy via le routing et le chemin firewall prévus. Un port TCP ouvert ne prouve pas à lui seul que l’authentification proxy ou le transfert HTTP fonctionne.

  1. Sous Hosts and services > IP host, créer l’hôte précis du proxy.
  2. Sous Routing > Upstream proxy, sélectionner Parent proxy.
  3. Saisir l’adresse IP ou le nom de domaine du parent proxy. Pour cette procédure, utiliser l’IP confirmée.
  4. Saisir le port réel du proxy, 3128 dans cet exemple.
  5. Saisir un nom d’utilisateur et un mot de passe uniquement si le proxy exige une authentification.
  6. Enregistrer avec Apply.

Ce paramètre ne fonctionne pas comme une règle firewall individuelle limitée au pilote. Des règles précises et leur ordre délimitent le pilote. Avant d’enregistrer, recenser toutes les règles existantes qui utilisent déjà Use web proxy instead of DPI engine.

Configurer la règle web en mode proxy

La règle web du réseau interne vers WAN associe la Web Policy et l’analyse à la première partie du chemin de données. Les règles firewall sur Sophos Firewall expliquent le fonctionnement général.

Créer une règle dédiée au pilote ou adapter de manière limitée une règle pilote existante :

  • Source zones : LAN
  • Source networks and devices : CLIENT-WEB-01 ou le réseau pilote confirmé
  • Destination zones : WAN
  • Destination networks : uniquement les destinations web prévues ou délibérément Any
  • Services : les services HTTP/HTTPS nécessaires
  • Web policy : la stratégie pilote préparée
  • Scan HTTP and decrypted HTTPS: uniquement si la protection prévue l’exige
  • Use web proxy instead of DPI engine: activé
  • Log firewall traffic : activé

Web Protection sur Sophos Firewall explique comment valider les catégories, les exceptions et des destinations réellement autorisées et bloquées.

Le parent proxy ne fonctionne pas avec DPI Engine. L’état vert d’une règle ne prouve pas le chemin réel. Après l’enregistrement, la requête de test doit afficher la Firewall Rule ID et la Web Policy attendues.

Le déchiffrement HTTPS est une décision distincte. Si Sophos Firewall et le parent proxy déchiffrent tous deux TLS, il faut savoir quelle instance émet quel certificat et où se produit une erreur. Le déploiement contrôlé de TLS Inspection reste la procédure détaillée.

Connecter un parent proxy dans WAN

Pour un proxy dans WAN, créer une règle supplémentaire qui autorise explicitement le saut vers le proxy :

  • Name : LAN_to_PARENT-WAN_3128
  • Source zones : LAN
  • Source networks and devices : 10.20.30.0/24 ou le pilote plus limité
  • Destination zones : WAN
  • Destination networks : PARENT-WAN_192.0.2.80
  • Services : un service TCP dédié pour 3128
  • Log firewall traffic : activé

La règle ne doit pas devenir une autorisation LAN-vers-WAN générale et étendue. Conserver un hôte et un port de proxy précis. Après le test, vérifier à l’aide de la Firewall Rule ID que cette règle exacte correspond.

Dans une configuration standard, Default SNAT IPv4 masque souvent les adresses privées des clients. Il faut néanmoins vérifier la NAT Rule ID effective dans Log Viewer et Packet Capture. Une nouvelle règle SNAT n’est pertinente que si le proxy du fournisseur exige une adresse source précise ou si le chemin NAT existant ne correspond pas. NAT sur Sophos Firewall en explique les bases.

Connecter un parent proxy dans LAN ou DMZ

Pour un proxy dans LAN ou DMZ, séparer son propre trafic Internet du chemin client-vers-proxy.

Créer la règle client-vers-proxy

La première règle n’autorise que le chemin client confirmé :

  • Name : LAN_to_PARENT-DMZ_3128
  • Source zones : LAN
  • Source networks and devices : 10.20.30.0/24 ou le pilote plus limité
  • Destination zones : DMZ
  • Destination networks : PARENT-DMZ_10.20.40.20
  • Services : un service TCP dédié pour 3128
  • Log firewall traffic : activé

Si le proxy se trouve dans LAN, utiliser sa zone réelle. La procédure de production Avanet ne nécessite pas Any comme Source ou Destination.

Créer le SNAT uniquement pour ce chemin

Sous Rules and policies > NAT rules, créer une règle Source NAT limitée :

  • Original source : 10.20.30.0/24 ou le pilote plus limité
  • Translated source (SNAT) : MASQ
  • Original destination : PARENT-DMZ_10.20.40.20
  • Translated destination (DNAT) : Original
  • Original service : TCP 3128
  • Inbound interface : l’interface client confirmée ou délibérément Any
  • Outbound interface : l’interface vers le proxy ou délibérément Any

Ne définir les champs d’interface que si le chemin réel est stable. Une interface incorrecte empêche la correspondance. Valider la règle avec la NAT Rule ID attendue et pas seulement selon sa position.

Créer la règle proxy-vers-WAN sans nouvelle inspection web

Le parent proxy a besoin d’une règle dédiée à ses connexions Internet :

  • Name : PARENT-DMZ_to_WAN
  • Source zones : DMZ
  • Source networks and devices : PARENT-DMZ_10.20.40.20
  • Destination zones : WAN
  • Destination networks : les destinations nécessaires ou délibérément Any
  • Web policy : None
  • Malware and content scanning : désactivé
  • Log firewall traffic : activé

Placer cette règle au-dessus des autres règles qui pourraient correspondre à la même combinaison Source/Destination en mode Web Proxy. Une IPS Policy peut être sélectionnée consciemment si l’exploitation l’exige pour le chemin proxy-vers-WAN. Ne pas appliquer une seconde fois la Web Policy et l’analyse antimalware.

Pour le saut WAN du parent proxy, la règle SNAT qui correspond réellement s’applique à nouveau. Default SNAT IPv4 peut suffire ; la NAT Rule ID fait foi.

Valider le chemin de données de manière contrôlée

Un test réussi ne confirme pas seulement qu’un site quelconque s’ouvre. Il relie le client, la règle, le NAT, la Web Policy et le parent proxy dans une même chronologie.

  1. Noter l’heure avec le fuseau horaire, l’IP du pilote, l’URL cible et l’action attendue.
  2. Ouvrir une page HTTP ou HTTPS autorisée.
  3. Ouvrir une catégorie ou une URL de test que la Web Policy pilote doit bloquer.
  4. Dans Log Viewer, vérifier la Firewall Rule ID, la NAT Rule ID, la Web Policy, l’action, la Source et la Destination attendues.
  5. Dans le logging ou le monitoring du parent proxy, confirmer que les deux requêtes arrivent depuis la Source Sophos ou NAT attendue.
  6. Dans Built-in Packet Capture, utiliser host 192.0.2.80 and port 3128, ou l’IP réelle du proxy, afin de vérifier l’aller et le retour.
  7. Depuis le client pilote, tester un accès direct à l’IP et au port du proxy. Lorsque l’adresse du parent proxy est saisie comme IP, la stratégie Sophos doit également s’appliquer à ce chemin ; un contournement non vérifié est une condition d’arrêt.
  8. Rendre le parent proxy indisponible de manière contrôlée ou bloquer le port de test pendant une fenêtre de maintenance. Documenter l’échec observé et le comportement des alertes sans supposer un second proxy automatique.

Le test n’est validé que lorsque la requête autorisée et la requête bloquée se comportent correctement, que le parent proxy voit les deux et que l’accès direct ne contourne pas la stratégie de sécurité. Tester systématiquement une règle firewall explique en détail la validation avec les Rule IDs et Packet Capture.

Tester HA séparément

En Active-Active, Sophos peut répartir le trafic TCP du parent proxy entre les nœuds. Toutefois, chaque nœud ne conserve que les logs du trafic qu’il a traité. Lors du dépannage, il faut donc examiner les deux nœuds ou celui qui traitait le trafic au moment de l’événement.

Répéter un failover contrôlé avec une nouvelle connexion du navigateur. Vérifier ensuite à nouveau la Firewall Rule ID, la NAT Rule ID, le log du parent proxy, l’action autorisée et l’action bloquée. Ne pas supposer qu’une connexion proxy existante se poursuit sans interruption.

Isoler systématiquement les erreurs

Les sites s’ouvrent directement, mais pas via le parent proxy

  • Vérifier que la règle web du client utilise Use web proxy instead of DPI engine.
  • Contrôler la Firewall Rule ID réelle et l’ordre des règles.
  • Vérifier la route, l’IP du proxy, le port, la NAT Rule ID et le chemin retour.
  • En cas d’authentification, comparer le nom d’utilisateur, le mot de passe, l’état de verrouillage et le log du parent proxy.
  • Un port TCP ouvert ne prouve ni une requête proxy réussie ni une authentification valide.

Le parent proxy répond par 407 ou une erreur d’authentification

Vérifier les identifiants et l’état du compte sur le parent proxy. Ne pas enregistrer un compte administrateur personnel comme solution rapide. Après un changement de mot de passe, mettre à jour l’entrée globale de manière contrôlée, tester une nouvelle connexion et révoquer l’accès à l’ancien secret.

Un proxy dans LAN ou DMZ n’accède pas à Internet

  • Vérifier la règle client-vers-proxy et sa Rule ID.
  • Vérifier la règle MASQ limitée et la NAT Rule ID.
  • Vérifier la règle proxy-vers-WAN, sa position et la Source réelle du proxy.
  • S’assurer que Web policy est définie sur None et que Malware and content scanning n’est pas réactivé.
  • Vérifier séparément la route et le SNAT du saut WAN du parent proxy.

La Web Policy s’applique deux fois ou le chemin boucle

La règle proxy-vers-WAN doit précéder les règles qui se chevauchent en mode Web Proxy. Comparer la Source, la Destination, le Service et la Rule ID de chaque saut. Rechercher dans awarrenhttp.log, fwlog.log, firewall_rule.log et nat_rule.log la même heure, l’IP client, l’IP proxy et l’adresse cible. Les logs de service Sophos Firewall expliquent l’affectation des fichiers.

Ne pas redémarrer les services proxy ni laisser la sortie de debug activée. Sauvegarder d’abord les données de Log Viewer, Packet Capture et les fichiers de log disponibles. awarrenhttp_access.log ne contient les requêtes individuelles détaillées que lorsque le debug est actif ; ce n’est donc pas une preuve standard pour chaque incident.

HTTPS affiche des certificats inattendus ou des erreurs de certificat

Déterminer si Sophos Firewall, le parent proxy ou les deux déchiffrent TLS. Comparer le certificat émetteur dans le navigateur, la Web Policy correspondante, la règle SSL/TLS Inspection et le log de l’upstream proxy. Ne pas modifier simultanément et sur simple soupçon le déploiement de CA, le déchiffrement et les règles du parent proxy.

Seules certaines applications contournent le proxy

Toutes les applications n’utilisent pas les paramètres proxy du navigateur ou du système d’exploitation. Le parent proxy n’est pas un tunnel général pour un trafic TCP ou UDP arbitraire. Relever le chemin de données réel de l’application concernée et la règle firewall correspondante au lieu de déduire le comportement de tous les programmes à partir d’un test de navigateur réussi.

Exploitation et rollback

L’unique parent proxy est une dépendance documentée. Le monitoring doit vérifier davantage que le port TCP : utiliser une véritable requête HTTP ou HTTPS, l’authentification, la latence et la réponse upstream attendue. Documenter le responsable, la fenêtre de maintenance, l’expiration du secret et le chemin de récupération.

Pour effectuer un rollback :

  1. Sauvegarder l’heure, la configuration, les Rule IDs et les NAT Rule IDs antérieures à la modification.
  2. Sous Routing > Upstream proxy, restaurer l’état précédent documenté.
  3. Rétablir le mode DPI ou proxy précédent de la règle web du client.
  4. Désactiver les règles temporaires client-vers-proxy, proxy-vers-WAN et SNAT seulement après avoir confirmé le chemin de remplacement.
  5. Ouvrir une nouvelle connexion du navigateur ou de l’application et répéter la requête autorisée et la requête bloquée.
  6. En HA, répéter le test pour le nœud qui traite actuellement le trafic et après un failover planifié.
  7. Supprimer les accès proxy et les secrets devenus inutiles uniquement après une validation réussie.

Checklist

  • Une sauvegarde récente, une connexion d’administration indépendante et l’état précédent sont documentés.
  • L’emplacement WAN, LAN ou DMZ, l’IP, le port, le routing et le chemin retour du proxy sont confirmés.
  • Le parent proxy est saisi comme IP ou la décision d’utiliser un FQDN est justifiée.
  • La règle web du client utilise Use web proxy instead of DPI engine.
  • La règle client-vers-proxy, la Firewall Rule ID et le port du proxy correspondent.
  • Pour LAN/DMZ, des règles SNAT MASQ et proxy-vers-WAN limitées existent.
  • La règle proxy-vers-WAN a Web Policy None et aucune seconde analyse antimalware.
  • Les accès autorisé, bloqué et direct au proxy ont été testés.
  • La panne du parent proxy, les alertes, le failover HA et le rollback ont été testés.
  • Le responsable, la rotation du secret, le monitoring et la date de révision sont documentés.

Questions fréquentes

Non. Avec le Web Proxy transparent, le client ne connaît pas de proxy. Avec le Direct Web Proxy, le navigateur pointe vers Sophos Firewall. Dans les deux cas, le parent proxy est le saut proxy suivant derrière le firewall.

Non. Sophos documente l’upstream proxy uniquement pour le mode Web Proxy. La règle web concernée doit utiliser Use web proxy instead of DPI engine.

Non. Sophos documente une seule entrée d’upstream proxy. La haute disponibilité doit donc être fournie côté upstream par une adresse stable testée ou par un service HA disponible à cet endroit. Un nom de domaine seul n’est pas un mécanisme de failover documenté pour le parent proxy.