Как установить доверенный SSL–сертификат в NGINX и Apache

В этой статье мы расскажем, как установить заказанный ранее у Infobox доверенный SSL–сертификат в веб-серверы NGINX и Apache на облачный сервер или на VPS. Процесс установки SSL–сертификатов на Хостинг сайтов описан в справочном центре.



Подготовка

Для установки вам потребуются:
  • приватный ключ private.key
  • сертификат X.509 domain.crt – высылается центром сертификации после заказа на электронную почту
  • промежуточный сертификат intermediate.crt – его можно скачать тут (следует выбрать вариант RSA SHA-2 (under SHA-1 Root) SSL Certificates). Сохраните данный сертификат с именем intermediate.crt

Найдена возможность взлома SHA1, неужели можно использовать промежуточный сертификат с SHA1 Root?
Можно. Сигнатуры на root сертификатах не используются и браузеры не будут предупреждать о небезопасности таких соединений. Это относится только к промежуточному сертификату, ваш сертификат должен использовать SHA2.

Копируем файлы на сервер

Необходимо скопировать private.key, domain.crt и intermediate.crt в папку /etc/ssl (если ее нет — создать).

Это можно сделать например через Filezilla (установка клиента рассмотрена также в статье). Однако способ подключения будет отличаться, так как нужен доступ не только к папке сайта, но и ко всему серверу.

Добавьте новое SFTP подключение, как показано на скриншоте ниже. Используйте логин и пароль от сервера, которые пришли на вашу электронную почту после создания сервера, а также внешний ip–адрес сервера.


При подключении подтвердите, что вы подключаетесь к известному вам серверу, нажав OK.


Подключение будет успешно установлено.


Перейдите в папку "/etc/ssl" и скопируйте туда файлы private.key, domain.crt, intermediate.crt.

Включаем HTTPS в NGINX

Для демонстрации будем использовать сервер с предустановленными NGINX (в качестве реверс-прокси), Apache, PHP, MySQL, phpMyAdmin и FTP. Образ данного сервера Ubuntu 14.04 lamp доступен в InfoboxCloud и на VPS от Infobox. Процесс создания сервера был рассмотрен в статье ранее.

Подключитесь к серверу по SSH.

В шаблоне LAMP настраивать HTTPS нужно на реверс-прокси NGINX.

Объедините промежуточный сертификат с вашим сертификатом:
cat /etc/ssl/domain.crt /etc/ssl/intermediate.crt >> group.crt

Теперь установите права для доступа к private.key:
chmod 600 /etc/ssl/private.key

Отредактируйте файл конфигурации nginx:
nano /etc/nginx/sites-enabled/default

Внесите изменения, как показано на скриншоте ниже (вместо plugndo.com используйте ваш домен):


Перезапустите NGINX.
service nginx restart


Если вы попробуете зайти на сайт по ip–адресу по протоколу HTTPS, то вы увидите предупреждение о том, что сертификат небезопасен.


Для безопасного соединения заходите на сайт по имени домена.

Для этого в DNS-записи А для домена и поддомена www укажите ip–адрес сайта и дождитесь обновления DNS. Либо для тестирования пропишите соответствие ip–адреса сервера и домена в файле hosts вашей ОС.



Включаем HTTPS в Apache

Для демонстрации будем использовать сервер с предустановленным Apache. Образ данного сервера Ubuntu 14.04 доступен в InfoboxCloud и на VPS от Infobox.

Подключитесь к серверу по SSH.

Разрешите Apache загружать SSL–модуль:
a2enmod ssl

Отредактируйте файл конфигурации Apache:
nano /etc/apache2/sites-enabled/000-default.conf

Внесите изменения, как показано на скриншоте ниже (вместо plugndo.com используйте ваш домен, a вместо feedback@plugndo.com – адрес электронной почты администратора):


Теперь перезапустите Apache:
service apache2 restart


Соединение по HTTPS успешно устанавливается. Браузер отображает предупреждение, так как картинка на странице доступна по http (с такой же проблемой вы можете встретиться на своем сайте — ресурсы должны загружаться по HTTPS).


Давайте в коде страницы исправим адрес на HTTPS:
nano /var/www/html/index.html


Теперь соединение отмечается как безопасное.



Если вам необходимы инструкции по установке SSL–сертификатов на другие веб-сервера — вы можете найти нужную инструкцию тут. И конечно сообщите нам об этом, напишем отдельное руководство на русском.

Если у вас возникнут вопросы — напишите нам, с радостью поможем.

Успешной работы!

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.