đŸ’Ÿ Archived View for lord.re â€ș posts â€ș 33-reverse-proxy-nginx â€ș index.gmi captured on 2024-03-21 at 15:58:05. Gemini links have been rewritten to link to archived content

View Raw

More Information

âŹ…ïž Previous capture (2022-06-03)

âžĄïž Next capture (2024-08-18)

-=-=-=-=-=-=-

IP Proxy Logs Nginx Reverse

-------------------------------------------------

[27/10/2013] - ~2mins - #software #tips #www #nginx

-------------------------------------------------

Le titre ne pourrait ĂȘtre plus explicite ! Vous avez remarquĂ© comme lorsqu'on fait du reverse proxy, le backend ne voit plus que l'ip du frontend ?

C'est tout Ă  fait logique puisque les requĂȘtes proviennent exclusivement du serveur frontal qui fait son boulot.

Du coup ça peut ĂȘtre quelque peu dĂ©rangeant

Dura lex sed lex

Vous n'ĂȘtes pas sans savoir qu'en France tous les fournisseurs de contenu sur le web doivent conserver les logs de connexion.

La loi n'est pas vraiment précise quant aux informations à conserver mais globalement, l'heure, l'IP et la ressource demandée est le minimum.

Et ça tombe plutÎt bien c'est ce que font tous les serveurs web basiquement.

Donc pour éviter de se mettre en porte-à-faux vis-à-vis de la loi, il va falloir améliorer notre jolie config Nginx (ce sera surement un futur article).

Donc on va devoir dire Ă  notre reverse proxy de rajouter un header dans sa requĂȘte indiquant la vraie IP de la requĂȘte.

proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

À rajouter dans le bloc server ou location de votre reverse proxy

Ensuite maintenant que notre serveur de backend reçoit une requĂȘte avec le header qui va bien, il faut lui dire de s'en servir !

set real_ip_from A.B.C.D;
real_ip_header X-Forwarded-For;
real_ip_recursive on;

À rajouter dans le bloc server de votre vrai serveur web

Ça y est, un ptit reload et vos logs contiendront la vraie IP.

C'est Ă©galement pratique dans le cas d'utilisation de PHP pour que lui aussi connaisse la vraie IP du client (logguer les Ă©ditions sur un Dokuwiki par exemple).

------------------------------------

🏠 Retour à la home

------------------------------------

[27/10/2013] [software tips www nginx]

------------------------------------

[>> Suivant >>] ⏭ Multi devices BTRFS

[<< PrĂ©cĂ©dent <<] ⏼ Devtmpfs et Udev sont dans un bateau