Salut les gars, j’espère que c’est la bonne section pour demander de l’aide à ce sujet.
J’ai récemment changé le proxy inverse que j’avais devant le serveur Discourse.
J’ai un serveur avec plusieurs installations de Discourse et un proxy inverse devant qui redirige les domaines vers le bon serveur web.
J’ai utilisé HAProxy sur les deux configurations, mais la différence réside dans la plateforme : avant, il était installé sur pfSense, et maintenant sur OPNsense.
Le proxy inverse fonctionne parfaitement, mais lorsque j’essaie de me connecter, j’obtiens une erreur CSRF et je ne peux vraiment rien faire.
Rien n’a changé dans la configuration de Discourse et la configuration de HAProxy a été copiée, donc elle devrait être correcte.
J’ai activé X-Forwarded-For et SSL, mais Discourse ne semble toujours pas conserver la même IP du client et ne voit que celle du proxy.
Je ne sais pas si cela résoudra le problème CSRF (qui, selon moi, est lié à des problèmes de certificat HTTPS, mais je ne suis pas vraiment sûr), mais vous avez configuré la redirection en indiquant à nginx à l’intérieur du conteneur quelles adresses sont de confiance. Vous pouvez rechercher ici « X-forwarded-for » et trouver des exemples sur la façon de résoudre ce problème.
Pour information, il existe de nombreuses configurations d’exemple pour les serveurs proxy inversés devant l’application Discourse, y compris celle-ci ; presque toutes traitent de « X-Forwarded-Proto » :