Сертификат Apache

Сертификат ApacheДля меня осень – пора продления сертификатов для различных сервисов компании. Не так давно мне нужно было обновить сертификат на одном из веб-ресурсов. Каждый год я проделываю практически одну и ту же последовательность действий и каждый раз мне встречаются какие-то новые подводные камни, ошибки, которых раньше не было и другие не очень приятные моменты. И это несмотря на всю простоту процесса. С этого момента любые отклонения от привычного простого порядка действий я буду фиксировать в этой статье.


Подробнее о цифровых сертификатах вы можете прочитать в основной статье тематики – Цифровые сертификаты.


Сертификат Apache от доверенного ЦС

Для начала рассмотрим сам процесс продления сертификата.

Раз речь зашла о продлении, значит сам сертификат у нас имеется, есть и закрытый ключ к нему, который конечно же никому не показывается и хранится в надежном месте. Так уж исторически сложилось, что сертификаты мы покупали всегда у Comodo 1 через ЛидерТелеком 2 (не сочтите за рекламу). Для вводных данных этого достаточно, перейдем к делу:

Первым делом звоним нашему менеджеру и говорим о желании продлить сертификат. Он вам должен сказать, что, в связи с использованием Apache, нет необходимости заново генерировать запрос на получение сертификата (файл с расширением .csr), а можно использовать тот, который у вас остался с самого начала. Это упрощает процесс с технической точки зрения. На данный момент остается пройти проверку владения доменом 3 и проверку организации 4. Для проверки владения доменом вам на почту будет отправлено письмо:

Сертификата Apache

Переходим по ссылке и вводим код из письма:

apache certificate renewing 02

apache certificate renewing 03

Дальше нужно пройти проверку организации, все как при первом запросе сертификата: получаем письмо, переходим по ссылке, вводим код, заказываем звонок:

apache certificate renewing 04

apache certificate renewing 05

apache certificate renewing 06

apache certificate renewing 07

Есть некоторые нюансы, которые обязательно нужно знать:

  1. Как работ узнает на какой номер звонить? Все просто: ваша организация должна быть зарегистрирована на желтых страницах. Где именно или где лучше – уточните у менеджера (в моем случае это был yell.ru 5);
  2. Робот умеет звонить на добавочный номер. Эта функция появилась не так давно (по крайней мере у Comodo) и в некоторых случаях способная значительно облегчить жизнь;
  3. На пути робота не должно быть голосовых меню (если голосовое меню все же есть, то указывайте внутренний номер абонента, см. пункт 2);
  4. Робот достаточно шустрый – иногда между нажатием кнопки и звонком проходит менее 5 секунд;
  5. Даже если у робота выберете русский язык, он все равно будет говорить на английском;
  6. Робот спросит заказывали вы сертификат или нет. Если заказывали, нажмите “1”. Проверочный код повторит два раза.

После проверки вы получите ваш сертификат и документы для оплаты. Дальше переходим к установке сертификата на веб-сервер.

Если вы копируете содержимое сертификата вручную в новый файл (как это делал я), то важно, чтобы после —–BEGIN CERTIFICATE—– был переход на новую строку. У меня скопировалось неправильно и сервер не запускался, сохраняя в логах следующую информацию:

[error] Init: Unable to read server certificate from file /etc/ssl/certs/2015.portal.scout-gps.ru.crt
[error] SSL Library Error: 218529960 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[error] SSL Library Error: 218595386 error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error

Расположение лог-файлов апача по умолчанию 6 в Debian:

/var/log/apache2/error.log

Для надежности можно скопировать сами файлы на сервер, но я привык копировать содержимое, на этом и попался.

Добавляем привязку сертификатов. По умолчанию в файле:

/etc/apache2/sites-enabled/default-ssl

Строчки:

SSLCertificateFile /etc/ssl/certs/cert.crt #ваш сертификат
SSLCertificateKeyFile /etc/ssl/private/cert.key #закрытый ключ сертификата
SSLCertificateChainFile /etc/ssl/certs/cert.ca-bundle #содержит корневой и промежуточный сертификаты вашего центра сертификации

Разумеется путь и имя файлов используйте свои.

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

Notes:

  1. Comodo
  2. ЛидерТелеком
  3. Проверку владения доменом придется пройти в любом случае, чтобы доказать тот факт, что домен действительно принадлежит вам
  4. А вот с проверкой организации дела обстоят немного по-другому. Эту проверку можно и не проходить, если вам не нужно указание в сертификате данных вашей организации. Эти данные указываются в поле “Субъект” сертификата и не влияют ни на что другое
  5. yell.ru
  6. Apache Log Files
Яндекс.Метрика