В этом руководстве показано, как сгенерировать CSR (запрос на подпись сертификата) на сервере Courier IMAP с помощью OpenSSL. Сертификат, полученный на основе этого CSR, защищает TLS-соединения, которые используют ваши почтовые клиенты для IMAP, POP3 и SMTP, поэтому учётные данные и сообщения передаются между клиентом и сервером в зашифрованном виде.
Генерация CSR на сервере Courier IMAP
Если вы уже сгенерировали CSR и получили файлы сертификата от удостоверяющего центра, пропустите это руководство и переходите сразу к разделу установка SSL-сертификата на сервере Courier IMAP.
CSR — это блок закодированного текста, содержащий сведения о домене и организации, которые вы хотите сертифицировать. Вы отправляете его в удостоверяющий центр (CA) при заказе сертификата. При генерации CSR также создаётся соответствующий приватный ключ, который остаётся на вашем сервере. Этот ключ понадобится вам позже при установке сертификата, поэтому не удаляйте и не перемещайте его.
Вы можете сгенерировать CSR из командной строки с помощью OpenSSL, как показано ниже, либо воспользоваться нашим генератором CSR, чтобы создать CSR и ключ прямо в браузере.
Шаг 1: Выполните команду OpenSSL
Подключитесь к серверу по SSH и выполните команду ниже. Она сгенерирует новый 2048-битный RSA приватный ключ и соответствующий CSR в текущем каталоге:
openssl req -new -newkey rsa:2048 -nodes
-keyout mail.yourdomain.com.key
-out mail.yourdomain.com.csr
-addext "subjectAltName=DNS:mail.yourdomain.com,DNS:imap.yourdomain.com,DNS:smtp.yourdomain.com"
Параметр -addext добавляет в запрос Subject Alternative Name (SAN). Это не опционально: браузеры и почтовые клиенты сверяют имя хоста сервера именно с SAN, а не с Common Name, поэтому в сертификате должны быть перечислены все имена хостов, используемые клиентами. Укажите все имена хостов, к которым подключаются ваши почтовые клиенты, разделяя их запятыми.
Используйте имена хостов, которые ваши клиенты реально используют для IMAP, POP3 и SMTP, например mail.yourdomain.com, imap.yourdomain.com и smtp.yourdomain.com. Если все три службы используют одно и то же имя хоста, укажите только его. Избегайте использования «голого» домена вашего сайта, если только почтовые клиенты не подключаются к нему напрямую.
Два замечания по самой команде: rsa:2048 — это минимальный размер ключа, принимаемый публичными CA, и вы можете увеличить его до rsa:4096 для более длинного ключа. Параметр -nodes записывает ключ без пароля, что необходимо для Courier, так как он загружает ключ при запуске без запроса пароля.
Шаг 2: Ответьте на запросы
Затем OpenSSL запрашивает данные, из которых складывается отличительное имя (Distinguished Name) сертификата. Запрос идёт в следующем порядке:
- Country Name (2 letter code): двухбуквенный код ISO для вашей страны, например US или GB.
- State or Province Name: полное название штата или региона, а не сокращение.
- Locality Name: город, в котором зарегистрирована ваша организация.
- Organization Name: юридическое название вашей организации, например GPI Holding LLC.
- Organizational Unit Name: оставьте это поле пустым и нажмите Enter. Публичные CA больше не включают поле OU.
- Common Name: основное имя почтового хоста, которое вы защищаете, например mail.yourdomain.com. Оно должно совпадать с одним из имён SAN из шага 1.
- Email Address: необязательно. Можно оставить пустым, поскольку публичные CA не включают его в сертификат.
После Distinguished Name OpenSSL запрашивает два дополнительных атрибута: A challenge password и An optional company name. Оставьте оба поля пустыми и нажмите Enter. Публичные CA их не используют.
Если в запросе показано значение в квадратных скобках, это значение по умолчанию: нажмите Enter, чтобы принять его, или введите новое значение. Не оставляйте всё Distinguished Name пустым, поскольку некоторые сборки OpenSSL в этом случае отказываются записывать CSR. Как минимум заполните поля Country, Organization и Common Name.
Шаг 3: Скопируйте CSR и закажите сертификат
OpenSSL сохраняет два файла в текущем каталоге: mail.yourdomain.com.key (ваш приватный ключ) и mail.yourdomain.com.csr (ваш CSR). Откройте CSR в любом текстовом редакторе или выведите его в терминал:
cat mail.yourdomain.com.csr
Скопируйте весь блок, включая строки -----BEGIN CERTIFICATE REQUEST----- и -----END CERTIFICATE REQUEST-----. Он выглядит следующим образом:
-----BEGIN CERTIFICATE REQUEST-----
MIICvDCCAaQCAQAwXTELMAkGA1UEBhMCVVMx...
...the encoded body of your request...
-----END CERTIFICATE REQUEST-----
Вставьте этот блок в форму заказа при покупке сертификата. Чтобы убедиться в правильности данных перед отправкой, пропустите его через наш декодер CSR, который покажет Common Name, записи SAN, размер ключа и организацию, указанные в CSR.
Храните mail.yourdomain.com.key на сервере, доступным для чтения только root-пользователю. Вы объедините его с выпущенным сертификатом во время установки, и сертификат нельзя установить без соответствующего ему приватного ключа.
После того как CA выпустит ваш сертификат, вы объедините его с этим приватным ключом и цепочкой CA в один PEM-файл и укажете его в настройке Courier TLS_CERTFILE. Полный процесс описан в нашем руководстве как установить SSL-сертификат на сервере Courier IMAP.
Сэкономьте 10% на SSL-сертификатах при заказе сегодня!
Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10


