В эти выходные получил отличный урок на тему мониторинга и построения инфраструктуры. Есть небольшая vpn сеть на базе openvpn. Изначально она была развернута в 2010 году.
С тех пор она переходила их рук в руки, переезжала с сервера на сервер. При этом неизменными оставались 2 вещи:
- Реализация на базе openvpn.
- Корневой CA сертификат центра сертификации для подписи клиентских сертификатов.
Когда я в мониторинге увидел, что все вообще развалилось, подумал, что либо проблемы с интернетом на сервере мониторинга, либо на openvpn сервере. После того, как убедился, что и там, и там все в порядке, крепко призадумался.
Пошел на vpn сервер и увидел по всем туннелям кучу всяких ошибок на подключение клиентов. Сразу стало видно, что упали все туннели для всех клиентов. В голове мелькнула мысль, что протух самоподписанный CA, хотя я с этим ни разу не сталкивался. Проверил и убедился, что это так.
CA сертификат генерировался с помощью скриптов easy-rsa, где по дефолту срок жизни сертификата стоит 10 лет. Обычно никому в голову не приходит это менять, так как кто планирует инфраструктуру на 10 лет вперед? Там либо ишак, либо падишах сдохнет.
По факту так и случилось, но за это время неизменно использовался один и тот же сертификат. И вот спустя 10 лет он превратился в тыкву. К удивлению обнаружил, что новый можно выпустить с привязкой к старому.
# openssl x509 -in ca.crt -days 3650 -out ca-new.crt -signkey ca.key
При этом часть клиентов сразу же подключилась и продолжила работу как ни в чем не бывало. А для части пришлось перевыпустить сертификаты с новым CA.
Источник - мой канал: https://t.me/srv_admin/455.
Спасибо. Скоро у моего клиента истечет срок, тож задумался как оперативно обновить сертификат.