С каждым днем необходимость в защищенном соединения стает все острее. Во-первых, это более безопасная работа с сайтом, потому что все данные передаются в шифрованном виде, во-вторых, это зелёный замочек рядом с адресом сайта, что вызывает некое доверие к порталу, в-третьих, по заявлению представителей Google, сайты работающие на https имеют преимущество в поисковой выдаче.
SSL-сертификатов существует несколько видов: от простых с проверкой домена, до мультидоменных с информацией о компании (зеленой строкой). Рассматривать все виды и преимущества каждого мы не будем, главная задача, разобраться как получить SSL-сертификат бесплатно.
Получения и установка SSL-сертификата Let’s Encrypt
1. Для получения сертификата воспользуемся сайтом https://www.sslforfree.com/. Переходим по ссылке и прямо на главной странице видим основное поле. Вбиваем туда имя нашего домена и нажимаем кнопку «Create Free SSL Certificate».
2. Далее сайт нам предлагают на выбор несколько вариантом подтверждения домена. Нажимаем «Manual Verification», после «Retry Manual Verification». В итоге, мы получаем два файла которые необходимо залить на сайт в папку /.well-known/acme-challenge. Выполняем данные действия и нажимаем «Download SSL Certificate».
3. Наш SSL-сертификат готов, срок его действия 90 дней, после необходимо повторить процедуру. Остается только установить его на сайт.
4. Процесс установки сертификата на каждом хостинге может немного отличаться, если у вас установлена какая-либо панель управления (ISP Manager, cPanel и т.д.), то сделать через нее не составит большого труда. Для этого переходим в раздел «SSL сертификаты» и выполняем установку по инструкции. В случае отсутствия панели установка происходит через конфиги web-сервера, подробнее о процессе установки SSL-сертификата на Apache в CentOS.
5. Настройка редиректа с http на https. Сделать это можно несколькими способами, через панель хостинга, через файл .htaccess, через конфигурацию вашего web-сервера или через PHP (любой другой язык, на котором сделан сайт).
Все способы рассматривать не будем, это материал для другой статьи. Самый распространённый пример, редирект с http на https через .htaccess. Добавляем нижеуказанный код в начало файла .htaccess:
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] </IfModule>
6. Процесс установки закончен, теперь необходимо проверить сайт, чтобы все картинки, стили, скрипты подгружались по https соединению, в противном случае сайт не будет помечаться как безопасный. Проще всего вообще удалить «http:» из подключаемых файлов, то есть сделать так:
<script type="text/javascript" src="//site.com/static/js/jquery.js"></script>
В данном случае протокол не указан и будет использован тот, по которому вы зашли на сайт.
На этом все, можете радоваться «зеленому замочку». Если возникли какие-то вопросы или дополнения пишите в комментариях.