Воскресенье, 29.06.2025, 01:28
Приветствую Вас Гость | RSS
UBUNTOLOG
Главная | Каталог статей | Регистрация | Вход
Форма входа

Меню сайта
Категории раздела
Server [44]
WEB [14]
Все что связанно с web технологиями
Desktop [11]
Все что связанно с рабочей станцией
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Главная » Статьи » Server

    Установка Let's Envrypt на Zimbra

    Останавливаем службы Zimbra

    su zimbra

    zmproxyctl stop

    zmmailboxdctl stop

     

    Загружаем с git letsencrypt

    su root

    yum -y установить git epel-release

    git clone https://github.com/letsencrypt/letsencrypt

    cd letsencrypt

     

    Получаем сертификаты

    ./letsencrypt-auto certonly --standalone -d mail.your_domain1.ua  -d mail.your_domain2.ua  -d mail.your_domain3.ua

     

    Отвечаем на вопросы

    1. Emergency email - your_mail@example.ua
    2. Yes/No - Y

    Сертификаты генирируются по пути:

    • /etc/letsencrypt/live/mail.your_domain.ua/fullchain.pem
    • /etc/letsencrypt/live/mail.your_domain.ua/privkey.pem

     

    Загружаем корневой и промежуточный сертификат

    cd /etc/letsencrypt/live/mail.your_domain.ua/
    wget https://letsencrypt.org/certs/isrgrootx1.pem.txt
    wget https://letsencrypt.org/certs/letsencryptauthorityx3.pem.txt

     

    Копируем и даем доступ для zimbra

                         su root

    cd /etc/letsencrypt/live/mail.your_domain.ua/
    cat isrgrootx1.pem.txt letsencryptauthorityx3.pem.txt chain.pem > combined.pem
    mkdir /opt/zimbra/ssl/letsencrypt
    cp /etc/letsencrypt/live/mail.your_domain.ua/* /opt/zimbra/ssl/letsencrypt/
    chown zimbra:zimbra /opt/zimbra/ssl/letsencrypt/*
    ls -la /opt/zimbra/ssl/letsencrypt/
     
     
     

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

    cd /opt/zimbra/ssl/letsencrypt/
    /opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem combined.pem
     
     
    cp /opt/zimbra/ssl/letsencrypt/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key
    /opt/zimbra/bin/zmcertmgr deploycrt comm cert.pem combined.pem
     
    zmcontrol restart

     

     

     

    Недавно вышеперечисленные проверки начали сбоить с ошибкой: (Исправление, представленное Дмитрием Гусаковым)

    [zimbra@mail letsencrypt]$ /opt/zimbra/bin/zmcertmgr deploycrt comm cert.pem combined.pem
    ** Verifying 'cert.pem' against '/opt/zimbra/ssl/zimbra/commercial/commercial.key'
    Certificate 'cert.pem' and private key '/opt/zimbra/ssl/zimbra/commercial/commercial.key' match.
    ** Verifying 'cert.pem' against 'combined.pem'
    ERROR: Unable to validate certificate chain: cert.pem: CN = mail.mail.your_domain.ua
    error 20 at 0 depth lookup:unable to get local issuer certificate
     
    #OR
     
    [zimbra@mail letsencrypt]$ /opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem combined.pem
    ** Verifying 'cert.pem' against 'privkey.pem'
    Certificate 'cert.pem' and private key 'privkey.pem' match.
    ** Verifying 'cert.pem' against 'combined.pem'
    ERROR: Unable to validate certificate chain: cert.pem: C = US, O = Let's Encrypt, CN = R3
    error 2 at 1 depth lookup:unable to get issuer certificate

     

     

    В указанном выше случае вы можете решить эту проблему, изменив шаги для создания файла comcombаd.pem в 

    cd /etc/letsencrypt/live/mail.your_domain.ua/
    wget https://letsencrypt.org/certs/lets-encrypt-r3.pem
    cat isrgrootx1.pem.txt lets-encrypt-r3.pem chain.pem > combined.pem
    cp /etc/letsencrypt/live/mail.your_domain.ua/* /opt/zimbra/ssl/letsencrypt/
    chown zimbra:zimbra /opt/zimbra/ssl/letsencrypt/* 

     

    После этого попробуйте снова выполнить шаг verifycrt, и на этот раз он должен сработать.

    Откройте https://mail.your_domain.ua:7071/zimbraAdmin/ и убедитесь, что сертификат вместе с корневым "ISRG Root X1" и промежуточным "Lets Encrypt Authority X3" подходит правильно

    Тест сертификатов:

    openssl s_client -starttls smtp -connect your_domain.ua:25 -showcerts
    openssl s_client -connect your_domain.ua:465 -showcerts
    openssl s_client -connect your_domain.ua:443 -showcerts
    openssl s_client -connect your_domain.ua:993 -showcerts
    openssl s_client -starttls imap -connect your_domain.ua:143 -showcerts

     

    Вы также можете протестировать настройку сертификата, используя https://www.ssllabs.com/ssltest/. Если у старого варианта Let-encrypt root / intermediate истекает срок действия, тогда zimbra может правильно открываться в некоторых браузерах (или в режиме инкогнито), давая ошибку в других модах. Такие проблемы можно определить с помощью теста SSL labs. Затем они могут быть исправлены путем повторной загрузки сертификатов Let's-encrypt с https://letsencrypt.org/certificates/ После повторной загрузки обновленных сертификатов необходимо сделать:

    cp /etc/letsencrypt/live/mail.your_domain.ua/* /opt/zimbra/ssl/letsencrypt/
    chown zimbra:zimbra /opt/zimbra/ssl/letsencrypt/*

    Выполните шаги zmcertmgr verifycrt и deploycrt.
     

     

    Чтобы настроить Zimbra на прослушивание порта 80 для принудительного перенаправления HTTPS:

    su - zimbra
    ~/libexec/zmproxyconfig -e -w -o -a 8080:80:8443:443 -x https -H `zmhostname`
    zmprov ms `zmhostname` zimbraReverseProxyMailMode redirect
     

    Обратите внимание, что более ранний метод простого использования « zmtlsctl redirect » больше не доступен в последних версиях. Следовательно, требуются вышеуказанные шаги

     

    Конфигурация продления SSL-сертификата через crontab

    Создаем скрипт 

    vim /root/renew-certificate.sh 

     

    su - zimbra -c "zmcontrol stop"
    /root/letsencrypt/letsencrypt-auto renew
    cp /etc/letsencrypt/live/mail.your_domain.ua/privkey.pem /opt/zimbra/ssl/letsencrypt/
    cp /etc/letsencrypt/live/mail.your_domain.ua/cert.pem /opt/zimbra/ssl/letsencrypt/
    cp /opt/zimbra/ssl/letsencrypt/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key
    chown zimbra:zimbra /opt/zimbra/ssl/letsencrypt/*
    su - zimbra -c "cd /opt/zimbra/ssl/letsencrypt/; /opt/zimbra/bin/zmcertmgr deploycrt comm cert.pem combined.pem"
    su - zimbra -c "zmcontrol start"

     

    Даем права

    chmod +x /root/renew-certificate.sh

    Добавляем в крон

    crontab -e

    10 5 * * 0 /root/renew-certificate.sh

    где вместо 10 и 5 используйте свое значение от 5 до 55 для минут (первое число) и свое значение от 1 до 5 для часа (второе число)

     



    Источник: https://www.sbarjatiya.com/notes_wiki/index.php/CentOS_7.x_Install_lets_encrypt_automated_SSL_certificate_in_Zimbra
    Категория: Server | Добавил: Vyacheslav (27.10.2021)
    Просмотров: 354 | Рейтинг: 0.0/0
    Всего комментариев: 0
    Имя *:
    Email *:
    Код *:
    Copyright VR © 2025
    Сделать бесплатный сайт с uCoz