Это руководство показывает вам как сгенерировать CSR (Certificate Signing Request) в Zimbra Collaboration Suite (ZCS). У вас есть два варианта: консоль администрирования Zimbra (веб-интерфейс) или командная строка с использованием zmcertmgr. Оба способа создают одну и ту же пару файлов на сервере: CSR, который вы отправляете в свой удостоверяющий центр (CA), и соответствующий приватный ключ, который остаётся на Zimbra. CLI — более быстрый путь на современных версиях ZCS 10.x и даёт вам точный контроль над списком SAN, размером ключа и алгоритмом хэширования.
Zimbra хранит коммерческий CSR и ключ в фиксированных местах в /opt/zimbra/ssl/zimbra/commercial/. Одновременно может существовать только одна пара коммерческого CSR и ключа, поэтому повторный запуск createcsr перезаписывает предыдущие файлы. Сгенерируйте CSR один раз, сохраните копию обоих файлов в надёжном месте и отправьте CSR в свой CA.
Предварительные требования
- Работающий сервер Zimbra Collaboration Suite. ZCS 10.1.x (Daffodil) — текущий широко используемый релиз; шаги ниже также работают на ZCS 9.0.x и 8.8.x.
- SSH-доступ к серверу Zimbra, а также права root или sudo на этом хосте (для метода командной строки).
- Учётные данные администратора для консоли администрирования Zimbra по адресу https://server.yourdomain.com:7071 (для метода веб-интерфейса).
- Полное доменное имя (FQDN), к которому подключаются ваши почтовые клиенты, например mail.example.com. Это значение указывается в поле Common Name (CN) и как первое значение Subject Alternative Name (SAN).
Генерация CSR на Zimbra через консоль администрирования
Если вы предпочитаете графический процесс работы, мастер установки сертификата, встроенный в консоль администрирования, проведёт вас через каждое поле. Генерация CSR здесь также создаёт соответствующий приватный ключ на сервере по адресу /opt/zimbra/ssl/zimbra/commercial/commercial.key, именно там, где его будет искать последующий шаг установки.
Шаг 1: Войдите в консоль администрирования Zimbra
Откройте браузер и перейдите по адресу https://server.yourdomain.com:7071, заменив server.yourdomain.com именем сервера, которое вы указали при настройке Zimbra. Войдите с помощью учётной записи администратора, созданной во время установки (обычно [email protected]).
Шаг 2: Запустите мастер сертификата
- В левом навигационном меню нажмите Configure, затем Certificates.
- Нажмите на значок шестерёнки в правом верхнем углу (рядом с Help) и выберите Install Certificate.
- В раскрывающемся списке Server Name выберите сервер, который хотите защитить, затем нажмите Next.
- Выберите Generate the CSR for the commercial certificate authorizer, затем нажмите Next.
Шаг 3: Заполните данные CSR
Мастер запрашивает те же поля, которые любому CA нужны для проверки и выпуска сертификата. Используйте точную, актуальную информацию; несоответствия между CSR и данными вашей организации — распространённая причина неудачной проверки.
- Digest: выберите SHA-256. SHA-1 больше не поддерживается ни одним публичным CA.
- Key Length: выберите 2048 бит (публичный минимум). 4096 также принимается, если ваша политика безопасности требует более длинного ключа.
- Common Name: введите полное доменное имя, к которому подключаются ваши пользователи, например mail.example.com. Для Wildcard-сертификата отметьте Use Wildcard Common Name и введите *.example.com.
- Country Name: двухбуквенный код по ISO 3166-1 alpha-2, где официально зарегистрирована ваша организация, например US.
- State/Province: полное название штата или региона, без сокращений (например California, а не CA).
- City: город, в котором зарегистрирована ваша организация.
- Organization Name: юридическое название вашей компании, как оно указано в публичных реестрах, например Example LLC. Для сертификата с проверкой домена (Domain Validation, DV) вы можете использовать своё полное имя или оставить поле пустым.
- Organization Unit: оставьте пустым. Публичные CA больше не включают поле OU (устарело согласно требованиям CA/Browser Forum). Если форма не принимает пустое значение, введите NA, чтобы продолжить; CA удалит или проигнорирует это значение.
- Subject Alternative Names: для мультидоменного (SAN) сертификата перечислите здесь все дополнительные доменные имена через запятую. Для сертификата с одним именем или Wildcard-сертификата оставьте это поле пустым.
Ещё раз проверьте значения и нажмите Next. Zimbra сгенерирует CSR и ключ на сервере.
Шаг 4: Скачайте CSR
Нажмите Download the CSR и сохраните файл. Откройте его в любом текстовом редакторе (Notepad, TextEdit или vim) и скопируйте весь блок, включая маркеры ——BEGIN CERTIFICATE REQUEST—— и ——END CERTIFICATE REQUEST——, в форму заказа SSL, предоставленную вашим CA. Перед отправкой вы можете вставить CSR в наш Декодер CSR, чтобы убедиться, что все поля читаются корректно.
Генерация CSR на Zimbra с помощью командной строки
CLI — самый прямой способ сгенерировать CSR на Zimbra, и это единственный способ полностью контролировать список SAN, размер ключа и алгоритм хэширования с помощью одной команды. Вы запускаете zmcertmgr от имени пользователя zimbra; на ZCS 8.7 и более поздних версиях не следует запускать его от имени root.
Шаг 1: Подключитесь к серверу и переключитесь на пользователя zimbra
Подключитесь по SSH к серверу Zimbra, затем переключитесь с root на пользователя zimbra. Используйте дефис с пробелами вокруг него; дефис настраивает чистую сессию входа с загруженным окружением Zimbra:
su - zimbra
Чтобы затем вернуться к root, введите exit, или запустите sudo su из обычной учётной записи.
Шаг 2: Запустите zmcertmgr createcsr
Инструмент zmcertmgr находится по адресу /opt/zimbra/bin/zmcertmgr. Подкоманда createcsr comm создаёт коммерческий CSR и соответствующий ключ. Выполните приведённую ниже команду от имени пользователя zimbra, в одну строку (обратные слэши позволяют разбить её на несколько строк для удобства чтения):
/opt/zimbra/bin/zmcertmgr createcsr comm -new
-keysize 2048
-digest sha256
-subject "/C=US/ST=California/L=San Jose/O=Example LLC/CN=mail.example.com"
-subjectAltNames "mail.example.com"
Замените примеры значений на свои собственные. Вот что делает каждый флаг:
- comm: создаёт коммерческий CSR (в отличие от self, который создаёт самоподписанный сертификат).
- -new: генерирует новый ключ и CSR. Без этого флага zmcertmgr пытается использовать существующий ключ.
- -keysize 2048: размер ключа RSA в битах. 2048 — публичный минимум; используйте 4096, если этого требует ваша политика.
- -digest sha256: алгоритм хэширования подписи. SHA-256 — текущий стандарт.
- -subject «/C=…/CN=…»: отличительное имя (distinguished name). Установите CN как основное доменное имя. Опустите OU: публичные CA признали это поле устаревшим.
- -subjectAltNames «host1,host2,…»: список через запятую всех доменных имён, которые должен покрывать сертификат. Включите сюда также CN: современные CA и браузеры проверяют по списку SAN, а не по устаревшему полю CN.
Для мультидоменного сертификата, который покрывает несколько доменных имён, перечислите их все в -subjectAltNames:
/opt/zimbra/bin/zmcertmgr createcsr comm -new
-keysize 2048
-digest sha256
-subject "/C=US/ST=California/L=San Jose/O=Example LLC/CN=mail.example.com"
-subjectAltNames "mail.example.com,webmail.example.com,smtp.example.com"
Для Wildcard-сертификата используйте форму *.example.com как в CN, так и в SAN. Wildcard покрывает один уровень поддомена (то есть *.example.com покрывает mail.example.com и webmail.example.com, но не сам example.com или a.b.example.com):
/opt/zimbra/bin/zmcertmgr createcsr comm -new
-keysize 2048
-digest sha256
-subject "/C=US/ST=California/L=San Jose/O=Example LLC/CN=*.example.com"
-subjectAltNames "*.example.com"
Если вам вообще не нужны SAN (редкий случай для современных CA), добавьте -noDefaultSubjectAltName, чтобы полностью подавить блок SAN:
/opt/zimbra/bin/zmcertmgr createcsr comm -new
-keysize 2048
-digest sha256
-subject "/C=US/ST=California/L=San Jose/O=Example LLC/CN=mail.example.com"
-noDefaultSubjectAltName
Шаг 3: Найдите и скопируйте CSR
Zimbra записывает новый CSR и ключ по фиксированным путям:
- CSR: /opt/zimbra/ssl/zimbra/commercial/commercial.csr
- Приватный ключ: /opt/zimbra/ssl/zimbra/commercial/commercial.key
Выведите содержимое CSR в терминал:
cat /opt/zimbra/ssl/zimbra/commercial/commercial.csr
Скопируйте весь блок, включая маркеры ——BEGIN CERTIFICATE REQUEST—— и ——END CERTIFICATE REQUEST——, и вставьте его в форму заказа SSL, предоставленную вашим CA. Сохраните соответствующий commercial.key на сервере; он понадобится при установке.
Шаг 4: Проверьте CSR перед отправкой
Перед отправкой CSR декодируйте его, чтобы убедиться, что CN, список SAN, размер ключа и поля организации выглядят корректно. Опечатка, обнаруженная сейчас, — это один запрос на перевыпуск меньше после проверки со стороны CA.
На сервере используйте OpenSSL:
openssl req -in /opt/zimbra/ssl/zimbra/commercial/commercial.csr -noout -text
Или вставьте блок CSR в наш Декодер CSR, чтобы получить понятную расшифровку каждого поля.
Следующие шаги: установка выпущенного сертификата
После того как CA проверит ваш CSR и выпустит сертификат, следуйте нашему руководству по установке SSL-сертификата на Zimbra, чтобы развернуть его. Шаги установки используют файл commercial.key, который Zimbra создала по адресу /opt/zimbra/ssl/zimbra/commercial/commercial.key, поэтому оставьте этот файл на месте.
Часто задаваемые вопросы
Оба варианта работают. CLI с командой zmcertmgr createcsr comm — более прямой вариант, который даёт полный контроль над списком SAN, размером ключа и алгоритмом хэширования с помощью одной команды. Мастер консоли администрирования лучше подходит, если вы предпочитаете пошаговую форму. Оба метода записывают одинаковые файлы по одинаковым путям, поэтому последующий процесс установки идентичен.
Zimbra записывает коммерческий CSR по адресу /opt/zimbra/ssl/zimbra/commercial/commercial.csr, а соответствующий приватный ключ — по адресу /opt/zimbra/ssl/zimbra/commercial/commercial.key. Эти пути фиксированы; шаг установки ожидает найти ключ именно в этом месте.
Нет. Zimbra хранит одновременно только один коммерческий CSR и один соответствующий ему ключ. Повторный запуск zmcertmgr createcsr comm -new перезаписывает как commercial.csr, так и commercial.key. Сделайте резервную копию предыдущей пары перед повторной генерацией, если она вам всё ещё нужна.
Запускайте его от имени пользователя zimbra. Переключитесь с root с помощью su - zimbra (обратите внимание на пробелы вокруг дефиса, что настраивает сессию входа с окружением Zimbra). Запуск команд CSR или сертификата от имени root на ZCS 8.7 и более поздних версиях может привести к тому, что файлы будут иметь неверного владельца, и вызвать ошибки прав доступа, когда службы попытаются их прочитать.
Перечислите их все в флаге -subjectAltNames в виде строки, разделённой запятыми, и включите Common Name также в список SAN. Например: -subjectAltNames "mail.example.com,webmail.example.com,smtp.example.com". Современные браузеры и CA проверяют по списку SAN, а не по устаревшему полю Common Name, поэтому доменное имя, отсутствующее в SAN, не будет доверенным.
Сэкономьте 10% на SSL-сертификатах при заказе сегодня!
Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10


