Pour des raisons de sécurité, je pense qu’il serait préférable que, par défaut, les forums Discourse ne soient pas accessibles lorsque l’on navigue directement vers l’adresse IP dans un navigateur.
Voici quelques raisons :
- Cela permet d’utiliser le site sans HTTPS, tant pour les utilisateurs que pour la configuration initiale par l’administrateur.
- Cela évite de révéler l’adresse du serveur d’origine, ce qui est problématique si vous utilisez Cloudflare ou un service similaire pour protéger votre IP d’origine contre les attaques DDoS ou les tentatives de piratage, surtout si les pirates considèrent le serveur comme une cible de haute valeur. Il existe des personnes qui font tourner des bots scannant toutes les plages d’IP appartenant à des hébergeurs web.
De plus, l’installateur de Discourse vérifie désormais que le domaine ou le sous-domaine est correctement configuré ; sinon, il ne poursuit pas l’installation.
Tout ce qu’il faut ajouter tout en bas du fichier /etc/nginx/conf.d/discourse.conf (à l’intérieur du conteneur Docker) est :
server {
listen 80;
server_name 1.1.1.1;
server_tokens off;
return 404;
}
Où 1.1.1.1 est l’adresse IP publique de votre serveur. Il existe probablement un moyen plus élégant d’inclure l’adresse IP que de l’écrire en dur. J’ai essayé plusieurs approches, mais aucune n’a fonctionné.
Cela fonctionne très bien pour moi (y compris avec le proxy Cloudflare). Je ne vois pas beaucoup de cas où autoriser l’accès web direct via l’adresse IP serait utile ou nécessaire. Il semble que ce soit une pratique assez courante de l’interdire. Je suis ouvert à toute raison valable de ne pas le faire, cependant !