Comments 10
С тех пор , как я обленился и открыл для себя Pritunl - забил на ручное поднятие OpenVPN.
НО! хорошая статья. Понимать матчасть и разобраться с openvpn - полезно любому, особенно сейчас.
А я в свое время написал GUI для OpenVPN.
А в остальном солидарен с вами.
OpenVPN ждёт от вас файл с CRL, не важно каким софтом для CA вы пользуетесь (Easy RSA, Microsoft, Hashicorp Vault, EJBCA, etc). Также поступает и другой софт который работает с сертификатами.
Если удалить клиентский сертификат из директории «issued» (структура управления ключами easyrsa), то его отзыв (посредством команды revoke) при компрометации окажется недоступным, что создаёт вероятность использования такого сертификата злоумышленниками. И в этом случае единственным вариантом обезопасить интранет от посторонних глаз — перевыпуск корневого сертификата, что влечёт за собой необходимость перевыпуска остальных сертификатов.
Вообще некорректно. Есть прекрасная возможность client-config-dir, которая позволяет задекларировать клиент-специфичные опции. Но: если включить требование обязательного наличия конфигурации для клиента в CCD, то можно блокировать клиентов даже без отзыва сертификата. Просто удаляя CCD. Это же позволяет использовать в сочетании с OpenVPN любой CA.
Кроме того, базу сертификатов (как минимум используемую в openssl) можно спокойно исправить в любом текстовом редакторе. Посмотрите структуру файла index - если установить первое поле в значение R (revoked) и в третьем поле установить дату отзыва, то можно спокойно отозвать любой сертификат
Из личного опыта:
1) можно создать в client-config-dir конфиг DEFAULT и пушить всем клиентам одинаковые настройки. Удобно в случае отдельного openvpn для десятков человек с однотипным доступом.
2) Ещё можно указать crl-verify как директорию, в нее класть пустой файл, с условием - имя файла совпадает с серийным номером нужного сертификата в десятичном формате. Наличие такого файла проверяется при каждом подключении клиента, в то время как crl.pem перечитывается раз в час, если память не подводит. Надо разлочить - просто удаляешь нужный файл.
Полезная статья, нужно все-таки понимать как это работает.
Для любителей простых настроек: пару дней назад наткнулся на статью, по использованию скрипта, все ставится за 2 минуты, мало ли, кто то тоже не хочет заморачиваться:
https://www.cyberciti.biz/faq/ubuntu-20-04-lts-set-up-openvpn-server-in-5-minutes/
OpenVPN. Инструкция по применению