Alors tout d'abord je tiens à m'excuser si je présente mal mon post ou que sais-je : j'avoue avoir créé mon compte et publié directement (pas taper ).
J'espère que vous allez pouvoir m'aider avec un problème qui me rend un peu fou
Contexte
J'ai une VM locale n°1 qui sert de load balancer avec Nginx :
- j'ai un certificat SSL wildcard qui fonctionne très bien
- j'ai une redirection http -> https qui fonctionne très bien (je donne la configuration un peu après)
J'ai une VM locale n°2 qui est un backend Tomcat 9.0:
- il héberge, entre autre, Geoserver
Sur mon PC j'ai Firefox (version 98.0 à cet instant T) et je suis configuré pour utiliser "https" only.
Mon adresse est :
https://local-geoserver.example.com
/Contexte
Ce qui fonctionne
Quand je me connecte à https://local-geoserver.example.com :
- aucun problème
- la page de connexion de Geoserver apparaît
- je suis bien en https
/Ce qui fonctionne
Ce qui ne fonctionne pas
Maintenant le problème arrive dès que je me connecte à Geoserver, pour une raison qui m'échappe, Firefox m'affiche son gentil message :
Code : Tout sélectionner
Avertissement du mode « HTTPS uniquement »
Site sécurisé non disponible
Vous avez activé le mode « HTTPS uniquement » pour une sécurité renforcée, mais il n’existe aucune version HTTPS du site local-geoserver.example.com.
En savoir plus…
Quelle peut en être la cause ?
Très probablement, le site web ne prend tout simplement pas en charge HTTPS.
Il est également possible qu’un malfaiteur soit impliqué. Si vous décidez de visiter ce site web, il vaut mieux éviter de saisir des informations sensibles comme des mots de passe, des adresses électroniques ou des informations de cartes bancaires.
Si vous continuez, le mode « HTTPS uniquement » sera temporairement désactivé pour ce site.
Configuration
J'ai pourtant deux configurations Nginx :
- 01-http-to-https (chargée en premier):
Code : Tout sélectionner
## HTTP - REDIRECTION TO HTTPS ##
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 301 https://$host$request_uri;
}
## /HTTP - REDIRECTION TO HTTPS ##
Code : Tout sélectionner
# backend only main01
upstream backend-geoserver-main01 {
server 192.168.1.1:8280 weight=10 max_fails=3 fail_timeout=15s;
}
server {
server_name local-geoserver.example.com;
listen 443 ssl;
include snippets/ssl-example.com.conf;
access_log /var/log/nginx/access-geoserver.log;
error_log /var/log/nginx/error-geoserver.log;
location / {
rewrite ^ /geoserver;
}
location /geoserver {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://backend-geoserver-main01/geoserver;
}
}
Code : Tout sélectionner
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload";
add_header X-Frame-Options SAMEORIGIN;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
Est-ce que quelqu'un aurait une idée du "pourquoi Firefox ne voit pas que le site est disponible en https" ?
En sachant que je n'ai aucun problème avec Chrome (pas taper : je ne l'utilise que pour tester )
Je vous remercie d'avance