Sécurité site Web et sauvegardes Aide

Nous avons fait de notre mieux afin de traduire cette page pour vous. La page en anglais est également disponible.

Activation de l'en-tête XFF

Un problème courant que rencontrent nos clients WAF (Web Application Firewall) est que les journaux de leur serveur d’hébergement affichent la même adresse IP pour tous les utilisateurs.

Le WAF est au milieu de la communication entre les visiteurs et le serveur d'hébergement afin de filtrer les demandes malveillantes. Pour cette raison, la connexion est modifiée et l'IP source au niveau du réseau est affichée comme adresse IP du pare-feu de site Web et non comme adresse IP du visiteur.

Si votre application a besoin de la véritable adresse IP du visiteur, vous disposez de plusieurs options pour la faire fonctionner. À l'aide de l'en-tête X-Forwarded-For (XFF), votre application ou serveur Web peut être configuré pour obtenir l'adresse IP du visiteur correctement.

WordPress

Installez et activez le plug- in Sucuri officiel.

Retour au début


Applications PHP standard

Ajoutez le code suivant dans le fichier de configuration de votre application:

if (isset ($ _ SERVER ['HTTP_X_SUCURI_CLIENTIP'])) {$ _SERVER ["REMOTE_ADDR"] = $ _SERVER ['HTTP_X_SUCURI_CLIENTIP']; }

Retour au début


Magento

  • 1.x
  • Placez le code suivant dans votre fichier /app/etc/local.xml à l'intérieur du global > / global > portée:

    remote_addr_headers > ! - Liste des en-têtes qui contiennent une adresse IP client réelle si le serveur Web est derrière un proxy inverse - > en-tête1 > HTTP_X_SUCURI_CLIENTIP / en-tête1 > / remote_addr_headers >
  • 2.x
  • Nous recommandons de traduire l'adresse IP du visiteur à l'aide des méthodes au niveau du serveur Web répertoriées ci-dessous pour Apache, NGINX, LiteSpeed et IIS.

    Si vous ne pouvez pas le faire, l'article suivant (utilisez-le à vos risques et périls) pourrait vous aider:

    https://dev98.de/2017/01/02/how-to-add-alternative-http-headers-to-magento-2/

Retour au début


Conseil IP

Paramètres: Sécurité et confidentialité - > «Activer la correspondance IP X_FORWARDED_FOR» défini sur «oui».

Retour au début


vBulletin 4.2+

Si vous utilisez vBulletin 4.2 ou plus récent, ils ont ajouté une fonctionnalité pour permettre une utilisation derrière un proxy comme le pare-feu. Recherchez le code suivant dans votre fichier /includes/config.php :

/ * #### Reverse Proxy IP #### Si vous utilisez un système dans lequel l'adresse IP principale transmise à vBulletin est l'adresse d'un serveur proxy et que la véritable adresse IP est transmise dans un autre en-tête http, alors vous entrez les détails ici * / / * Entrez vos serveurs proxy connus [de confiance] ici. Vous pouvez lister plusieurs adresses IP de confiance séparées par une virgule. * / // $ config ['Misc'] ['proxyiplist'] = '127.0.0.1, 192.168.1.6'; / * Si l'adresse IP réelle est passée dans une variable d'en-tête http autre que HTTP_X_FORWARDED_FOR, vous pouvez définir le nom ici; * / // $ config ['Misc'] ['proxyipheader'] = 'HTTP_X_FORWARDED_FOR';

Et modifiez-le comme suit pour qu'il fonctionne avec notre pare-feu:

/ * #### Reverse Proxy IP #### Si vous utilisez un système dans lequel l'adresse IP principale transmise à vBulletin est l'adresse d'un serveur proxy et que la véritable adresse IP est transmise dans un autre en-tête http, alors vous entrez les détails ici * / / * Entrez vos serveurs proxy connus [de confiance] ici. Vous pouvez lister plusieurs adresses IP de confiance séparées par une virgule. * / $ Config ['Misc'] ['proxyiplist'] = '192.88.134.2, 192.88.134.3, 192.88.134.4, 192.88.134.5, 192.88.134.6, 192.88.134.7 , 192.88.134.8, 192.88.134.9, 192.88.134.10, 192.88.134.11, 192.88.134.12, 192.88.134.13, 192.88.134.14, 192.88.134.15, 192.88.134.16, 192.88.134.17, 192.88.134.18, 192.88.134.19, 192.88 .134.20, 192.88.134.21, 192.88.135.2, 192.88.135.3, 192.88.135.4, 192.88.135.5, 192.88.135.6, 192.88.135.7, 192.88.135.8, 192.88.135.9, 192.88.135.10, 192.88.135.11, 192.88.135.12 , 192.88.135.13, 192.88.135.14, 192.88.135.15, 192.88.135.16, 192.88.135.17, 192.88.135.18, 192.88.135.19, 192.88.135.20, 192.88.135.21, 185.93.228.2, 185.93.228.3, 185.93.228.4, 185.93 .228.5, 185.93.228.6, 185.93.228.7, 185.93.228.8, 185.93.228.9, 185.93.228.10, 185.93.228.11, 185.93.228.12, 185.93.228.13, 185.93.228.14, 185.93.228.15, 185.93.228.16, 185.93. 228.17, 185.93.228.18, 185.93.228.19, 185.93.228.20, 185.93.228.21, 185.93.229.2, 185.93.229.3, 185 .93.229.4, 185.93.229.5, 185.93.229.6, 185.93.229.7, 185.93.229.8, 185.93.229.9, 185.93.229.10, 185.93.229.11, 185.93.229.12, 185.93.229.13, 185.93.229.14, 185.93.229.15, 185.93 .229.16, 185.93.229.17, 185.93.229.18, 185.93.229.19, 185.93.229.20, 185.93.229.21, 185.93.230.2, 185.93.230.3, 185.93.230.4, 185.93.230.5, 185.93.230.6, 185.93.230.7, 185.93.230.8 , 185.93.230.9, 185.93.230.10, 185.93.230.11, 185.93.230.12, 185.93.230.13, 185.93.230.14, 185.93.230.15, 185.93.230.16, 185.93.230.17, 185.93.230.18, 185.93.230.19, 185.93.230.20, 185.93 .230.21, 185.93.231.2, 185.93.231.3, 185.93.231.4, 185.93.231.5, 185.93.231.6, 185.93.231.7, 185.93.231.8, 185.93.231.9, 185.93.231.10, 185.93.231.11, 185.93.231.12, 185.93.231.13 , 185.93.231.14, 185.93.231.15, 185.93.231.16, 185.93.231.17, 185.93.231.18, 185.93.231.19, 185.93.231.20, 185.93.231.21, 66.248.201.2, 66.248.201.3, 66.248.201.4, 66.248.201.5, 66.248 .201.6, 66.248.201.7, 66.248.201.8, 66.248.201.9, 66.248.201.10, 66.248.201.11, 66.248.201.12 , 66.248.201.13, 66.248.201.14, 66.248.201.15, 66.248.201.16, 66.248.201.17, 66.248.201.18, 66.248.201.19, 66.248.201.20, 66.248.201.21, 66.248.202.2, 66.248.202.3, 66.248.202.4, 66.248 .202.5, 66.248.202.6, 66.248.202.7, 66.248.202.8, 66.248.202.9, 66.248.202.10, 66.248.202.11, 66.248.202.12, 66.248.202.13, 66.248.202.14, 66.248.202.15, 66.248.202.16, 66.248.202.17 , 66.248.202.18, 66.248.202.19, 66.248.202.20, 66.248.202.21, 66.248.203.2, 66.248.203.3, 66.248.203.4, 66.248.203.5, 66.248.203.6, 66.248.203.7, 66.248.203.8, 66.248.203.9, 66.248 .203.10, 66.248.203.11, 66.248.203.12, 66.248.203.13, 66.248.203.14, 66.248.203.15, 66.248.203.16, 66.248.203.17, 66.248.203.18, 66.248.203.19, 66.248.203.20, 66.248.203.21, 66.248.200.2 , 66.248.200.3, 66.248.200.4, 66.248.200.5, 66.248.200.6, 66.248.200.7, 66.248.200.8, 66.248.200.9, 66.248.200.10, 66.248.200.11, 66.248.200.12, 66.248.200.13, 66.248.200.14, 66.248 .200.15, 66.248.200.16, 66.248.200.17, 66.248.200.18, 66.248.200.19, 66.248.200.20, 66 .248.200.21 »; / * Si l'adresse IP réelle est passée dans une variable d'en-tête http autre que HTTP_X_FORWARDED_FOR, vous pouvez définir le nom ici; * / $ config ['Misc'] ['proxyipheader'] = 'HTTP_X_SUCURI_CLIENTIP';

Si vous ne trouvez pas ce code dans votre fichier /includes/config.php , vous pouvez simplement l'ajouter au bas du fichier. Veillez à supprimer le // au début des 2 lignes contenant les adresses IP et la ligne d'en-tête.

Retour au début


PrestaShop

Créez le fichier /override/classes/Tools.php avec le contenu:

? php class Tools étend ToolsCore {/ ** * Récupère la variable serveur REMOTE_ADDR, ou la première adresse IP de HTTP_X_FORWARDED_FOR (lors de l'utilisation du proxy) * * @return string $ remote_addr ip of client * / public static function getRemoteAddr () {// This condition est nécessaire lors de l'utilisation de CDN, ne le supprimez pas. if (isset ($ _ SERVER ['HTTP_X_SUCURI_CLIENTIP']) AND $ _SERVER ['HTTP_X_SUCURI_CLIENTIP']) {if (strpos ($ _ SERVER ['HTTP_X_SUCURI_CLIENTIP'], ',')) {$ ips = exploser (',') _SERVER ['HTTP_X_SUCURI_CLIENTIP']); retourne $ ips [0]; } else return $ _SERVER ['HTTP_X_SUCURI_CLIENTIP']; } return $ _SERVER ['REMOTE_ADDR']; }}

et supprimez le fichier /cache/class_index.php .

Retour au début


Drupal

Ajoutez le code PHP dans le fichier settings.php :

if (isset ($ _ SERVER ['HTTP_X_SUCURI_CLIENTIP'])) {$ _SERVER ["REMOTE_ADDR"] = $ _SERVER ['HTTP_X_SUCURI_CLIENTIP']; }

Retour au début


WHMCS

  1. Ajoutez le code PHP dans le fichier configuration.php :
    if (isset ($ _ SERVER ['HTTP_X_SUCURI_CLIENTIP'])) {$ _SERVER ["REMOTE_ADDR"] = $ _SERVER ['HTTP_X_SUCURI_CLIENTIP']; }
  2. Sur l'administrateur WHMCS, accédez à Paramètres - > Sécurité - > Proxy de confiance et ajoutez chacune des plages d'adresses IP suivantes:
    192.88.134.0/23 185.93.228.0/22 66.248.200.0/22 208.109.0.0/22 2a02: fe80 :: / 29 _ (en cas de support IPv6) _
  3. Dans le champ «En-tête IP du proxy», insérez HTTP_X_SUCURI_CLIENTIP et enregistrez les modifications.

Retour au début


CodeIgniter

Ajoutez le code PHP dans le fichier index.php :

if (isset ($ _ SERVER ['HTTP_X_SUCURI_CLIENTIP'])) {$ _SERVER ["REMOTE_ADDR"] = $ _SERVER ['HTTP_X_SUCURI_CLIENTIP']; }

Retour au début


Apache

  • 2.2
  • mod_rpaf

  • 2.4+
  • Apache 2.4 et supérieur est généralement livré avec mod_remoteip installé, il vous suffit de l'activer. Si mod_remoteip n'a pas été inclus dans votre installation Apache, vous pouvez le télécharger ici: mod_remoteip .

    Si vous utilisez cPanel / WHM, mod_remoteip peut être installé avec « yum -y install ea-apache24-mod_remoteip ».

    Une fois mod_remoteip installé, vous devez ajouter les lignes suivantes dans son fichier de configuration. En général, le fichier de configuration est /etc/apache/conf-available/remoteip.conf , mais si vous utilisez cPanel / WHM, ce sera /etc/apache2/conf.modules.d/370_mod_remoteip.conf .

    RemoteIPHeader X-FORWARDED-FOR RemoteIPTrustedProxy 192.88.134.0/23 RemoteIPTrustedProxy 185.93.228.0/22 RemoteIPTrustedProxy 66.248.200.0/22 RemoteIPTrustedProxy 208.109.0.0/22 RemoteIPTrustedProxy 2a02: fe80 :: / 29 # cette ligne peut être supprimée si IPv6

    Si cela fonctionne, essayez de remplacer RemoteIPHeader X-FORWARDED-FOR par RemoteIPHeader X_FORWARDED_FOR .

    Vous pouvez également ajouter la ligne suivante dans votre fichier /usr/local/apache/conf/includes/post_virtualhost_global.conf et redémarrer Apache, si vous souhaitez voir l'adresse IP du visiteur dans les journaux Apache:

    LogFormat "%{X-Forwarded-For} i% h% l% u% t \ "% r \"% > s% b \ "%{Referer} i \ "\"%{User-Agent} i \ "" combiné

Retour au début


NGINX

ngx_http_realip_module

Après avoir activé ngx_http_realip_module, ajoutez ce qui suit à votre configuration nginx:

# Définir l'en-tête avec l'IP du client original real_ip_header X-Forwarded-For; # Définir les adresses IP de confiance du pare-feu set_real_ip_from 192.88.134.0/23; set_real_ip_from 185.93.228.0/22; set_real_ip_from 66.248.200.0/22; set_real_ip_from 208.109.0.0/22; set_real_ip_from 2a02: fe80 :: / 29; # cette ligne peut être supprimée si IPv6 est désactivé

Retour au début


IIS utilisant la journalisation avancée

Détails ici .

Retour au début


LiteSpeed

Dans le panneau d'administration Web LiteSpeed, accédez à Configuration - > Serveur - > Paramètres généraux et définissez Utiliser l'adresse IP du client dans l'en-tête sur Oui.

Pour éviter les conflits avec la limitation de débit LiteSpeed, ajoutez également les plages d'adresses IP du pare-feu Sucuri dans la liste Autorisée . Accédez à Configuration - > Serveur - > Sécurité - > Liste autorisée et ajoutez les adresses IP suivantes:

192.88.134.0/23T, 185.93.228.0/22T, 66.248.200.0/22T, 208.109.0.0/22T, 2a02: fe80 :: / 29T

Remarque: si vous rencontrez des problèmes avec les adresses IPv6 (2a02: fe80 :: / 29) et qu'aucune adresse IPv6 n'est affectée à votre hébergement, vous devez supprimer ces lignes de toute directive.

Retour au début

En savoir plus