Ребята, у меня странная проблема, и я не знаю, где ещё искать. Просмотрел этот форум по вопросам CRL, вроде все случаи изучил, но мой никак не подходит.
Router OS: 6.47.7
Цель: использовать для OpenVPN и проверять сертификаты через CRL на предмет отзыва
Сертификат: сделан на базе Active Directory CA, не самоподписанный и управляется не напрямую MikroTik
Свойства сертификата: подписан внутренним CA
Флаги на MikroTik: KTL (Key, Trusted, CRL)
В хранилище сертификатов также добавлен внутренний CA с флагом Т (Trusted). Итого есть как сертификат CA (T), так и серверный сертификат OpenVPN (KTL) в хранилище MikroTik. CA имеет право подписывать CRL.
Ключ и запрос созданы на MikroTik, скачаны, отправлены в CA и подписаны на сервере CA. Потом импортированы обратно через WinBox. Всё делается через WinBox.
CRL подписан тем же CA, что и сертификат OpenVPN.
Сертификат OpenVPN содержит только одно место публикации CRL — через HTTP, а именно:
http://<host.FQDN>/CRL/CA.crl.
Это единственный URL, указанный в сертификате в разделе «CRL published at».
При импорте OpenVPN-сертификата в хранилище сертификатов URL автоматически добавился и определяется как: dynamic + invalid, с URL http://<host.FQDN>/CRL/CA.crl, а также с именем сертификата, указанным в хранилище MikroTik на вкладке «Certificates».
В настройках CRL я включил «CRL Download», но «Use CRL» пока не активировал.
Так как у меня на MikroTik настроен внешний DNS, я создал статическую DNS-запись для хоста <host.FQDN>, указывающую на IP сервера.
CRL работает и если ввести IP сервера вместо FQDN.
Проверял в терминале командой:
put [resolve <host.FQDN>]
— которая возвращает корректный IP сервера CRL.
В теории MikroTik должен подтягивать CRL.
На веб-странице CRL не нужна авторизация для скачивания CRL.
В логах вижу:
looking for CRLs in openVPN.cer_0
found CRL http://<host.FQDN>/CRL/CA.crl
start CRL update
trust store updated
start CRL update
start CRL update
… (повторяется каждые 1 минуту)
Но всё равно CRL в WinBox показывает красным и статус «invalid». Значение revoked = unknown. Даже если вручную указать ссылку с IP адресом сервера CRL — статус остаётся «invalid».
Есть идеи, как повысить уровень отладки или это исправить?
Возможные проблемы, которые я вижу:
- Версия 6.47.7 багованная
- Не используется статический DNS для разрешения FQDN, указанного в конфиге CRL. Если это так, будет ошибка, потому что IP не будет получен. Но статическая запись работает с IP, так что, похоже, не в этом проблема.
- Что-то не так с сертификатом, CA или сертификатом OpenVPN. На стороне CA я особо ничего не могу сделать. Можно менять шаблоны для подписи сертификата, но там ничего, касающегося CRL, не настраивается — только на уровне CA. Формат менять нельзя, да и пришлось убрать другие места публикации (например LDAP, который MikroTik не поддерживает), так что остался только HTTP.
- Возможно, проблема с типом или версией CRL, или чем-то другим. Не уверен, как проверить целостность того, что принимает MikroTik.
В общем, запутался.
Router OS: 6.47.7
Цель: использовать для OpenVPN и проверять сертификаты через CRL на предмет отзыва
Сертификат: сделан на базе Active Directory CA, не самоподписанный и управляется не напрямую MikroTik
Свойства сертификата: подписан внутренним CA
Флаги на MikroTik: KTL (Key, Trusted, CRL)
В хранилище сертификатов также добавлен внутренний CA с флагом Т (Trusted). Итого есть как сертификат CA (T), так и серверный сертификат OpenVPN (KTL) в хранилище MikroTik. CA имеет право подписывать CRL.
Ключ и запрос созданы на MikroTik, скачаны, отправлены в CA и подписаны на сервере CA. Потом импортированы обратно через WinBox. Всё делается через WinBox.
CRL подписан тем же CA, что и сертификат OpenVPN.
Сертификат OpenVPN содержит только одно место публикации CRL — через HTTP, а именно:
http://<host.FQDN>/CRL/CA.crl.
Это единственный URL, указанный в сертификате в разделе «CRL published at».
При импорте OpenVPN-сертификата в хранилище сертификатов URL автоматически добавился и определяется как: dynamic + invalid, с URL http://<host.FQDN>/CRL/CA.crl, а также с именем сертификата, указанным в хранилище MikroTik на вкладке «Certificates».
В настройках CRL я включил «CRL Download», но «Use CRL» пока не активировал.
Так как у меня на MikroTik настроен внешний DNS, я создал статическую DNS-запись для хоста <host.FQDN>, указывающую на IP сервера.
CRL работает и если ввести IP сервера вместо FQDN.
Проверял в терминале командой:
put [resolve <host.FQDN>]
— которая возвращает корректный IP сервера CRL.
В теории MikroTik должен подтягивать CRL.
На веб-странице CRL не нужна авторизация для скачивания CRL.
В логах вижу:
looking for CRLs in openVPN.cer_0
found CRL http://<host.FQDN>/CRL/CA.crl
start CRL update
trust store updated
start CRL update
start CRL update
… (повторяется каждые 1 минуту)
Но всё равно CRL в WinBox показывает красным и статус «invalid». Значение revoked = unknown. Даже если вручную указать ссылку с IP адресом сервера CRL — статус остаётся «invalid».
Есть идеи, как повысить уровень отладки или это исправить?
Возможные проблемы, которые я вижу:
- Версия 6.47.7 багованная
- Не используется статический DNS для разрешения FQDN, указанного в конфиге CRL. Если это так, будет ошибка, потому что IP не будет получен. Но статическая запись работает с IP, так что, похоже, не в этом проблема.
- Что-то не так с сертификатом, CA или сертификатом OpenVPN. На стороне CA я особо ничего не могу сделать. Можно менять шаблоны для подписи сертификата, но там ничего, касающегося CRL, не настраивается — только на уровне CA. Формат менять нельзя, да и пришлось убрать другие места публикации (например LDAP, который MikroTik не поддерживает), так что остался только HTTP.
- Возможно, проблема с типом или версией CRL, или чем-то другим. Не уверен, как проверить целостность того, что принимает MikroTik.
В общем, запутался.
