Установка коммерческого (commercial) SSL-сертификата в Zimbra Collaboration 8.X.

Опишу как установить коммерческий (commercial) SSL-сертификат на почтовый сервер Zimbra Collaboration 8.8.15 GA Release.

В случае если у вас имеется только PFX файл сертификата, то при помощи OpenSSL можно легко извлечь закрытый ключ сертификата, сам сертификат и цепочку сертификатов CA:

openssl pkcs12 -in <filename.pfx> -nocerts -nodes | sed -ne '/-BEGIN PRIVATE KEY-/,/-END PRIVATE KEY-/p' > <clientcert.key>
openssl pkcs12 -in <filename.pfx> -clcerts -nokeys | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > <clientcert.cer>
openssl pkcs12 -in <filename.pfx> -cacerts -nokeys -chain | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > <cacerts.cer>

 

Копируем файлы сертификатов в каталог /opt/zimbra/ssl/zimbra/commercial/ и назначаем права доступа для них.

chown zimbra:zimbra -R /opt/zimbra/ssl/zimbra/commercial/*
chmod 640 -R /opt/zimbra/ssl/zimbra/commercial/*
ВНИМАНИЕ! прошу обратить внимание что путь установки Zimbra может отличаться от моего, поэтому учитывайте это при копировании сертификатов.

 

Выполняем верификацию сертификатов:

sudo su - zimbra -c "zmcertmgr verifycrt comm /opt/zimbra/ssl/zimbra/commercial/clientcert.key /opt/zimbra/ssl/zimbra/commercial/clientcert.cer /opt/zimbra/ssl/zimbra/commercial/cacerts.cer"

прим. Успешная верификация сертификата выглядит вот так:

** Verifying '/opt/zimbra/ssl/zimbra/commercial/clientcert.cer' against '/opt/zimbra/ssl/zimbra/commercial/clientcert.key'
Certificate '/opt/zimbra/ssl/zimbra/commercial/clientcert.cer' and private key '/opt/zimbra/ssl/zimbra/commercial/clientcert.key' match.
** Verifying '/opt/zimbra/ssl/zimbra/commercial/clientcert.cer' against '/opt/zimbra/ssl/zimbra/commercial/cacerts.cer'
Valid certificate chain: /opt/zimbra/ssl/zimbra/commercial/clientcert.cer: OK

 

Переименовываем файл закрытого ключа в понятный вид для Zimbra и устанавливаем сертификат:

mv /opt/zimbra/ssl/zimbra/commercial/clientcert.key /opt/zimbra/ssl/zimbra/commercial/commercial.key
sudo su - zimbra -c "zmcertmgr deploycrt comm /opt/zimbra/ssl/zimbra/commercial/clientcert.cer /opt/zimbra/ssl/zimbra/commercial/cacerts.cer"

прим. Успешная установка сертификата выглядит вот так:

** Verifying '/opt/zimbra/ssl/zimbra/commercial/clientcert.cer' against '/opt/zimbra/ssl/zimbra/commercial/commercial.key'
Certificate '/opt/zimbra/ssl/zimbra/commercial/clientcert.cer' and private key '/opt/zimbra/ssl/zimbra/commercial/commercial.key' match.
** Verifying '/opt/zimbra/ssl/zimbra/commercial/clientcert.cer' against '/opt/zimbra/ssl/zimbra/commercial/cacerts.cer'
Valid certificate chain: /opt/zimbra/ssl/zimbra/commercial/clientcert.cer: OK
** Copying '/opt/zimbra/ssl/zimbra/commercial/clientcert.cer' to '/opt/zimbra/ssl/zimbra/commercial/commercial.crt'
** Copying '/opt/zimbra/ssl/zimbra/commercial/cacerts.cer' to '/opt/zimbra/ssl/zimbra/commercial/cacerts.crt'
** Appending ca chain '/opt/zimbra/ssl/zimbra/commercial/cacerts.cer' to '/opt/zimbra/ssl/zimbra/commercial/commercial.crt'
** Importing cert '/opt/zimbra/ssl/zimbra/commercial/cacerts.crt' as 'zcs-user-commercial_ca' into cacerts '/opt/zimbra/common/lib/jvm/java/lib/security/cacerts'
** NOTE: restart mailboxd to use the imported certificate.
** Saving config key 'zimbraSSLCertificate' via zmprov modifyServer mail.rapart.aero...ok
** Saving config key 'zimbraSSLPrivateKey' via zmprov modifyServer mail.rapart.aero...ok
** Installing imapd certificate '/opt/zimbra/conf/imapd.crt' and key '/opt/zimbra/conf/imapd.key'
** Copying '/opt/zimbra/ssl/zimbra/commercial/commercial.crt' to '/opt/zimbra/conf/imapd.crt'
** Copying '/opt/zimbra/ssl/zimbra/commercial/commercial.key' to '/opt/zimbra/conf/imapd.key'
** Creating file '/opt/zimbra/ssl/zimbra/jetty.pkcs12'
** Creating keystore '/opt/zimbra/conf/imapd.keystore'
** Installing ldap certificate '/opt/zimbra/conf/slapd.crt' and key '/opt/zimbra/conf/slapd.key'
** Copying '/opt/zimbra/ssl/zimbra/commercial/commercial.crt' to '/opt/zimbra/conf/slapd.crt'
** Copying '/opt/zimbra/ssl/zimbra/commercial/commercial.key' to '/opt/zimbra/conf/slapd.key'
** Creating file '/opt/zimbra/ssl/zimbra/jetty.pkcs12'
** Creating keystore '/opt/zimbra/mailboxd/etc/keystore'
** Installing mta certificate '/opt/zimbra/conf/smtpd.crt' and key '/opt/zimbra/conf/smtpd.key'
** Copying '/opt/zimbra/ssl/zimbra/commercial/commercial.crt' to '/opt/zimbra/conf/smtpd.crt'
** Copying '/opt/zimbra/ssl/zimbra/commercial/commercial.key' to '/opt/zimbra/conf/smtpd.key'
** Installing proxy certificate '/opt/zimbra/conf/nginx.crt' and key '/opt/zimbra/conf/nginx.key'
** Copying '/opt/zimbra/ssl/zimbra/commercial/commercial.crt' to '/opt/zimbra/conf/nginx.crt'
** Copying '/opt/zimbra/ssl/zimbra/commercial/commercial.key' to '/opt/zimbra/conf/nginx.key'
** NOTE: restart services to use the new certificates.
** Cleaning up 3 files from '/opt/zimbra/conf/ca'
** Removing /opt/zimbra/conf/ca/9e387059.0
** Removing /opt/zimbra/conf/ca/ca.key
** Removing /opt/zimbra/conf/ca/ca.pem
** Copying CA to /opt/zimbra/conf/ca
** Copying '/opt/zimbra/ssl/zimbra/ca/ca.key' to '/opt/zimbra/conf/ca/ca.key'
** Copying '/opt/zimbra/ssl/zimbra/ca/ca.pem' to '/opt/zimbra/conf/ca/ca.pem'
** Creating CA hash symlink '9e387059.0' -> 'ca.pem'
** Creating /opt/zimbra/conf/ca/commercial_ca_1.crt
** Creating CA hash symlink 'f338d8c3.0' -> 'commercial_ca_1.crt'
** Creating /opt/zimbra/conf/ca/commercial_ca_2.crt
** Creating CA hash symlink '036624bb.0' -> 'commercial_ca_2.crt'
** Creating /opt/zimbra/conf/ca/commercial_ca_3.crt
** Creating CA hash symlink '062cdee6.0' -> 'commercial_ca_3.crt'

 

По окончании установки сертификата, перезапускаем службы Zimbra

su - zimbra -c "zmcontrol restart"
 

ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОБЛАГОДАРИ АВТОРА

Оставьте комментарий

семнадцать − 4 =