Comment activer la redirection HTTPS dans un serveur proxy Zimbra
Utilisez l'attribut proxy de Zimbra zimbraReverseProxyMailModepour rediriger les requêtes web HTTP vers HTTPS. Configurez-le redirectsur chaque nœud proxy Zimbra, puis redémarrez le service proxy et vérifiez que la réponse HTTP contient un Location: https://...en-tête HTTPS. Avant cela, assurez-vous que le nom d'hôte HTTPS public pointe déjà vers votre proxy ou équilibreur de charge et qu'il possède un certificat valide.
Ce paramètre concerne l'accès web via le proxy Zimbra. Il ne configure pas automatiquement le protocole HTTPS pour la messagerie, n'installe pas de certificat et ne garantit pas que chaque application de messagerie suive une redirection. Si vous souhaitez bloquer catégoriquement les requêtes HTTP, privilégiez le mode proxy HTTPS uniquement.
Exemple de topologie : le nom d’hôte de messagerie publique atteint le niveau proxy avant que les requêtes ne soient transmises à un serveur de messagerie.
Choisissez le comportement qui convient à votre déploiement
Mode de messagerie proxy
Que se passe-t-il avec HTTP ?
Quand l'utiliser
redirect
Le proxy renvoie une réponse HTTP 302 dirigeant le client vers HTTPS.
Utile lorsque les utilisateurs saisissent encore une URL HTTP et doivent être redirigés vers l'adresse web sécurisée.
https
Le proxy sert le client web via HTTPS ; il ne fournit pas le même flux de redirection HTTP vers HTTPS.
Privilégiez cette solution lorsque les clients ne doivent jamais démarrer de session via HTTP.
bothoumixed
Il s'agit de modes proxy distincts avec un comportement HTTP/HTTPS différent.
À utiliser uniquement lorsque le déploiement requiert spécifiquement le comportement documenté ; ne présumez pas qu’ils imposent une redirection HTTP.
Les recommandations de sécurité de Zimbra indiquent que certains clients, notamment les clients ActiveSync, peuvent ne pas respecter une redirection HTTP et transmettre des informations d'identification lors de la requête initiale non chiffrée. La redirection facilite donc le navigation, mais ne remplace pas un accès exclusivement HTTPS lorsque tous les clients doivent éviter le protocole HTTP. Si vous optez pour le mode de redirection, protégez le serveur HTTP en périphérie du réseau et communiquez l'URL HTTPS aux utilisateurs.
Avant de modifier le comportement du proxy, vérifiez que le nom d'hôte public du webmail s'ouvre bien via HTTPS et affiche un indicateur de cadenas de confiance.
Avant de modifier le proxy
Veuillez confirmer la portée de cette procédure. Celle-ci modifie le trafic web géré par Zimbra Proxy. Votre déploiement doit déjà disposer du service proxy activé et fonctionnel.
Vérifiez le point de terminaison public. Le nom d'hôte visité par les utilisateurs, par exemple `http://localhost:8080` mail.example.com, doit pointer vers le proxy public ou l'équilibreur de charge. Le protocole HTTPS doit déjà être opérationnel sur le nom d'hôte et le port attendus.
Vérifiez le certificat. Installez et validez la chaîne de certificats pour le nom d'hôte public avant de rediriger les utilisateurs. Une redirection vers HTTPS avec un certificat invalide ou non conforme ne fait que déplacer l'erreur à la requête suivante.
Identifiez chaque nœud proxy. Dans un environnement à charge équilibrée, notez le nom du serveur Zimbra de chaque serveur proxy. Les modifications apportées à un proxy ne configurent pas automatiquement les autres.
Planifiez une fenêtre de maintenance si nécessaire. Le redémarrage du service proxy peut interrompre brièvement les connexions via ce nœud. Dans un déploiement redondant, appliquez la modification nœud par nœud et surveillez l'état du service.
Utilisez le compte Zimbra pour les commandes d'administration ci-dessous. Remplacez ` proxy1.example.com<nom_serveur_Zimbra>` par le nom exact de votre serveur proxy et `< mail.example.comnom_hôte_webmail>` par le nom d'hôte public de votre messagerie web. Ne copiez pas ces exemples de noms tels quels dans un système de production.
Activer la redirection HTTP vers HTTPS
1. Enregistrez le mode proxy actuel
Sur un hôte Zimbra disposant des outils en ligne de commande, interrogez le paramètre actuel du proxy :
Enregistrez le résultat afin de pouvoir le comparer après la modification ou rétablir le mode précédent si nécessaire. La gscommande lit les attributs du serveur ; mscelle utilisée ci-dessous les modifie.
La commande d'exemple lit le mode de messagerie actuel sur un nœud proxy ; votre serveur peut afficher une valeur différente.
2. Configurez le mode proxy pour rediriger
Définissez l'attribut sur l'objet serveur proxy :
zmprov ms proxy1.example.com zimbraReverseProxyMailMode redirect
La documentation de configuration du proxy Zimbra indique redirectque le mode de redirection des requêtes HTTP vers HTTPS est utilisé. Appliquez la même commande à chaque nœud proxy acceptant le trafic web public. Si un équilibreur de charge peut envoyer une requête HTTP à plusieurs proxys, chaque proxy concerné doit avoir un comportement cohérent.
Ne confondez pas ce paramètre avec zimbraMailModeles informations fournies par Zimbra concernant la connexion au serveur de messagerie. La modification du mode de messagerie n'active pas la redirection HTTP côté navigateur sur le proxy.
Configurez le mode de messagerie du proxy sur redirect; répétez l'opération pour chaque nom de serveur proxy dans un déploiement multi-nœuds.
3. Appliquez la modification à chaque proxy
Redémarrez le service proxy sur le nœud où vous avez modifié le paramètre :
zmproxyctl restart
Vérifiez ensuite l'état de son service :
zmproxyctl status
Redémarrez chaque nœud proxy, un par un si vous disposez d'une architecture redondante. Suivez les instructions d'utilisation de votre version de Zimbra si votre environnement inclut une procédure de rafraîchissement du cache de configuration ou d'orchestration de services. Évitez de modifier directement les fichiers Nginx générés : Zimbra gère la configuration du proxy depuis ses paramètres serveur, et toute modification manuelle peut être écrasée.
Les exemples utilisent le guide d'administration de Zimbra Daffodil v10 et la documentation Zimbra relative aux proxys et à la sécurité. Les versions antérieures de ZCS peuvent présenter des différences au niveau du packaging ou des procédures prises en charge ; par conséquent, avant toute modification, veuillez consulter le guide d'administration correspondant à la version installée dans votre environnement.
Un exemple de séquence opérationnelle actualise les données de configuration et redémarre le proxy ; suivez la procédure prise en charge pour votre version installée.
Vérifiez la redirection et la réponse HTTPS
4. Vérifiez l'en-tête de la réponse HTTP
Depuis un système pouvant accéder au point de terminaison public, demandez l'URL HTTP sans suivre les redirections :
En mode redirection, recherchez une réponse 302 et un Locationen-tête dont la valeur commence par «https://mail.example.com/ . ». Les en-têtes exacts et la gestion du statut peuvent varier selon votre version de Zimbra, le chemin d'accès et tout équilibreur de charge ou passerelle web situé devant le proxy. La capture d'écran suivante illustre le modèle d'en-tête attendu ; il ne s'agit pas d'un test réalisé sur un serveur en production.
Modèle de redirection attendu : HTTP renvoie une réponse 302 et redirige le navigateur vers le nom d’hôte HTTPS. Les en-têtes et dates de réponse réels différeront.
Vérifiez que le certificat TLS est valide pour le nom d'hôte et que la réponse correspond à la page de messagerie web ou à la redirection attendue. N'utilisez pas cette méthode curl -kpour contourner la vérification du certificat : cela masque le problème de certificat que les utilisateurs pourraient rencontrer. Une page de connexion peut renvoyer une redirection ou un code d'état autre que 200 selon la version du produit et le flux d'authentification ; par conséquent, analysez la réponse en parallèle avec la vérification du navigateur.
L'exemple montre une connexion HTTPS atteignant le service avec un certificat correspondant au nom d'hôte ; vérifiez la chaîne de certificats réelle sur votre point de terminaison.
6. Testez dans un navigateur
Ouvrez http://mail.example.comune nouvelle session de navigateur. L'adresse devrait se transformer en URL HTTPS avant que vous ne saisissiez vos identifiants. Ouvrez ensuite directement l'URL HTTPS et vérifiez que la page de connexion se charge sans avertissement de certificat. Répétez l'opération depuis l'extérieur de votre réseau interne si un DNS public, des règles de pare-feu ou un équilibreur de charge peuvent produire des résultats différents.
Ne testez pas la redirection en saisissant un mot de passe réel tant que la barre d'adresse affiche HTTP. Si la redirection échoue, arrêtez-vous et corrigez d'abord la configuration du proxy, du serveur Edge ou du certificat.
Dernière vérification du navigateur : la page de connexion est servie à l’adresse hôte HTTPS après la redirection.
Guide de dépannage rapide
Symptôme
Que vérifier
HTTP reste sur la même URL
Interrogez zimbraReverseProxyMailModele proxy qui a traité la requête ; vérifiez que chaque nœud à charge équilibrée possède la valeur attendue et a été redémarré.
L'en-tête Location utilise un nom d'hôte ou un port incorrect.
Vérifiez l'URL publique, les règles de proxy inverse ou d'équilibrage de charge, ainsi que les paramètres nom d'hôte/protocole/port du service public Zimbra utilisés pour générer les liens publics.
Le navigateur signale un avertissement de certificat
Vérifiez que le certificat est installé sur le point de terminaison TLS, qu'il couvre le nom d'hôte public et qu'il inclut les certificats de chaîne nécessaires.
Les utilisateurs voient une boucle de redirection
Vérifiez si l'équilibreur de charge frontal termine le protocole TLS mais transfère le trafic HTTP à Zimbra, et assurez-vous que le proxy identifie correctement le protocole de requête externe. Alignez la configuration TLS et de transfert en périphérie du réseau.
Un client de messagerie envoie toujours du HTTP
Ne présumez pas que le client suit une redirection 302. Privilégiez l'accès HTTPS uniquement pour les clients qui ne doivent jamais envoyer d'informations d'identification via HTTP, et configurez chaque client avec l'URL du serveur HTTPS.
Liste de contrôle du déploiement
L'URL HTTPS publique redirige vers le proxy ou l'équilibreur de charge prévu.
Le certificat TLS est valide pour le nom d'hôte public et est approuvé par les clients.
zimbraReverseProxyMailModeest configuré redirectsur chaque nœud proxy applicable.
Le service proxy a été redémarré conformément à la procédure de la version de Zimbra installée.
Une requête HTTP renvoie un Locationen-tête HTTPS, et une requête HTTPS directe valide le certificat.
Les utilisateurs et les clients de messagerie sont configurés pour HTTPS ; le mode de redirection n’est pas considéré comme une garantie que chaque client protège sa première requête.