Comment configurer correctement SNI dans Zimbra OSE ?

Au début du 21e siècle, une ressource telle que les adresses IPv4 est au bord de l’épuisement. En 2011, l'IANA a alloué les cinq derniers blocs /8 restants de son espace d'adressage aux bureaux d'enregistrement Internet régionaux, et déjà en 2017, ils ont manqué d'adresses. La réponse à la pénurie catastrophique d'adresses IPv4 n'a pas seulement été l'émergence du protocole IPv6, mais aussi de la technologie SNI, qui a permis d'héberger un grand nombre de sites Web sur une seule adresse IPv4. L'essence de SNI est que cette extension permet aux clients, lors du processus de prise de contact, d'indiquer au serveur le nom du site avec lequel il souhaite se connecter. Cela permet au serveur de stocker plusieurs certificats, ce qui signifie que plusieurs domaines peuvent fonctionner sur une seule adresse IP. La technologie SNI est devenue particulièrement populaire parmi les fournisseurs SaaS professionnels, qui ont la possibilité d'héberger un nombre presque illimité de domaines, quel que soit le nombre d'adresses IPv4 requises pour cela. Découvrons comment implémenter la prise en charge de SNI dans Zimbra Collaboration Suite Open-Source Edition.

Comment configurer correctement SNI dans Zimbra OSE ?

SNI fonctionne dans toutes les versions actuelles et prises en charge de Zimbra OSE. Si Zimbra Open-Source s'exécute sur une infrastructure multi-serveurs, vous devrez effectuer toutes les étapes ci-dessous sur un nœud sur lequel le serveur proxy Zimbra est installé. De plus, vous aurez besoin de paires certificat + clé correspondantes, ainsi que de chaînes de certificats de confiance de votre autorité de certification pour chacun des domaines que vous souhaitez héberger sur votre adresse IPv4. Veuillez noter que la cause de la grande majorité des erreurs lors de la configuration de SNI dans Zimbra OSE réside précisément dans les fichiers incorrects avec les certificats. Nous vous conseillons donc de tout vérifier soigneusement avant de les installer directement.

Tout d'abord, pour que SNI fonctionne normalement, vous devez saisir la commande zmprov mcf zimbraReverseProxySNIEnabled TRUE sur le nœud proxy Zimbra, puis redémarrez le service proxy à l'aide de la commande redémarrage de zmproxyctl.

Nous allons commencer par créer un nom de domaine. Par exemple, nous prendrons le domaine entreprise.ru et, une fois le domaine créé, nous déciderons du nom d'hôte virtuel Zimbra et de l'adresse IP virtuelle. Veuillez noter que le nom d'hôte virtuel Zimbra doit correspondre au nom que l'utilisateur doit saisir dans le navigateur pour accéder au domaine, ainsi qu'au nom spécifié dans le certificat. Par exemple, prenons Zimbra comme nom d'hôte virtuel mail.company.ru, et comme adresse IPv4 virtuelle, nous utilisons l'adresse 1.2.3.4.

Après cela, entrez simplement la commande zmprov md company.ru zimbraVirtualHostName mail.company.ru zimbraVirtualIPAddress 1.2.3.4pour lier l'hôte virtuel Zimbra à une adresse IP virtuelle. Veuillez noter que si le serveur est situé derrière un NAT ou un pare-feu, vous devez vous assurer que toutes les requêtes vers le domaine vont vers l'adresse IP externe qui lui est associée, et non vers son adresse sur le réseau local.

Une fois tout fait, il ne reste plus qu'à vérifier et préparer les certificats de domaine pour l'installation, puis à les installer.

Si la délivrance d'un certificat de domaine s'est déroulée correctement, vous devriez avoir trois fichiers avec des certificats : deux d'entre eux sont des chaînes de certificats de votre autorité de certification et un est un certificat direct pour le domaine. De plus, vous devez disposer d'un fichier avec la clé que vous avez utilisée pour obtenir le certificat. Créer un dossier séparé /tmp/company.ru et placez-y tous les fichiers existants avec les clés et les certificats. Le résultat final devrait ressembler à ceci :

ls /tmp/company.ru
company.ru.key
 company.ru.crt
 company.ru.root.crt
 company.ru.intermediate.crt

Après cela, nous combinerons les chaînes de certificats en un seul fichier à l'aide de la commande chat company.ru.root.crt company.ru.intermediate.crt >> company.ru_ca.crt et assurez-vous que tout est en ordre avec les certificats à l'aide de la commande /opt/zimbra/bin/zmcertmgr verifycrt comm /tmp/company.ru/company.ru.key /tmp/company.ru/company.ru.crt /tmp/company.ru/company.ru_ca.crt. Une fois la vérification des certificats et de la clé réussie, vous pouvez commencer à les installer.

Afin de commencer l'installation, nous allons d'abord combiner le certificat de domaine et les chaînes de confiance des autorités de certification en un seul fichier. Cela peut également être fait en utilisant une commande comme chat company.ru.crt company.ru_ca.crt >> company.ru.bundle. Après cela, vous devez exécuter la commande afin d'écrire tous les certificats et la clé dans LDAP : /opt/zimbra/libexec/zmdomaincertmgr savecrt company.ru company.ru.bundle company.ru.keypuis installez les certificats à l'aide de la commande /opt/zimbra/libexec/zmdomaincertmgr déployercrts. Après l'installation, les certificats et la clé du domaine company.ru seront stockés dans le dossier /opt/zimbra/conf/domaincerts/company.ru

En répétant ces étapes en utilisant des noms de domaines différents mais la même adresse IP, il est possible d'héberger plusieurs centaines de domaines sur une seule adresse IPv4. Dans ce cas, vous pouvez utiliser sans problème les certificats de divers centres émetteurs. Vous pouvez vérifier l'exactitude de toutes les actions effectuées dans n'importe quel navigateur, où chaque nom d'hôte virtuel doit afficher son propre certificat SSL. 

Pour toutes les questions relatives à Zextras Suite, vous pouvez contacter le représentant de Zextras Ekaterina Triandafilidi par e-mail [email protected]

Source: habr.com

Ajouter un commentaire