В данной статье подробно рассмотрим, как установить платный SSL сертификат на VPS с Apache или Nginx. Также Вы можете устанавливать на свой виртуальный сервер бесплатный SSL. Читайте, как установить сертификат от Let`s Encrypt на VPS, на нашем сайте.
Установка SSL на Apache
1. Ставим модуль для Apache, если он ещё не установлен:
yum install mod_ssl
2. Создаем файлы сертификата в каталоге /etc/ssl/
файлы domain_name.crt
, private.key
и chain.crt
со следующим содержимым:
domain_name.crt
— сам сертификат;
private.key
— приватный ключ;
chain.crt
— цепочка сертификатов, которая содержит сначала промежуточный сертификат и следом за ним корневой (с новой строки без пробелов и пустых строк).
3. Редактируем файл конфигурации домена, в данном примере он находится по пути /etc/httpd/sites-enabled/c**********.ru.conf
, соответственно, команда имеет вид nano /etc/httpd/sites-enabled/c**********.ru.conf.
В самом файле создадим копию блока VirtualHost,
но для порта 443, и добавим в начало этого блока путь созданным файлам сертификата:
SSLEngine on
SSLCertificateFile /etc/ssl/domain_name.crt
SSLCertificateKeyFile /etc/ssl/private.key
SSLCertificateChainFile /etc/ssl/chain.crt
4. Сохраняем изменения и перезапускаем Apache командой servicehttpdrestart
.
Сайт теперь доступен по https-протоколу.

5. Опционально можно настроить переадресацию запросов с протокола HTTP на HTTPS. Делаем это через файл .htaccess
в коревом каталоге сайта, добавив туда следующие строки:
RewriteEngineOn
RewriteCond%{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
и сохранив его.
Установка SSL на Nginx
Чтобы установить и настроить SSL на NGINX:
1. Переходим в директорию /etc/ssl/ и создаем файл с названием domain.crt, вместо domain — указываем имя домена, для которого устанавливаем сертификат. Открываем файл в текстовом редакторе, мы рекомендуем использовать редактор nano. Вставляем в файл содержимое сертификатов в следующем порядке:
-----BEGIN CERTIFICATE-----
#Файл сертификата#
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
#Промежуточный сертификат#
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
#Корневой сертификат#
-----END CERTIFICATE-----
Обратите внимание, что в файле не должно быть пустых строк.
2. В директории /etc/ssl/ создаем файл domain.key (domain — имя Вашего домена). Открываем его с текстовом редакторе и вставляем приватный ключ. В файле также не должно быть пустых строк.
3. Открываем конфигурационный файл Nginx — nginx.conf. По умолчанию конфигурационный файл / usr/local/nginx/conf, / etc/nginx или / usr/local/etc/nginx. И изменяем виртуальный хост Вашего сайта, добавляем строки:
server {
listen 443 ssl;
server_name domain;
ssl_certificate /etc/ssl/domain.crt;
ssl_certificate_key /etc/ssl/domain.key;
}
Вместо domain указываем имя Вашего сайта.
4. Применяем изменения и перезагружаем Nginx:
systemctl reload nginx
Готово, сертификат установлен.
Рейтинг мощных VPS по ссылке.
Комментарии ()