SSL для чайников: что это такое и как установить

Мы запускаем рубрику полезных советов для тех, кто уже сделал мобильный сайт на MoAction. Один из важных шагов — установка SSL-сертификата, так как число мобильных вирусов растет вместе с пользовательским недоверием к мобильному интернету. SSL станет гарантом того, что ваши посетители смогут спать спокойно.

Что такое SSL

SSL (или Secure Sockets Layer) — это специальный протокол, который передаёт данные в зашифрованном виде по HTTPS. Для расшифровки необходим специальный ключ, а для работы протокола — предустановленный на сайт сертификат. SSL называют паспортом или цифровой подписью сайта: перед установлением соединения подлинность проверяется третьей стороной — центрами сертификации. Именно за счёт шифрования и аутентификации SSL обеспечивает безопасную работу сайта.

Помимо безопасности, есть ещё как минимум две причины установить сертификат на ваш сайт.

Первая — это результаты поисковой выдачи. С 2014-го года Google учитывает наличие сертификата при ранжировании поисковых результатов. Сайты с наличием SSL поднимутся в позиции, без SSL — отправятся вниз.

Вторая — определение местоположения пользователя. В соответствии с новыми правилами Google Chrome не позволяет устанавливать геолокацию ненадёжным хостам. Для мобильного сайта необходимо дать пользователю возможность узнать, где находится ближайший филиал, или выстроить к нему маршрут. Для такого сайта наличие SSL-сертификта становится обязательным.

Обычно SSL используют:

SSL-сертификат содержит:

Виды сертификатов:



Установка

После заказа сертификата в сертификационном центре ваша заявка обрабатывается какое-то время, после чего вам пришлют все необходимые файлы. Данные для установки сертификата обычно присылаются по электронной почте. Иногда сертификат можно установить прямо через форму на сайте сертификационного центра. В противном случае у вас есть ещё два варианта.

Установка с помощью панелей управления

Через ISPmanager

  1. Для начала необходимо зайти в ISPmanager через пользователя — владельца домена:

ISPmanager → «Пользователи» → выбрать пользователя → «Вход»

  1. Необходимо также включить SSL для владельца домена:

ISPmanager → «Пользователи» → двойной клик по нужному пользователю → «Права»

  1. Затем непосредственно добавляем сертификат:

«World Wide Web» → «SSL-сертификаты» → «Создать»

  1. Необходимо заполнить поля:

«Тип сертификата» — существующий;

«Имя сертификата» — любое имя на ваш выбор. Под этим именем он будет отображаться в системе;

«Приватный ключ» — ключ, высланный вам сертификационным центром;

«Сертификат» — содержимое файла-сертификата, также высылается сертификационным центром;

«Пароль» — указывается в тех случаях, когда он есть, иначе поле оставить пустым;

«Цепочка сертификатов» — здесь необходимо указать всю цепочку сертификатов, которыми подписан ваш сертификат, т.е. промежуточные сертификаты и корневой;

Нажимаем «Ок»



  1. Включить сертификат:

«WWW домены» → двойной клик на домене → галочка на «SSL» → выбрать нужный сертификат из списка



Через Parallels Plesk

  1. Заходим в менеджер и добавляем сертификат:

Parallels Plesk → «Сайты и домены» → «Развернуть» → «Настройки SSL» → «Добавить SSL-сертификат»

  1. Заполняем поля:

«Имя сертификата» — любое имя на ваш выбор. Под этим именем он будет отображаться в системе

  1. Листаем страницу до «Загрузить сертификат как текст» и продолжаем заполнять:

«Закрытый ключ» — ключ, высланный вам сертификационным центром;

«Сертификат» — содержимое файла-сертификата, также высылается сертификационным центром;

«Корневой сертификат» — здесь необходимо указать всю цепочку сертификатов, которыми подписан ваш сертификат, т.е. промежуточные сертификаты и корневой;

Нажимаем «Отправить текст», после чего вы получите сообщение о том, что сертификат был успешно добавлен

  1. Включить сертификат:

«Сайты и домены» → «Настройки хостинга» → «Безопасность» → галочка на «Поддержка SSL» → выбрать сертификат

Через cPanel

  1.  Выбираем домен, для которого устанавливаем сертификат:

 

cPanel → «Безопасность» → «SSL/TLS» → «Управление сайтами с SSL» → выбрать домен, для которого устанавливается сертификат





  1. Заполнить поля:

«Сертификат» — содержимое файла-сертификата, также высылается сертификационным центром;

«Закрытый ключ» — ключ, высланный вам сертификационным центром;

«Пакет центра сертификации» — здесь необходимо указать всю цепочку сертификатов, которыми подписан ваш сертификат, т.е. промежуточные сертификаты и корневой;

«Включить SNI для почтовых служб» — поставить галочку в случае, если у вас нет дополнительных IP-адресов;

Нажимаем «Установить сертификат» и в открывшемся окне нажимаем «Ок»

Установка SSL вручную

Apache

  1. Для начала необходимо переместить все файлы сертификата на сервер (например, через FTP). Желательно сохранять файлы с пометкой «только чтение».
  1. Далее редактируем файл конфигурации Apache (путь по умолчанию /etc/httpd/httpd.conf). На всякий случай рекомендуется создать резервную копию файла.

Создайте блок виртуального хоста <VirtualHost> и скопируйте туда следующие строчки:

<VirtualHost 10.0.0.1:443>

 DocumentRoot /home/user/data/www/domain.com

 ServerName domain.com

 SSLEngine on

 SSLCertificateFile /path/to/domain.crt

 SSLCertificateKeyFile /path/to/domain.key

 SSLCACertificateFile /path/to/ca.crt

</VirtualHost>

Где:

domain.com — это имя вашего домена;

10.0.0.1 — ip-адрес, на котором располагается домен;

/home/user/data/www/domain.com — путь до корневой директории вашего домена;

/path/to/domain.crt — файл сертфиката;

/path/to/domain.key — файл с ключом сертификата;

/path/to/ca.crt — файл корневого сертификата.

  1. Перезапускаем Apache

Перезапускаем Apache командой apachectl restart или apache2ctl restart. Если где-то была допущена ошибка, перезапустить не получится.

Nginx

  1. Перемещаем все файлы сертификата на сервер (например, через FTP). Желательно сохранять файлы с пометкой «только чтение».
  1. Необходимо соединить сертификат с промежуточным сертификатом (intermediate.crt) или с цепочкой сертификатов (ca-bundle.crt). Можно сделать это двумя способами:

а) черезUNIX-команду cat:

cat intermediate.crt >> domain.crt

б) редактированием файла домена: после текста основного сертификата в файле domain.crt вставляем текст из файлов остальных сертификатов — причём, каждый сертификат указывается с новой строчки.

  1. Редактируем файл конфигурации Nginx (путь в Linux /etc/nginx/nginx.conf).

Создаём серверный модуль для SSL соединения.

server {

       listen 10.0.0.1:443;

       server_name domain.com;

       ssl                  on;

       ssl_certificate     /path/to/domain.crt;

       ssl_certificate_key  /path/to/domain.key ;

 }

Где

domain.com — это имя вашего домена;

10.0.0.1 — ip-адрес, на котором располагается домен;

/path/to/domain.crt — файл сертфиката;

/path/to/domain.key — файл с ключом сертификата.

  1. Перезапускаем Nginx:

а) Linux

etc/init.d/nginx restart

б) FreeBSD

/usr/local/etc/rc.d/nginx restart

Как проверить, установлен ли сертификат

Чтобы проверить правильность установки сертификата, воспользуйтесь сервисом SSLShopper, SSL4Less или SSL Labs — они работают по одинаковому принципу, и покажут, защищён ли ваш сайт.