- PVSM.RU - https://www.pvsm.ru -
Зарубежные корневые центры сертификации (хостинг [1]).
Действовал я по инструкции от НУЦ [2] и теперь сертификат для моего сайта будет обновляться автоматически. Для выпуска, обновления, отзыва сертификата используется модифицированная версия acme.sh v.3.1.2 [3]
Использование программы оказалось для меня удобнее и быстрее, чем заполнение полей на ЕПГУ, а главное, не нужно помнить про периодическое обновление сертификата, так как программа ещё настроила и автообновление сертификата.
Итак, что делал:
Получил корневой сертификат НУЦ
С портала ЕПГУ [4] из раздела "Сертификаты для Linux" cкачал архив с корневыми сертификатами НУЦ

На портале сертификаты НУЦ почему-то называются сертификатами Минцифры, хотя в самих сертификатах о Минцифры ни слова. И почему-то нет инструкции для Ubuntu, а только для RedHat, который ушёл из России.
Так как автоматизация НУЦ выпускает DV-сертификаты безопасности с применением международных криптографических алгоритмов (читай RSA), из архива нам понадобится корневой сертификат с названием russian_trusted_root_ca_pem.crt , который надо скопировать на сервер в Вашу домашнюю папку.
2. Добавил сертификат НУЦ в Linux
Скопировал сертификат НУЦ, куда положено sudo cp ~/russian_trusted_root_ca_pem.crt /usr/local/share/ca-certificates/ и добавил его в список доверенных сертификатов sudo update-ca-certificates
3. Установил acme.sh
Скопировал и распаковал архив с программой [3], для этого пришлось установить разархиватор sudo apt install unrar-free, и лишь затем распаковать архив пограммы unrar -x acme_client_fix.rar
Создал папку mkdir ~/.acme.sh, так как сама программа почему-то не смогла, установил acme.sh командойbash ./acme.sh --install -m myemail@example.ru и перезашёл в терминал.
4. Настроил программу на НУЦ acme.sh --set-default-ca --server https://nuc-acme.voskhod.ru/acme/api/v1/directory и зарегистрировался в НУЦ acme.sh --register-account --email myemail@example.ru --accountkeylength 2048
myemail@example.ru в приведённых примерах поменял на свой, хотя на почту мне ничего и не приходило.
5. Выпустил ключ и сертификат НУЦ.
У меня сервер был без сертификата, так что, как просила инструкция [2], порт 80 был открыт, но можно использовать и встроенный в программу сервер. Поменял в команде sudo acme.sh --issue --domain mydomain.ru --webroot /var/www/html --keylength 2048 --force --always-force-new-domain-key имя домена mydomain.ru на свой и указал путь к файлам сайта /var/www/html/mydomain.ru.
Есть другой способ, подтвердить владение сервером через DNS, но тогда придётся немного подождать, когда DNS запись обновится, но я им от нетерпения не воспользовался.
6. Добавил получившиеся файлы mydomain.ru.cer и mydonain,ru.key в nginx
vi /etc/nginx/sites-available/mydomain.ru.conf
server {
listen 80; listen 443 ssl;
client_max_body_size 200M;
server_name mydomain.ru www.mydomain.ru;
ssl_certificate /home/www-user/.acme.sh/mydomain.ru/mydomain.ru.cer;
ssl_certificate_key /home/www-user/.acme.sh/mydomain.ru/mydomain.ru.key;
root /var/www/html/mydomain.ru;
index index.html;
}
и перезагрузил веб-серверsystemctl reload nginx
7. Настроил автоматическое обновление сертификата и ключа каждые три недели acme.sh --install-cronjob
8. У программы acme.sh ещё много разных параметров acme.sh --help
Спасибо шести сотням разработчиков acme.sh и сотрудникам НУЦ за сертификаты.
Жду теперь, когда корневой сертификат НУЦ добавят в дистрибутивы Windows и браузеров.
Автор: isinelobov
Источник [5]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/sajt/454140
Ссылки в тексте:
[1] хостинг: https://www.reg.ru/?rlink=reflink-717
[2] инструкции от НУЦ: https://nuc.voskhod.ru/api/instructions/10/get-document/
[3] модифицированная версия acme.sh v.3.1.2: https://nuc.voskhod.ru/api/instructions/9/get-document/
[4] портала ЕПГУ: https://www.gosuslugi.ru/crt
[5] Источник: https://habr.com/ru/articles/1053232/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1053232
Нажмите здесь для печати.