Aller au contenu principal

Restaurer l'IP d'origine des visiteurs

Cet article vous permettra de configurer votre serveur Web pour utiliser l'adresse IP d'origine de vos visiteurs (également appelée adresse IP réelle) plutôt que l'adresse IP des serveurs de Visiativ Cyber WAF, que ce soit à des fins d'autorisation de connexion, ou de journalisation dans les fichiers de logs.

L'adresse IP d'origine est fournie dans les en-têtes HTTP des requêtes émises vers vos serveurs backends (voir la section Echanges avec les backends).

Serveurs Apache

Installation du module Remote IP

Le module mod_remoteip d'Apache permet de considérer le client qui a initié la requête en tant que client original du point de vue du serveur Web, même si ce client se trouve derrière un répartiteur de charge, un serveur frontal, ou un serveur mandataire comme ceux de Visiativ Cyber WAF. Ce module est installé par défaut avec Apache, il suffit de l'activer.

sudo a2enmod remoteip

Configuration de votre Virtual Host

Une mise à jour de la configuration de votre Virtual Host Apache est nécessaire pour pouvoir utiliser l'adresse IP des visiteurs dans vos fichiers de logs ou dans vos règles d'autorisations d'accès. Pour cela, créez un fichier visiativ-waf.conf avec la configuration ci-dessous dans le répertoire /etc/apache2/conf-available/.

/etc/apache2/conf-available/visiativ-waf.conf
# Format de log identique a "combined" avec adresse IP reelle
LogFormat "%a %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" proxy_combined

# Serveurs autorises a fournir l'IP dans l'entete X-Forwarded-For
RemoteIPHeader X-Forwarded-For
RemoteIPTrustedProxy 5.39.7.192/29
A savoir

La liste des serveurs autorisés à fournir l'adresse IP du client dans l'entête X-Forwarded-For doit être adaptée en fonction des clusters auxquels vous avez souscrit (voir la section Adressage IP des clusters). Veillez à adapter la directive RemoteIPTrustedProxy en conséquence.

Pour la prise en compte de cette configuration, rajoutez la ligne Include dans le fichier de configuration de votre Virtual Host et modifiez le format de log de combined à proxy-combined.

/etc/apache2/sites-available/my-web-site.conf
<VirtualHost *:443>
...
Include conf-available/visiativ-waf.conf
...
CustomLog ${APACHE_LOG_DIR}/my-log-file.log proxy_combined
...
</VirtualHost>

Enfin, testez la configuration et redémarrez votre serveur Apache.

sudo apachectl -t
sudo apachectl restart

Ressources associées