Ошибка OpenVPN CRL has expired (просрочен список CRL)

Апрель, 01st 2018Рубрика: *NIX | Безопасность 19407
Подписаться на комментарии по RSS
TLS: Initial packet from [AF_INET]XXX.XXX.XXX.XXX:60382, sid=c9c9a1f3 02ce9312
VERIFY ERROR: depth=0, error=CRL hasexpired: CN=client_name
OpenSSL: error:14089086:SSL routines: ssl3_get_client_certificate:certificate verify failed
TLS_ERROR: BIO read tls_read_plaintext error
TLS Error: TLS object -> incoming plaintext read error
TLS Error: TLS handshake failed
SIGUSR1[soft,tls-error] received, client-instance restarting

Сегодня речь пойдет об одном нюансе, связанном со списком отозванных сертификатов (Сertificate Revocation List, CRL) в OpenVPN. Данный механизм применяется, когда требуется блокировать доступ отдельных узлов к сети (в случае увольнения сотрудника или подозрения что выданный сертификат скомпрометирован).

В какой-то момент времени, может возникнуть ошибка OpenVPN CRL has expired (просрочен список CRL) и клиенты перестают подключаться. Убедиться, что проблема именно в этом довольно просто, достаточно закомментировать в конфиге сервера строку проверки отозванных сертификатов и перезапустить сервер.

crl-verify crl.pem

После чего клиенты спокойно начнут подключаться.

Обновление списка отозванных сертификатов OpenVPN

Для решения проблемы со списком CRL надо этот список обновить. Делается это элементарно, о чём я уже рассказывал в статье про отзыв пользовательских сертификатов OpenVPN на FreeBSD 10/11:

# cd /usr/local/etc/openvpn/easy-rsa
# ./easyrsa.real gen-crl

Почему возникла данная проблема? Дело в том, что периодичность обновление списка отозванных сертификатов задаётся в переменной default_crl_days в конфиге /usr/local/openvpn/easy-rsa/openssl-1.0.cnf:

default_crl_days= $ENV::EASYRSA_CRL_DAYS        # how long before next CRL

Сами значения переменных задаются в файле /usr/local/openvpn/easy-rsa/vars. По умолчанию обновление списка CRL происходит каждые 180 дней (можно задать своё значение, например 365 дней) :

#set_var EASYRSA_CRL_DAYS       180
Подписывайтесь на канал Яндекс.Дзен и узнавайте первыми о новых материалах, опубликованных на сайте.

Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

Комментариев: 3

  1. 2018-05-21 в 12:02:00 | buzzed

    Ой спасибо добрый человек. Два дня искал в чем проблема.

  2. 2018-09-27 в 09:47:42 | Александр

    очень помогло. сегодня по той же причине openVPN сервер перестал принимать соединения и отрубил все которые были

  3. 2019-09-23 в 09:57:21 | Аноним

    Сегодня такая же проблема была. Всё заработало!

ваш комментарий будет опубликован после проверки
на указанный адрес будет отправлено письмо с кодом активации. Вы можете настроить собственный профиль и стать активным участником или автором.