Mise en place d’un certificat Let’s Encrypt pour Zimbra
Déprécié, voir l’article plus récent https://it.izero.fr/certificat-mise-en-place-dun-certificat-lets-encrypt-pour-zimbra-8-8-9/ |
Pré requis
Voir article Installation de Let’s Encrypt
/!\ Avant tout il faut récupérer la root CA (certificat racine) qui est disponible sur
https://www.identrust.com/certificates/trustid/root-download-x3.html
Créer le fichier, puis ajouter la chaine certificat racine
1 |
$ sudo vim /tmp/root-ca.pem |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
-----BEGIN CERTIFICATE----- MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/ MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw 7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69 ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5 JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ -----END CERTIFICATE----- |
Après avoir généré le certificat Letsencrypt, copier les fichiers dans /tmp, puis créer la chaine de certification.
1 2 3 |
$ cp /etc/letsencrypt/live/<FQDN>/* /tmp $ cd /tmp $ cat chain.pem root-ca.pem > chain-root-ca.pem |
/!\ Petit aparté, je génère les certificats depuis un autre serveur, du coup j’utilise la commande scp pour les envoyer sur mon serveur Zimbra.
1 |
scp -P 2222 /etc/letsencrypt/live/<FQDN>/* user@192.168.3.102:/tmp/ |
Installation du certificat SSL, testé sur 8.5.0
Se positionner sur /tmp
1 2 3 4 5 6 |
$ sudo cp -a /opt/zimbra/ssl/zimbra /opt/zimbra/ssl/zimbra.$(date "+%Y%m%d") $ mv cert.pem commercial.crt $ mv chain-root-ca.pem chain.txt $ sudo cp /tmp/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key $ sudo /opt/zimbra/bin/zmcertmgr verifycrt comm /opt/zimbra/ssl/zimbra/commercial/commercial.key commercial.crt chain.txt $ sudo /opt/zimbra/bin/zmcertmgr deploycrt comm commercial.crt chain.txt |
Se connecter avec le user Zimbra et redémarrer les services
1 2 |
$ sudo su - zimbra $ zmcontrol restart |
/!\ Attention dans la version 8.7.0 il y a quelques changements
Se positionner sur /tmp
1 2 3 4 5 6 |
$ sudo cp -a /opt/zimbra/ssl/zimbra /opt/zimbra/ssl/zimbra.$(date "+%Y%m%d") $ mv cert.pem commercial.crt $ mv chain-root-ca.pem chain.txt $ sudo cp /tmp/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key $ sudo chown zimbra.zimbra /tmp/*.crt $ sudo chmod 666 /tmp/*.crt |
Puis se connecter avec le user Zimbra
1 |
$ sudo su - zimbra |
1 2 3 |
$ /opt/zimbra/bin/zmcertmgr verifycrt comm /opt/zimbra/ssl/zimbra/commercial/commercial.key /tmp/commercial.crt /tmp/chain.txt $ /opt/zimbra/bin/zmcertmgr deploycrt comm /tmp/commercial.crt /tmp/chain.txt $ zmcontrol restart |
Pour vérifier le certificat
1 |
/opt/zimbra/bin/zmcertmgr viewdeployedcrt |