Назад | Перейти на главную страницу

Можем ли мы использовать сертификат, подписанный CA, например, зашифровать на мягком сервере vpn?

Я пытаюсь прикрепить сертификат Let's encrypt к моему мягкому vpn-серверу, но не нашел для этого способа. Можем ли мы использовать сертификат, подписанный CA, например, зашифровать на сервере vpn? Если да, укажите процесс.

Основная проблема при использовании сертификатов Let's Encrypt с VPN-сервером заключается в том, что срок их действия действительно короткий, всего 3 месяца. Это означает, что есть некоторые предпосылки:

  • Вы должны иметь возможность автоматизировать загрузку сертификата и закрытого ключа после их обновления Certbot. К счастью, у Softether есть Утилита управления командной строкой. Вы должны быть знакомы хотя бы с 6.2 Общее использование vpncmd чтобы понять шаги 1 и 3 в этом ответе.
  • VPN-сервер должен быть общедоступным через HTTP-порт 80 для HTTP-01 вызов. Кроме того, сервер Softether VPN не имеет встроенного запроса HTTP-01, поэтому для него требуется внешний Certbot.

Шаги:

  1. Вам следует добавить Let's Encrypt в качестве доверенного центра сертификации для клиентов VPN.

  2. Установите и настройте Certbot: инструкции на основе вашего веб-сервера и системы.

  3. Создайте скрипт / задачу / cronjob, который периодически обновляет сертификат и ключ.

    • Certbot обновляет все сертификаты, срок действия которых истекает через месяц. Следовательно, до истечения срока действия старого сертификата остается месяц, но вы, чтобы свести к минимуму вероятность отказа, я бы рекомендовал запускать этот скрипт не реже одного раза в неделю.

    • Команда от 6.3.20 «ServerCertSet»: установить сертификат SSL и закрытый ключ VPN-сервера, является:

      ServerCertSet [/LOADCERT:cert] [/LOADKEY:key]
      

      /LOADCERT Укажите используемый файл сертификата формата X.509.

      /LOADKEY Укажите файл закрытого ключа в кодировке Base 64, который будет использоваться для сертификата.

      Например, в Debian Linux команда может быть такой:

      vpncmd /server localhost /password:password /adminhub:DEFAULT
          /cmd ServerCertSet \
          /LOADCERT:/etc/letsencrypt/live/vpn.example.com/cert.pem \
          /LOADKEY:/etc/letsencrypt/live/vpn.example.com/privkey.pem