Установка SSL сертификата на Nginx

1. Скопируйте файлы сертификата на сервер.

Скопируйте ваш сертификат (your_domain_name.crt) и корневой сертификат (root.crt), вместе с .key-файлом, который вы генерировали при создании CSR-запроса в директорию на вашем сервере, куда вы собираетесь установить сертификат. Для обеспечения безопасности, сохраняйте файлы с пометкой "только чтение".

2. Соедените сертификат с корневым сертификатом.

Вам необходимо соединить файл сертификата с файлом корневого сертификата в единый .pem файл, выполнив следующую команду:

cat root.crt >> your_domain_name.crt

3. Измените файл виртуального хоста Nginx.

Откройте ваш файл виртуального хоста Nginx для сайта, который вы защищаете. Если вам необходимо, чтобы сайт работал и с защищенным соединением (https), и с незащищенным (http), вам нужен серверный модуль для каждого типа соединения. Сделайте копию существующего серверного модуля для незащищенного соединения и вставьте ниже оригинала. После этого добавьте строчки, который приведены ниже жирным шрифтом:

server {

listen 443;

ssl on;
ssl_certificate /etc/ssl/your_domain_name.crt;
(or .pem)
ssl_certificate_key /etc/ssl/your_domain_name.key;

server_name your.domain.com;
access_log /var/log/nginx/nginx.vhost.access.log;
error_log /var/log/nginx/nginx.vhost.error.log;
location / {
    root /home/www/public_html/your.domain.com/public/;
    index index.html;
}

}


Настройка имен файлов:

  • ssl_certificate - файл, содержащий основной и корневой сертификаты (шаг 2).
  • ssl_certificate_key - файл с ключем, который был сгенерирован при создании CSR.

    4. Перезагрузите Nginx.

    Введите следующую команду для перезагрузки Nginx:

    sudo /etc/init.d/nginx restart
     
  •