Я настроил Synology DSM для получения и обновления сертификатов от Let’s Encrypt с помощью acme.sh
.
Проблема заключается в следующем:
- Пакет Synology VPN Center автоматически выбирает сертификат по умолчанию при каждом его изменении.
- Я не могу найти способ заставить клиентов OpenVPN просто доверять общедоступным сертификатам.
- Сертификат обновляется каждые 2 месяца, и невозможно позволить моим пользователям обновлять свои
.ovpn
файл конфигурации это часто. - Несмотря на то, что у меня есть необходимый опыт работы с Linux, я предпочитаю не модифицировать программное обеспечение поставщика без крайней необходимости.
Как мне это сделать, чтобы мои пользователи могли подключаться к этому серверу OpenVPN в Synology DSM?
1 ответ
Не делай этого.
Во-первых, собственные руководства OpenVPN предполагают, что не рекомендуется использовать публичный ЦС. OpenVPN будет доверять любому сертификату, опубликованному этим ЦС. Я сомневаюсь, что вы ожидаете, что любой владелец сертификата, выданного сторонним ЦС, сможет подключиться к вашей VPN.
Во-вторых, нет смысла использовать общедоступный ЦС для частного обслуживания. Благодаря VPN это частный сервис, который не ожидает, что посторонние будут подключаться или доверять вашему сервису. У него есть действующая и удобная точка распространения корневого сертификата — вместе с конфигурационным файлом VPN (вероятно, встроенным в него), который вы все равно должны раздавать клиентам. Также у него есть отдельное хранилище сертификатов. Все это требует частного VPN. Таким образом, нет никаких недостатков использования частного CA для VPN по сравнению, скажем, с использованием его для общедоступного HTTPS, потому что вы распространяете сертификат CA. Кстати, даже HTTPS имеет право на использование приватного ЦС — там же, где и VPN, для проверки клиентского сертификата; в этом случае вы по-прежнему можете использовать общедоступный сертификат для сервера, но клиентские сертификаты подписываются вашим частным ЦС.
В-третьих, Let’s Encrypt выпускает проверенные доменные сертификаты с Веб-сервер TLS цель. При правильно настроенном OpenVPN вы можете установить только такой сертификат на сервер. Клиентские сертификаты должны иметь обратную черту — Веб-клиент TLS цель. Let’s Encrypt не выдает такие сертификаты.
OpenVPN был разработан с учетом частного, специального CA, предназначенного только для этой VPN. Они предоставляют набор скриптов для создания такого ЦС, он называется EasyRSA. Его действительно легко использовать. Если вы не хотите его использовать (и у вас есть уважительная причина), вы можете использовать что-то другое для создания этого частного ЦС, например, мы когда-то использовали для этого службы сертификации MS AD.
Никита Киприянов