Ocsp comodoca com что это
Перейти к содержимому

Ocsp comodoca com что это

  • автор:

DNS параметры домена

Хотите узнать DNS параметры домена? Это просто! Введите его в поле ниже и нажмите «Проверить».

; > DiG 9.11.5-P4-5.1+deb10u7-Debian > ocsp.comodoca.com +noidnout -t ANY
;; global options: +cmd
;; Got answer:
;; ->>HEADER ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;ocsp.comodoca.com. IN ANY

;; ANSWER SECTION:
ocsp.comodoca.com. 124 IN CNAME ocsp.comodoca.com.cdn.cloudflare.net.

;; Query time: 0 msec
;; SERVER: 213.133.98.98#53(213.133.98.98)
;; WHEN: Mon Jan 29 03:39:10 MSK 2024
;; MSG SIZE rcvd: 96

Проверка SSL-сертификатов на предмет отзыва

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

Все SSL-сертификаты, как правило, выдаются на ограниченный срок, по окончании которого они теряют силу и должны быть переизданы. Однако бывают случаи, когда сертификат может быть отозван ещё до окончания срока действия. Причин на отзыв SSL-сертификата довольно много, самые распространённые из них – закрытый ключ был утерян или скомпрометирован, изменились регистрационные данные компании и т.п.

Существует 2 альтернативных способа проверить, находится ли SSL-сертификат в списках отзыва:

  • CRL (Certificate Revocation List) – проверяется наличие серийного номера сертификата в списке отзыва.
  • OCSP (Online Certificate Status Protocol) – сертификат отправляется на специализированный сервер, где проверяется его статус.

CRL

Скачаем сертификат интересующего нас домена:

echo -n | openssl s_client -connect habr.com:443 -servername habr.com 2>&1 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /tmp/habr.com.crt

Спасибо legioner за подсказку добавить параметр -servername — он необходим для правильного выбора сертификата, если на один IP-адрес их установлено несколько (SNI).

Смотрим детали сертификата:

openssl x509 -noout -text -in /tmp/habr.com.crt

Здесь нас интересует в разделе «X509v3 CRL Distribution Points» пункт «Full Name».

Скачиваем по этой ссылке список CLR:

wget http://crl.comodoca.com/COMODORSADomainValidationSecureServerCA.crl

Выдираем серийный номер сертификата:

openssl x509 -in /tmp/habr.com.crt -noout -serial

Смотрим, есть ли этот номер в списке CRL:

openssl crl -inform DER -text -in COMODORSADomainValidationSecureServerCA.crl | grep "90E58B0601C3AD98F07AEE092041C437"

Если ничего не нашлось, значит сертификат не является отозванным.

OCSP

Выведем на экран сертификат интересующего нас домена и цепочки промежуточных (Intermediate) сертификатов:

echo -n | openssl s_client -connect habr.com:443 -showcerts

Сохраним в файлы сертификат домена и промежуточный сертификат (код между строками ——BEGIN CERTIFICATE—— и ——END CERTIFICATE——):

/tmp/habr.com.crt /tmp/intermediate.crt
openssl x509 -in /tmp/habr.com.crt -noout -ocsp_uri

Отправим запрос OCSP-серверу проверить сертификат на предмет отзыва:

openssl ocsp -url http://ocsp.comodoca.com -issuer /tmp/intermediate.crt -cert /tmp/habr.com.crt -text

Если всё указали правильно, то OCSP-сервер должен вернуть информацию по сертификату.

Здесь интерес представляют последние строчки:

Response verify OK /tmp/habr.com.crt: good

Об отсутствии сертификата в списке отозванных говорит значение «good», если же сертификат отозвали, то значение будет «revoked».

Автоматизация

Проверять SSL-сертификаты на предмет отзыва вручную не всегда удобно, поэтому процесс проверки можно автоматизировать.

Для этого берём с Github готовый скрипт ssl-check-revoc.sh, который осуществляет проверку сертификатов методом CRL:

wget https://raw.githubusercontent.com/o-pod/security/master/ssl-check-revoc.sh

Далее делаем скрипт исполняемым:

chmod a+x ssl-check-revoc.sh

Теперь можно проверять как уже установленные сертификаты для домена, так и сохранённые локально в файлы (опция -f):

./ssl-check-revoc.sh habr.com -v

Zabbix

Скрипт ssl-check-revoc.sh может проверять сертификаты не только из консоли, он также вполне подходит в качестве чекера для Zabbix, поэтому всю грязную работу по отслеживанию попадания сертификатов в список отзыва можно поручить системе мониторинга.

Заходим в конфиг Zabbix /etc/zabbix/zabbix_server.conf и смотрим, где лежат скрипты для внешних проверок:

ExternalScripts=/etc/zabbix/externalscripts

Копируем в этот каталог наш скрипт и рестартуем Zabbix:

sudo cp ssl-check-revoc.sh /etc/zabbix/externalscripts/ sudo systemctl restart zabbix-server

Заходим в веб-интерфейс и создаём шаблон (Configuration >> Templates >> Create template). В качестве имени шаблона указываем «Template SSL Checking». Затем внутри шаблона создаём элемент данных (Item) «SSL Certificate in Revocation List», в качестве ключа указываем «ssl-check-revoc.sh[]», с типом проверки «External check». Интервал проверок можно установить на своё усмотрение в зависимости от критичности проекта.

Также понадобятся два триггера:

1. Для сигнализации отзыва сертификата «Certificate for domain is in revocation list»
Expression: «