Замена сертификата Ngnix
Исходники:
GlobalSign RSA OV SSL CA 2018.cer GlobalSign.cer param.txt private.MYSERVICE.ru.key MYSERVICE.ru.cer MYSERVICE.ru.csr
Объедините три сертификата (сам SSL-сертификат, корневой и промежуточный сертификаты) в один файл. Для этого создайте на ПК новый текстовый документ с именем MYCERT.crt Поочередно скопируйте и вставьте в созданный документ каждый сертификат. После вставки всех сертификатов файл должен иметь вид:
-----BEGIN CERTIFICATE----- #Ваш сертификат# -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- #Промежуточный сертификат# -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- #Корневой сертификат# -----END CERTIFICATE-----
Обратите внимание: один сертификат идёт следом за другим, без пустых строк.
Создайте файл your_domain.key и скопируйте в него содержание приватного ключа сертификата.
MYCERT.priv.key
ssl_certificate /etc/ssl/MYCERT.crt; ssl_certificate_key /etc/ssl/MYCERT-priv.key;
private.MYSERVICE.ru.key → MYCERT.priv.key
Сертификаты приходят в дере, а мне нужны текстовые, конвертируем:
openssl x509 -inform DER -in GlobalSign.cer -out GlobalSign.crt openssl x509 -inform DER -in GlobalSign\ RSA\ OV\ SSL\ CA\ 2018.cer -out GlobalSign\ RSA\ OV\ SSL\ CA\ 2018.crt openssl x509 -inform DER -in MYSERVICE.ru.cer -out MYSERVICE.ru.crt
отконвертили
ls -l *.crt GlobalSign.crt GlobalSign RSA OV SSL CA 2018.crt MYSERVICE.ru.crt
собираем
cat MYSERVICE.ru.crt > fullchain.crt cat GlobalSign RSA OV SSL CA 2018.crt >> fullchain.crt cat GlobalSign.crt >> fullchain.crt
Проверяем и запускаем:
nginx -t systemctl stop nginx.service systemctl start nginx.service systemctl status nginx.service