Есть ли смысл переходить с http на https и как это правильно сделать?

23 март 2017 3 854 0

Планируете переход на 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]

На этом собственно всё. Если вы проделали всё именно в том порядке, в котором описано выше – просадки не будет.

 

Ключевые слова:

http https SSL TLS Google Яндекс robots.txt Sitemap

Комментарии:

Добавить
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent

Обновление блога weblance.com.ua v.3.0 beta

Те, кто заходит на мой блог не первый раз, должны были заметить смену дизайна ресурса. К слову, изменился не только дизайн ресурса, но обо всём по...

Rozetka.com.ua: скидки к 23-му февраля

Крупнейший интернет-магазин страны в очередной раз порадовал своими скидками. На этот раз, «Rozetka.com.ua» приготовила специальные цены к 23-му...

Google Drive как альтернатива USB-кабелю для обмена файлами на Android

Многие владельцы планшетов и мобильных устройств, работающих на операционной системе Android, привыкли копировать файлы с помощью USB-кабеля. Кто-то...

Историческое событие: IE повержен!

Net Application опубликовала интересную статистику, согласно которой, в ноябре октябре 2011 произошло историческое событие, - впервые с 1998 года,...

Ликбез: кнопки и счётчики 88х31

В последнее время среди многих веб-мастеров стало «стандартом» вешать гору говно-кнопок на свои сайты. Зачем это нужно – они сами того не знают, но...

Бесплатный софт, достойный внимания

Практически каждый человек, повседневно работающий за ПК, использует с десяток программ. Одни из них платные, другие – бесплатны. От удобства софта...

авторизация на сайте

Войти при помощи Facebook Войти при помощи Google+
Забыли пароль?