Быстрая навигация
802.11ac 802.11ac Wave 2 802.11n Android DVB-T2 Google hAP hAP lite Intel IPSec Keenetic LTE Mikrotik MU-MIMO Netis Qualcomm Realtek RouterBOARD RouterOS Rozetka rozetka.com.ua Strong Trimax Ubiquiti UBNT UniFi wAP 60G Wi-Fi Winbox wireless Zyxel безопасность маршрутизатор обзор обновление промо промо-код прошивка роутер скидкиЕсть ли смысл переходить с http на https и как это правильно сделать?
Компания Google недвусмысленно дала всем понять, что пора переходить на защищенное соединение по протоколу HTTPS. Для того чтобы простимуллировать владельцев интернет-ресурсов переходить на шифрование, сайты без HTTPS занижаются в поисковой выдаче Google.
Яндекс в этом плане куда более лояльный. Тем не менее, в последних версиях Google Chrome и Firefox сайты без шифрования стали помечаться как «не безопасные»
Текущая обстановка
К сожалению, многих коммерческих организаций абсолютно никак не тревожит такой расклад. Особенно это касается проектов с высокой посещаемостью, ведь использование шифрования повышает нагрузку и увеличивает время ожидания ответа при открытии сессии.
К примеру, крупнейший интернет-магазин Rozetka не использует HTTPS, как не использует сертификат один из ресурсов Лаборатории Касперского.
Стоит ли переходить на HTTPS?
Если у вас некоммерческий проект без авторизации на сайте, без сбора персональных данных, без предложений товаров и услуг – использование HTTPS вам особо и не требуется, разве что для «зеленого» статуса в браузере и чуть высших позиций в выдаче Google.
Для интернет-магазинов, а также ресурсов, направленных на онлайн-торговлю, использование HTTPS обязательно. То же самое относится к ресурсам с большими объемами передаваемых пользователями персональных данных.
С чего начать и какой вид сертификата выбрать
Для работы HTTPS необходим SSL-сертификат.
Самый простой вариант – использование самоподписанных сертификатов (self-signed), такие сертификаты применимы только для локальных ресурсов. Например, такие сертификаты использует в своих продуктах компания Ubiquiti. При первом обращении к сайту необходимо будет добавить сертификат в исключения браузера.
Недостатком таких сертификатов является то, что для них не используются услуги гаранта, который проверяет данные перед выдачей сертификата. К тому же ни один современный браузер не примет такой сертификат. Вы же не хотите напугать посетителей своего сайта подобным сообщением при входе на сайт?
Для ресурсов, размещенных в сети Интернет, необходимо использовать сертификаты, выдаваемые центром сертификации (CA). При этом следует знать некоторые особенности. Во-первых, все сертификаты имеют срок действия, обычно это 1-2 года. Во-вторых, существует несколько типов сертификатов, которые имеют существенные отличия:
- DV (Domain Validation) – сертификаты, которые подтверждают доменное имя;
- OV (Organization Validation) – сертификаты, подтверждающие домен и организацию (владельца);
- EV (Extendet Validation) – сертификаты, с расширенной проверкой.
Сертификат DV – наиболее распространенный тип сертификата, выдаваемый «моментально», обычно в течении 5-15 минут. Сертификат подтверждает только домен, при этом данные заявителя не проверяются. Всё что требуется – правильно заполнить форму и иметь доступ к почте на валидируемом домене. Причем любой почтовый ящик не подойдет, вам необходимо иметь доступ к admin@, administrator@ или webmaster@ для того, чтобы подтвердить свое право на управление доменом и подтверждение получения сертификата. Иногда центр сертификации может использовать адрес электронной почты из WHOIS домена.
Сертификат OV, как вы уже догадались, используется для валидации организации. К примеру, у вас есть компания ООО «Ноу-Хау», но в интернете по запросу ООО «Ноу-Хау» есть не только ваш официальный сайт, но и сайт сторонних лиц, желающих вам насолить. Сертификат OV сможет получить только ваша компания, при этом в описании сертификата будет указано название компании для которой выдан сертификат.
Обычно выдача такого сертификата занимает от 3 до 10 дней, цифры могут варьироваться в зависимости от центра сертификации. При проверке от вас потребуют не наличие прав на домен, но и могут запросить документы, а также проверить контактный номер телефона. Обязательно проверяется WHOIS домена на предмет указания вашей организации, иногда центр может изучить упоминания вашей компании в международных изданиях и даже проверить информацию в ЕГРПОУ (в случае с Украиной). Само собой, сертификат OV заметно дороже, нежели DV.
Сертификат EV – наиболее дорогой вид сертификата безопасности, при котором центр сертификации проводит расширенную проверку заявителя. Более подробно о дополнительных условиях и проверяемых данных вы можете узнать у выбранного вами центра сертификации.
Дополнительно сертификат EV обеспечивает «зеленую строку» (green bar) в браузере. Как пример – сайт Приват24.
Как вы уже догадались, выдача сертификата – услуга платная. В зависимости от типа сертификата, а также центра сертификации, его стоимость может варьироваться от 10 до 6000 долларов США и даже больше.
Особые типы сертификатов
Помимо вышеперечисленных видов, сертификаты могут отличаться по функционалу. Сильно углубляться не будем, рассмотрим лишь особые 2 типа:
Wildcard – сертификат, который разрешается применять на нескольких субдоменах. Например у вас есть beta.company.com, user.company.com, shop.company.com и т.д. Количество доменов при этом ограничено, так что заранее подсчитайте выгодно ли покупать wildcard, иногда выгоднее купить несколько отдельных сертификатов.
SAN – сертификат на несколько разных доменов, размещенных на одном сервере. Бывают случаи, когда у фирмы есть несколько продуктов и она создает несколько разных сайтов для каждого из продуктов. Как пример, разработчики ПО и автоцентры.
Где купить сертификат
Покупать сертификат напрямую у центра сертификации не выгодно, т.к. стоимость такого сертификата порой в разы выше, нежели при заказе у партнеров. Партнеры покупают сертификаты оптом и, чаще всего, занимаются другими видами бизнеса, поэтому могут позволить себе малую маржу.
К слову, наиболее авторитетными и популярными являются следующие центры сертификации:
- Geotrust
- Thawte
- Symantec
- Trustwave
- Comodo
Наиболее выгодно покупать сертификаты у посредников, советую поискать их самостоятельно, поскольку цены постоянно меняются. К примеру, можете взглянуть на цены в Ukrnames, сертификат уровня Comodo Positive SSL (DV) можно приобрести менее чем за 10 у.е.
Есть ли бесплатные SSL-сертификаты?
Владельцы некоммерческих проектов вполне закономерно могут задаться вопросом, как быть, если нет лишних денег на сертификат, но есть желание перейти на HTTPS?
Лично мне известно, по крайней мере, 2 варианта.
Первый вариант – проект Let’s Enrypt, из недостатков, срок действия сертификата составляет всего 3 месяца. Благо, процедуру продления сертификата можно автоматизировать. Сложности могут возникнуть у тех, кто использует платный хостинг. В последнее время всё больше хостеров предлагает своим клиентам услуги по выдаче и установке сертификата Let’s Encrypt.
Второй вариант – StartSSL, это шестой по величине центр сертификации в мире. На текущий момент он обеспечивает сертификатами более чем полмиллиона доменов. StartSSL помимо платных сертификатов выдает бесплатные DV-сертификаты для некоммерческих проектов. Пожалуй, это один из самых интересных и простых вариантов.
Если вам известны другие варианты – пишите в комментариях.
Как запросить сертификат с проверкой домена (Domain Validation)
Процедура получения обычного DV-сертификата довольно простая, более подробную информацию вы можете запросить у выбранного поставщика.
Если кратко, необходимо сгенерировать CSR, для чего потребуется воспользоваться специальным онлайн-генератором. Опять же обращайтесь за разъяснениями к поставщику.
В заявке необходимо будет указать следующие данные (на английском):
- Common Name – ваш домен;
- Organization – используется для OV, для частных лиц указывается либо фамилия, либо Private Person;
- Organization Unit – подразделение организации, для частных лиц обычно IT либо Private Person;
- Locality – ваш город;
- State— область или штат
- Country — двухбуквенный код страны, например UA или RU;
- Email — контактный email технического администратора или службы поддержки на том же домене, для которого заправшивается сертификат;
После генерации запроса, на выходе вы получите зашифрованный запрос (CERTIFICATE REQUEST) и ключ (PRIVATE KEY). Шифрованный запрос необходимо будет скопировать при подаче заявки на получение сертификата. Обязательно сохраните сгенерированный PRIVATE KEY! В противном случае у вас не получится установить сертификат на сервер.
После отправки запроса, если всё проделано верно, на указанный Email (в пределах домена) вы получите запрос о подтверждении прав на сам домен (необходимо будет перейти по ссылке для подтверждения). После подтверждения в течение нескольких минут на почтовый ящик вы получите сам сертификат.
Сертификат может быть отправлен как виде файлов *.cer, так и в виде текста. Сам сертификат состоит из сертификата (CERTIFICATE) и цепочки сертификатов (CA-BUNDLE).
В панели управления хостингом, необходимо активировать SSL для домена. В случае с ISPManager это необходимо сделать заранее, до установки сертификата. При создании сертификата скопируйте в соответствующие поля CERTIFICATE, PRIVATE KEY и CA-BUNDLE.
Правильный переход с HTTP на HTTPS
На этом собственно процесс установки сертификата завершен, если бы не одно но. Всё дело в том, что получения сертификата и его установки мало для правильного перехода.
В сети вы можете найти множество инструкций, от хороших – до полного маразма. Далее рассмотрим последовательность всех действий.
Изменения на сайте
В обязательном порядке в исходном коде и шаблонах уберите все абсолютные ссылки на ваш домен вида http:// (на картинки, стили, скрипты и т.д.), вместо них требуется использовать относительные пути, начинающиеся со слэша / (либо двух слэшей //).
Сгенерируйте новый Sitemap, в котором ссылки будут уже с HTTPS.
Внесите правки в robots.txt, изменив директиву Host как в примере:
User-agent: *
Allow: /
Host: https://weblance.com.ua
User-agent: Yandex
Sitemap: https://weblance.com.ua/sitemap.xml
С точки зрения Google
В панели для вебмастеров добавьте новый сайт с HTTPS, настройте Sitemap и другие параметры как вы это делаете при добавлении сайта. Далее Google всё сделает сам. Единственное что после склейки, на которую потребуется время, необходимо будет среди зеркал выбрать основной домен.
В подтверждение моих слов, более подробно можно почитать в справочном разделе Google Search Console (справка 1, справка 2).
С точки зрения Яндекс
В случае с поисковой системой Яндекс всё куда интереснее. Во-первых, ни в коем случае не делайте сразу 301-й редирект с http на https, в противном случае вы получите выпадение из поисковой выдачи и обнуление тИЦ на срок 1-2 месяца.
Первым делом зайдите в Яндекс.Вебмастер и в разделе «Индексирование – Переезд сайта» установите галочку на https.
Перенос займет время, обычно 3-4 недели, так что запаситесь терпением. Дополнительно можно добавить «новый сайт» в панель, как и в случае с Google Webmaster и выполнить «переобход». В подтверждение моих слов, более подробно можно почитать в официальном блоге Яндекса (пост 1, пост 2).
Только после того, как Яндекс выполнит перенос сайта, можно активировать 301-ю переадресацию с http на https. Реализовать это можно при помощи .htaccess. Существуют разные варианты, некоторые из них, в зависимости от настроек сервера, могут иногда не работать. Ниже пара примеров:
Обязательно проверяем атрибут
RewriteEngine On
Первый вариант редиректа
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
Второй вариант редиректа
RewriteCond %{HTTPS} =off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
На этом собственно всё. Если вы проделали всё именно в том порядке, в котором описано выше – просадки не будет.