From 54375572e11d23dacb20c5742d171af3072d7b9c Mon Sep 17 00:00:00 2001 From: Alexander Neonxp Kiryukhin Date: Thu, 28 Nov 2024 00:46:17 +0300 Subject: Серьезная реновация MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/posts/2024-02-21-tls.md | 43 ----------------------------------------- 1 file changed, 43 deletions(-) delete mode 100644 content/posts/2024-02-21-tls.md (limited to 'content/posts/2024-02-21-tls.md') diff --git a/content/posts/2024-02-21-tls.md b/content/posts/2024-02-21-tls.md deleted file mode 100644 index 0fc4182..0000000 --- a/content/posts/2024-02-21-tls.md +++ /dev/null @@ -1,43 +0,0 @@ -+++ -categories = ['Без рубрики'] -date = '2024-02-21T21:51:29Z' -tags = ['it', 'Россия', 'TLS'] -title = 'Конфигурация HTTPS с сертификатом от Минцифры' -+++ - -Третьего дня потратил достаточно много времени на установку на данном сайте сертификата от Минцифры.А поскольку сертификат краткоживущий (90 дней) — заметка мне самому пригодится на будущее. - -Началось всё с того, что я с удивлением обнаружил, что на госуслугах теперь можно выпустить сертификат для домена физлицу.Это меня обрадовало, хотя ранее я приунывал что нет никакой альтернативы простым смертным. Теперь есть. Закрывайте буржуйнет. - -Поехали! - -1. Идём сюда: -2. По приведенной инструкции генерируем файл запроса сертификата. Вкратце так (только вместо neonxp.ru указываем свой домен): - ``` - openssl req -out neonxp.ru.csr -new -subj "/C=RU/CN=neonxp.ru" -addext "keyUsage = digitalSignature, keyEncipherment" -addext "subjectAltName=DNS: neonxp.ru" -addext "extendedKeyUsage = serverAuth" -newkey rsa:2048 -nodes -keyout neonxp.ru.key - ``` - Важно! Нужно сохранить файл ключа neonxp.ru.key в надежном месте. Если он попадет в чужие руки — нужно будет отзывать сертификат и начинать всё заново!SAN и Wildcard пока не поддерживается, но что имеем — то и имеем. Но по слухам таки будут, как минимум SAN. -3. Полученный файл csr загружаем там же на госуслуги -4. Ждём не долго (реально недолго, у меня прислали сертификат буквально через несколько минут!) -5. В ответ придёт файл с рандомным названием. Сохраняем его туда, где лежат другие файлы под названием “домен.crt” -6. Скачиваем корневой и промежуточные сертификаты: - ``` - wget https://gu-st.ru/content/Other/doc/russian_trusted_root_ca.cerwget https://gu-st.ru/content/Other/doc/russian_trusted_sub_ca.cer````` - ``` -7. Преобразуем скачанный сертификат в формат PEM: - ``` - openssl x509 -in neonxp.ru.crt -out neonxp.cer -outform PEM - ``` -8. Соединяем свой сертификат и минцифровские в один бандл: - ``` - cat neonxp.cer russian_trusted_sub_ca_pem.cer russian_trusted_root_ca_pem.cer > chain.cer - ``` -9. Используем полученный бандл и сгенерированный в пункте 2 файл ключа в конфигурации вебсервера. У меня используется Caddy, поэтому мой конфиг выглядит так: - ``` - neonxp.ru:443 { - tls /data/ssl/chain.cer /data/ssl/neonxp.ru.key - ... - } - ``` - -В общем-то, всё. Как настанет время продлевать — я дополню заметку деталями именно продления. Если будут вопросы — пишите, попробуем решить. \ No newline at end of file -- cgit v1.2.3