Как подключить SSL-сертификат для сайта на облачном VDS с панелью управления NetAngels
Как подключить SSL-сертификат для сайта на облачном VDS с панелью NetAngels
У нас существует два образа с панелью управления NetAngels
-
На серверах, созданных после 1 января 2018, используется apache2 и nginx.
-
На серверах, созданных до 1 января 2018, используется apache2.
Чтобы определить какой у вас сервер, подключитесь по SSH и выполните команду
netstat -ntlp | grep 80 | grep -v '127.0.0.1' | cut -d / -f 2 | cut -d ':' -f1
Если результат будет такой:
То вам пригодится инструкция ниже:
Инструкция для серверов созданных после 1 января 2018 (apache2 и nginx)
Отметим, что выпустить бесплатный сертификат в панели управления возможно только для доменов, которые [делегированы](https://www.netangels.ru/support/domains/transfer/) на наши NS-серверы ns1.netangels.ru, ns2.netangels.ru, ns3.netangels.ru, ns4.netangels.ru. Если домен делегирован на сторонние серверы, то вам подойдёт инструкция по [подключению сертификата средствами утилиты dehydrated](https://www.netangels.ru/support/ssl/add-ssl-dehydrated/).*
В ноябре 2018 появилась возможность легко установить бесплатный SSL сертификат от Let's Encrypt.
Ради установки сертификата заходить на сервер через консоль больше не нужно, достаточно нескольких кликов в панели управления.
Подключить сертификат можно в разделе [Облачных VDS](https://panel.netangels.ru/cloud/) -> выберите виртуальную машину с панелью NetAngels -> раздел "Управление VDS".

В панели управления меню подключения сертификата открывается кликом по иконке замка.

В появившемся окне вы сможете подключить новый сертификат или один из имеющихся в личном кабинете. Там же можно загрузить на сервер файлы сертификата, выпущенного сторонним сервисом.
Бесплатные сертификаты от Let's Encrypt, выпущенные в личном кабинете будут автоматически продлеваться и подключаться к сайтам каждые 3 месяца.
После подключения сертификата рекомендуем проверить корректность работы сайта по защищённому соединению. После успешной проверки в меню редактирования сайта можно включить переадресацию на HTTPS.

Если же команда вернула
То вам пригодится инструкция ниже:
Инструкция для серверов созданных до 1 января 2018 (apache2)
На VDS, созданных до 1 января 2018, web-сервер Nginx не устанавливался, поэтому подключить SSL-сертификат в панели управления не получится.
Для подключения SSL-сертификата вы можете воспользоваться инструкцией ниже или
обратиться в техническую поддержку за помощью в установке Nginx.
Если вы заказывали сертификат в нашей компании, то в архиве с сертификатом находятся три файла:
- вашдомен.crt
- вашдомен.key
- вашдомен.full.crt
Эти файлы потребуются нам для установки сертификата на сервер. Вы можете скачать архив с ними [в личном кабинете](https://panel.netangels.ru/certificates/).
1\. Подключитесь к серверу по протоколу [SSH](https://www.netangels.ru/support/hosting-ftp-ssh/ssh/) как пользователь **root**;
2\. Перейдите в каталог **/etc/apache2** и создайте папку **ssl**
cd /etc/apache2 && mkdir ssl
3\. Теперь необходимо последовательно создать три файла с расширениями crt/key и вставить в них соответствующее содержание:
Вставьте в этот файл содержимое сертификата (пример):
-----BEGIN CERTIFICATE-----
MIIE6DCCA9CgAwIBAgIQT4OhSAOkm743zmbl6akrGzANBgkqhkiG9w0BAQsFADB4
......
U7+DtOIGYhqs+5Il
-----END CERTIFICATE-----
Для выхода с сохранением нажмите **Ctrl+D**
Скопируйте содержимое приватного ключа (пример):
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAuNsBoc54pN4xTP2DSJnIiWPWHpAidYSpFLmRZzf4VVXxffx5
......
Dare7Nz2Up5Yl8HDOQgFk5QBUEPa7g+Dokyc6+YiG/GRjUHkMyjwsQ==
-----END RSA PRIVATE KEY-----
Для выхода с сохранением нажмите **Ctrl+D**
cat > ssl/example.full.crt
Скопируйте содержимое полной цепочки сертификатов (файл `<название_домена>.full.crt`):
-----BEGIN CERTIFICATE-----
MIIE6DCCA9CgAwIBAgIQT4OhSAOkm743zmbl6akrGzANBgkqhkiG9w0BAQsFADB4
......
U7+DtOIGYhqs+5Il
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIF5TCCA82gAwIBAgIQal3D5TtOT9B7aR6l/OxkazANBgkqhkiG9w0BAQsFADB9
......
Szc2kuPNbrV8PvbTLIXupfZFFj0d9mpaFg==
-----END CERTIFICATE-----
Для выхода с сохранением нажмите **Ctrl+D**.
4\. Активируйте модуль apache2 для работы SSL
После включения, вы увидите надпись **«Enabling module ssl»**.
5\. Перейдите в каталог с конфигурационными файлами сайтов и проверьте его содержимое
Вы увидите список вида:
default default-netangels default-ssl vm-e349c9ff.netangels.ru example.com
6\. Для того, чтобы настроить работу сайта (например, example.com) через защищенное соединение, необходимо скопировать существующий конфигурационный файл, изменив название (например, добавить **ssl**):
cp example.com ssl-example.com
7\. Отредактируйте файл ssl-example.com
Потребуется изменить:
7\.1 в строке VirtualHost измените порт с 80 на 443
7\.2 в строке ServerName вместо example.com укажите имя вашего сайта
7\.3 В 10й строке вашего конфигурационного файла будет строка, которая начинается с `SuexecUserGroup`.
После этой строки вставьте:
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/example.crt
SSLCertificateKeyFile /etc/apache2/ssl/example.key
SSLCertificateChainFile /etc/apache2/ssl/example.full.crt
SSLProtocol All -SSLv2 -SSLv3
SSLCipherSuite kEECDH+AES128:kEECDH:kEDH:-3DES:kRSA+AES128:kEDH+3DES:DES-CBC3-SHA:!RC4:!aNULL:!eNULL:!MD5:!EXPORT:!LOW:!SEED:!CAMELLIA:!IDEA:!PSK:!SRP:!SSLv2
SSLCompression off
SSLHonorCipherOrder on
После этого конфигурационный файл примет примерно такой вид:
<VirtualHost *:443>
ServerAdmin support@netangels.ru
ServerSignature On
ServerName example.com
AddDefaultCharset utf-8
CustomLog /var/log/apache2/user-logs/example.com/access.log combined
LogLevel warn
SuexecUserGroup user user
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/example.crt
SSLCertificateKeyFile /etc/apache2/ssl/example.key
SSLCertificateChainFile /etc/apache2/ssl/example.full.crt
SSLProtocol All -SSLv2 -SSLv3
SSLCipherSuite kEECDH+AES128:kEECDH:kEDH:-3DES:kRSA+AES128:kEDH+3DES:DES-CBC3-SHA:!RC4:!aNULL:!eNULL:!MD5:!EXPORT:!LOW:!SEED:!CAMELLIA:!IDEA:!PSK:!SRP:!SSLv2
SSLCompression off
SSLHonorCipherOrder on
DocumentRoot "/home/user/example.com/www/"
Ниже будут параметры, на которые можно не обращать внимание.
Теперь осталось изменить параметры `SSLCertificateFile` `SSLCertificateKeyFile` и `SSLCertificateChainFile` - укажите пути к файлам, которые содержат сертификат, ключ и полную цепочку сертификатов соответственно.
Сохраните изменения нажав **F2**, затем **Enter**.
8\. Включите новую конфигурацию сайта:
9\. Перезапустите веб-сервер для применения изменений:
10\. Проверьте, что все в порядке:
В ответе должно быть сообщение примерно следующего содержания:
run: apache2: (pid 2561) 11s; run: log: (pid 1981) 1189s
11\. Вот и все. Теперь осталось только проверить доступность сайта по адресу https://example.com
Больше информации о SSL сертификатах.