зачем нужен переход на этот протокол и как это сделать?
HTTPS — зачем нужен переход на защищённый протокол и как это сделать для блога?
Если вы ещё не задумывались над этим, то в ближайшее время вам придётся это сделать.
Конечно, если вам важна посещаемость вашего интернет — ресурса и выдача его по поисковым запросам поисковыми роботами таких монстров, как Google и Yandex.
Почему?
Для начала я покажу Вам скрин одного маркетолога, на которого я подписан.
Так будет понятнее дальнейшее содержание статьи.
Пару дней назад я получил от него очередное письмо рассылки. в котором содержалась ссылка на его блог.
Я кликнул по ней и получил следующую картинку:
Согласитесь, не приятно будет осознавать, что ваши посетители, покупатели и клиенты будут видеть такую картинку в браузере, переходя по вашим ссылкам из сообщений электронной почты, которые вы им посылаете.
Как вы думаете, где будет ваш бизнес через некоторое время? Правильно, в «ж…..»
Теперь для вас будет более понятно про протокол HTTPS.
Что такое HTTPS
Для начала обратимся к Википедии и узнаем, что это такое:
HTTPS (аббр. от англ. HyperText Transfer Protocol Secure) — расширение протоколаHTTP, для поддержки шифрования в целях повышения безопасности. Данные в протоколе HTTPS передаются поверх криптографических протоколов SSL или TLS. В отличие от HTTP с TCP-портом 80, для HTTPS по умолчанию используется TCP-порт 443
Не переживайте, я сам в этом не очень разбираюсь.
Для меня это тоже тёмный лес, а не светлая поляна.
Зачем нужен переход на протокол HTTPS ?
Дело в том, что с 2017 года Google и Yandex будут отдавать предпочтение в поисковой выдаче сайтам с протоколом HTTPS.
А сайты с протоколом HTTP может ожидать участь, как на картинке выше.
Возможно не все, но не стоит обольщаться.
Кроме того, уже факт, что в ближайшее время Mozilla Firefox прекращает поддержку старого небезопасного HTTP- соединения.
Ещё информация — воспользоваться рядом функций WordPress в следующем году можно будет только после перевода сайта на безопасный протокол HTTPS.
В официальном блоге популярной CMS говорится, что в начале следующего года разработчики WordPress прекратят продвижение хостинг-партнеров, которые не предоставляют сертификат SSL по умолчанию для всех учетных записей.
Сегодня наличие сертификата SSL (который обеспечивает защищённое соединение по протоколу https) становится обязательным атрибутом для ресурсов, занимающихся бизнесом.
Так как его наличие гарантирует:
- безопасность при передаче информации
- доверие посетителей
- улучшение в поисковой выдаче
- возможность получения более исчерпывающей информации по статистике
Кстати, я говорил об этом в недавно записанном видео, в котором затронут один небольшой нюанс с установкой кнопки подписки на канал YouTube:
Решил его разместить в данной публикации, так как оно косвенно касается темы.
Думаю, вы не обидитесь, что я немного отошёл от сути вопроса.
Что нужно сделать для перехода на HTTPS?
Далее я опишу шаги, которые предпринял я. А сделал я это совсем недавно.
Первое, что вам нужно сделать….
Необходимо завести отдельный почтовый ящик на вашем хостинге для домена, который вы хотите перевести на https.
И не забудьте сделать перенаправление с этого почтового ящика на ваш основной почтовый ящик, которым вы постоянно пользуетесь.
Затем обратитесь в службу поддержки хостинг — провайдера и попросите установить вам SSL — сертификат.
Это можно сделать и самому, если вам не жалко своего времени на изучение вопроса.
У меня это заняло примерно час со службой поддержки, чтобы сертификат безопасности был установлен на моём сайте и подтверждён.
После этого вам нужно внести правку в ваш файл robots.txt, если такой есть у вас на сайте или блоге.
До внесения изменений мой файл robots.txt выглядел так:
После изменений он стал выглядеть так:
У меня файл выглядит так, у вас может выглядеть по другому. Суть в том, что вам нужно поменять протокол HTTP на HTTPS и сохранить изменения.
Следующий шаг. Вам необходимо поменять все внутренние ссылки в статьях и на страницах на новый протокол.
Я это делал вручную (вот балбес), хотя можно было это сделать специальным плагином в несколько кликов.
Он называется Velvet Blues Update URLs.
Надеюсь, вы знаете как устанавливать и активировать плагины, поэтому не буду это расписывать.
Вот скрин плагина:
Всё делается в 2 шага, сначала вносите ваш домен с префиксом http:// в первом окошке, затем с https:// во втором окошке.
Затем ставите галочки во всех чек — боксах кроме последнего и нажимате синюю кнопку «Update URLs NOW»
Всё, дело сделано.
Правка вручную у меня заняла 2 дня… почувствуйте разницу.
Вы можете повторить эту процедуру при необходимости. В противном случае плагин можно отключить или удалить.
Следующий шаг. Проверьте, чтобы все картинки у вас загружались с того домена, который вы переводите на https://
Это важно! Потому что, если картинки будут загружаться с других ресурсов (тем более с протоколом http://) , то значок защищённого соединения (зелёный замок в строке поиска) не будет отображаться.
Это называтеся смешанным содержанием. Как проверить, я покажу ниже.
Ваши дальнейшие действия заключаются в следующем:
- Необходимо добавить сайт в Яндекс Вебмастер. В Вебмастере Яндекса в разделе «Настройка индексирования – Переезд сайта» необходимо указать предпочтительный протокол.
- При этом не забудьте загрузить ваши обновлённые файлы robots.txt и sitemap
- Необходимо добавить сайт в Google Search Console с протоколом https и подтвердить права. Не забудьте также загрузить ваши обновлённые файлы robots.txt и sitemap
Теперь остаётся ждать от 3 до 6 недель, пока поисковые системы пересканируют ваш интернет — ресурс.
При этом трафик на ваш сайт может снизиться и значительно.
Есть ещё несколько дополнительных действий, но если вы не являетесь веб-мастером, то это лучше поручить специалисту.
Я не думаю, что это обязательно для большей части блоггеров и владельцев личных ресурсов.
Теперь давайте вернёмся к смешанному содержанию.
Если смешанное содержание присутствует на вашем сайте, то ссылка в поисковой строке будет выглядеть так для браузера Google Chrome:
Если вам важно добиться результата, чтобы ссылка имела значок безопасности, то необходимо проверить все ссылки, которые препятствуют этому.
Делается это просто, нужно нажать на значок с буквой i в выпадающем окне нажать на ссылку, как показано на видео ниже:
Таким образом можно проверить все страницы сайта или блога и по возможности устранить эти замечания.
Вот в общем то все основные хитрости перехода на протокол https.
Есть конечно много тонкостей, которые нужно в процессе знать и выполнять их, но я не являюсь большим специалистом в этом деле.
В данной статье я описал свои собственные действия и мне ещё предстоит поковыряться с этим делом, чтобы довести всё до ума.
Если ваш ресурс информационный, не содержит регистрационных и платёжных форм, то возможно, все эти действия вам не нужны.
Но время покажет в дальнейшем, насколько это актуально.
Если вы не знаете, как это сделать правильно, лучше обратитесь к специалисту. Вы сэкономите своё время и нервы.
А это главные ресурсы в нашей жизни.
PS: Посмотрите ещё один вариант, как можно перейти на протокол HTTPS без лишних затрат и заморочек.
Почему сайту нужен HTTPS | Вебмастеру
По состоянию на июль 2019 года, более 50% всех сайтов используют протокол HTTPS. И количество этих сайтов увеличивается. Это четко прослеживается в приведенном ниже графике.
Но остается еще 47% площадок, развернутых на HTTP. Что слишком много. Именно это вдохновило меня на написание данного руководства.
Протокол HTTP используется для передачи информации, представленной на веб-странице, с сервера в браузер. Когда пользователь переходит по URL, браузер связывается с сервером, на котором располагается сайт и загружает необходимую для отображения веб-страницы информацию.
При использовании протокола HTTP данные пересылаются в текстовом формате, и любой сторонний пользователь может получить доступ к соединению и конфиденциальная информации.
Чтобы защитить передаваемые данные, нужно применять протокол HTTPS – более безопасная версия HTTP. При использовании HTTPS передаваемая между сервером и браузером информация надежно шифруется.
HTTPS использует TLS (протокол защиты транспортного уровня) или SSL (криптографический протокол) для шифрования. Уникальные ключи шифрования передаются между браузером и сервером для обеспечения безопасной связи.
Преимущества использования HTTPS:
Каждый раз, когда вы планируете внести изменения в свой сайт, вам нужно
Еще в 2014 г. Google объявил, что использование HTTPS станет фактором ранжирования. Поэтому поисковик рекомендует всем вебмастерам, использовать протокол HTTPS.
Перейдя с HTTP на HTTPS, вы получите более высокие позиции в выдаче Google.
Несколько лет назад Брайан Дин проанализировал 1 миллион результатов поиска в Google. В результате он обнаружил зависимость между использованием сайтами протокола HTTPS и их позицией в Google.
Сайты на HTTPS занимают более высокие позиции в поисковой выдаче Google.
Но важнее всего для сайта – это обеспечение конфиденциальности и безопасности его пользователей. Для этого необходимо использовать HTTPS.
Это особенно важно для площадок, которые обрабатывают конфиденциальную пользовательскую информацию: имена, адреса и платежные реквизиты банковских карт.
Важно, чтобы люди доверяли вашему сайту. Сейчас популярные браузеры начали предупреждать пользователей о небезопасности того или иного ресурса.
Посмотрите на сообщение, которое выводит Google Chrome, если пользователь попытается посетить сайт, который не использует HTTPS.
Пользователи браузера Safari, также увидят подобное предупреждение при попытке посещения незащищенных сайтов.
Посмотрим, что произойдет, если в браузере Firefox перейти на небезопасный ресурс.
Переход на HTTPS повысит доверие к вашему сайту, потому что браузеры не будут выдавать подобные предупреждения.
Если сайт использует протокол HTTP, пользователи неохотно будут переходить на него и заполнять формы. HTTPS позволит посетителям чувствовать себя более уверенно, и вы сможете получить больше потенциальных клиентов.
Вот пример безопасной страницы оплаты.
В адресной строке браузера рядом с HTTPS отображается значок блокировки. Это еще один показатель безопасности сайта для пользователей.
Если нажать на иконку, то получите подробную информацию о том, что пароли и данные банковских карт отправляются через защищенное соединение.
Шаг № 1: Купите SSL- сертификат
Это можно сделать на SSLs.com или NameCheap. Оба сервиса предлагают SSL-сертификаты стоимостью менее чем 10 долларов в год.
Многие хостинги предоставляют бесплатный SSL- сертификат. Это дополнительный стимул для веб-мастеров пользоваться услугами этих хостинг-провайдеров.
Шаг № 2: Установите сертификат
Настройте сайт и установите SSL-сертификат на сервере. Если у вас нет опыта, я бы не рекомендовал делать это самостоятельно. Подобная услуга может быть включена в используемый тарифный план хостинга.
Шаг № 3: Протестируйте сайт на наличие ошибок
Убедитесь в том, что все было сделано правильно. Чаще всего ошибки возникают, если веб-страница ссылается на ресурсы с URL не на HTTPS.
Шаг № 4: Уведомите Google
Сообщите Google, что вы перешли на HTTPS. Это можно сделать через Search Console. Затем обновите настройки Google Analytics.
Использование протокола HTTPS улучшает SEO, повышает безопасность сайта и доверие со стороны пользователей. Переход на HTTPS также позволит увеличить количество лидов и улучшит конверсию.
Перевести сайт на HTTPS достаточно просто. Следуйте простому процессу, состоящему из четырех этапов, который я описал выше.
К тому же бесплатный SSL-сертификат можно получить не только от хостера, но и на некоторых платформах электронной коммерции. Wix, Squarespace, Weebly, Shopify и BigCommerce – это лишь несколько из них.
Данная публикация представляет собой перевод статьи «Why Your Website Needs HTTPS» , подготовленной дружной командой проекта Интернет-технологии.ру
рекомендации Google и Яндекс для сайта
25 Октября 2016 | 31685 | 3
Все больше и больше растет ажиотаж вокруг темы переезда сайта на https. Чем же это обусловлено?
В июле 2018 года абсолютно все http страницы будут отмечены как «не защищенные». Но уже сегодня можно посмотреть, как будет выглядеть http сайт для посетителей, просто откройте его в режиме инкогнито (Ctrl+Shift+N).
HTTPS (от англ. HyperText Transfer Protocol Secure) — расширение http-протокола, поддерживающее шифрование данных и обеспечивающий их защиту от прослушивания и изменений.
Зачем он нужен:
- обеспечение безопасности при обмене информацией между сайтом и устройством пользователя
- повышение доверия к сайту и поддержания репутации
- число http-сайтов сокращается
- HTTPS будет включен в список ранжирующих факторов
В августе 2014 Google заявляет о том, безопасность пользователей является главным приоритетом для компании, и поэтому все сайты, обеспечивающие надежную передачу данных (другими словами, использующие протокол https), могут рассчитывать на дополнительный бонус при ранжировании. В заявлении было сказано, что тестовое нововведение затронет порядка 1% поисковых запросов и в будущем планируется увеличение этого процента. Основная цель – дать время вебмастерам и простимулировать их к переходу на безопасный протокол.
Стоит заметить, что пока заметного преимущества при ранжировании наличие защищенного протокола не дает. Однако, Google использует более 200 факторов ранжирования и мы точно знаем, что наличие защищенного протокола – один из них.
В декабре 2015 года Google объявляет, что с этого момента по умолчанию будет индексироваться HTTPS-версия страницы, если сайт доступен для индексации по обоим протоколам: http и https.
В январе 2016 года Google сообщает, что дает преимущество в ранжировании даже тем HTTPS-сайтам, которые неверно реализовали переход на безопасный протокол.
И, самая свежая на данный момент публикация от 8.09.2016 на официальном блоге Google о том, что с января 2017 года браузер Chrome 56 начнет помечать все HTTP-сайты, которые передают личные данные пользователей, как сомнительные (небезопасные). Пока что под это нововведение попадают страницы, где требуется ввод пароля или данных банковской карты, но со временем все сайты, использующие протокол http, будут помечаться как небезопасные.
27 декабря 2016 Google на своей странице в Google+ еще раз напомнил, что с конца января 2017 года с версии Chrome 56, браузер Chrome начнет помечать HTTP-сайты, где требуется ввод пароля или данных кредитной карты, как небезопасные.
В это же время Google начал рассылать в Google Search Console предупреждения для сайтов, на которых есть поля ввода для данных банковских карт и паролей на незащищенных страницах. Примеры таких страниц также прилагаются. Для русскоязычных сайтов уведомления приходят тоже на английском языке.
Уже сейчас вы можете протестировать свой сайт, установив версию Google Chrome для разработчиков, ту самую 56 версию. Скачать ее можно здесь: https://www.google.ru/chrome/browser/canary.html.
После этого откройте в этом браузере свой сайт, нажмите F12, чтобы открыть инструменты разработчика, после чего перейдите на вкладку Console. Там вы увидите, будет ли для вашего сайта выводиться предупреждение в браузере с конца января.
Что касается поисковой системы Яндекс, здесь пока нет особой шумихи — поисковая система лучших позиций не обещает, однако компания показывает на собственном примере надежность своих сервисов, переводя их на https-протокол. Однако, мы считаем, что появление такого фактора ранжирования в Яндекс – лишь вопрос времени.
Что делать сейчас?
Так кому же стоит уже перевести сайт на https, волноваться и думать о риске потери трафика и позиций по запросам?
Критически важно переходить на новый протокол тем сайтам, где есть какая-либо информация, которую могут перехватить (платежные данные, данные доступа к личному аккаунту. В первую очередь, это банки, интернет-магазины, тикет-офисы и онлайн-сервисы – для них переход в списке обязательных рекомендаций.
Однако и обычные сайты должны двигаться в сторону безопасного шифрования, поэтому мы подготовили подробную инструкцию о том, как правильно перевести сайт на https.
Инструкция по переводу сайта на https
Перевод сайта на защищенный протокол в перспективе придется осуществить всем сайтам. К этому будут подталкивать как поисковые системы, так и браузеры. Поэтому, пока вы разбираетесь в теме и выбираете SSL-сертификат, пора подготовить сайт к переходу. Ниже вы найдете несколько полезных блоков информации:
- Виды сертификатов (краткая информация)
- Как подготовить сайт к переходу
- Алгоритм перехода на https, который позволит минимизировать потери поискового трафика и избежать ряда «подводных камней»
Виды SSL-сертификатов
Кратко рассмотрим основные виды сертификатов, не вдаваясь в технические подробности. Тип сертификата зависит от типа проверки.
С проверкой домена (DV или Domain Validated).
Доступен физическим лицам и компаниям. Защищает информацию, но не дает гарантии, что владельцу сайта можно доверять. Требуется подтверждение по электронной почте, находящейся на домене либо на которую зарегистрирован домен. Стоит дешево (либо может выдаваться бесплатно), выдается за несколько минут.
Кому подойдет: сайту-визитке, личному блогу.
С проверкой организации (Organization Validated или OV).
Такой сертификат доступен только юридическим лицам, коммерческим, некоммерческим или государственным организациям. Проводится проверка документов и существования ИП или юридического лица, а также принадлежность домена. Стоит дороже, выдача занимает 1-3 дня.
Такой сертификат подойдет интернет-магазинам, сайтам услуг, порталам.
С расширенной проверкой организации (Extended Validation SSL (EV SSL)).
Дает заметную зеленую строку с названием организации. Таким сайтам можно доверять больше, так как компания точно существует (проводится тщательная проверка) и домен точно принадлежит ей. Проверка занимает 3-9 дней (если нет заминок с документами). Сертификат самый дорогой.
Кто использует: банки, платежные системы, крупные сервисы.
Дополнительные особенности сертификатов, о которых стоит знать:
- Обычный сертификат (на один поддомен). Подойдет для большинства сайтов, стандартный вариант.
- Wildcard (для нескольких субдоменов одного домена). Необходим, если у вашего сайта есть субдомены. Например, site.ru, spb.site.ru, auto.site.ru, m.site.ru (если у вас мобильная версия на субдомене) и пр. Может быть как с проверкой домена, так и проверкой организации. Стоит дороже, чем обычный.
- С поддержкой IDN (для кириллических доменов). Для доменов на кириллице (cайт.рф, сайт.бел и пр.)
- Мультидоменный сертификат. Необходим в том случае, если у вашей организации несколько разных доменов (site.ru, site2.ru, moisait.ru и пр.).
Вот основные поставщики сертификатов:
Как правило, купить сертификат можно сроком 1-3 года. Проще всего будет обратиться за сертификатом к хостеру (либо в центр сертификации). Каждый хостер, идущий в ногу со временем, продает сертификаты и может помочь с процессом их установки.
Решить вопросы с переходом на https на разных этапах могут следующие люди и организации:
ВОПРОС | К КОМУ ОБРАЩАТЬСЯ |
Какой сертификат выбрать? | Хостер/центр сертификации, технический специалист/программист |
Покупка сертификата | Хостер (если он продает сертификаты), центр сертификации |
Установка сертификата | Хостер, технический специалист/программист |
Доработка сайта | Программист |
Контроль выполнения рекомендация, необходимых для минимизации риска потери трафика | SEO-специалист, интернет-маркетолог |
Важно! Обязательно следите за сроками окончания сертификата. Его необходимо будет продлевать, как домен и хостинг.
Как подготовить сайт к переходу на https
Описание алгоритма перехода на защищенный протокол содержит достаточно много технических моментов и специальных терминов. Если вы владелец сайта, то передайте ссылку на эту инструкцию своему техническому специалисту или программисту.
Пока вы решаете вопросы с сертификатом, сайт уже можно начинать готовить к переходу на https. Даже если это будет через полгода-год. Дело в том, что нужно убедиться, что на сайте все ссылки ведут на страницы, доступные по защищенному протоколу либо имеют относительный протокол.
Все ссылки на вашем сайте должны иметь следующий вид:
- Внутренние ссылки — относительные. Например, для перехода на страницу на вашем же сайте site.ru, использовать <a href=»/chastnym_licam/ «> предпочтительнее, чем <a href=» https://www.site.by/chastnym_licam/ «>. Если вы уже переходите на https, можно делать ссылки доступными по протоколу https.
- Внешние ссылки – доступны по https либо используется относительный протокол. Например, не http://www.youtube.com/, а https://www.youtube.com/ — защищенный протокол или //www.youtube.com/ — относительный протокол. Относительный протокол очень удобно использовать, если вы не знаете, доступен ли сайт по защищенному протоколу. В таком случае браузер сам выберет с каким протоколом открыть этот сайт.
Пример ссылки с относительным протоколом:
Важно! Необходимо исправить все ссылки, в том числе на изображения, файлы, видео, внешние скрипты (виджеты, консультанты и прочие внешние сервисы). Чтобы не делать это вручную на многих страницах, можно попросить программиста исправить протокол http:// на относительный в базе данных сразу для всех ссылок.
Далее мы подразумеваем, что вы уже приобрели сертификат и описываем последовательность действий, необходимую для корректного перехода сайта.
Алгоритм перехода на https:
Убедитесь, что SSL-сертификат настроен корректно. Сделать подробный анализ конфигурации SSL можно с помощью этого сервиса:
- Создаем версию сайта с https – она должна быть доступна и работать без ошибок. При этом версия с http также должна быть доступна. Файл robots.txt должен быть одинаков для обеих версий. Составить файл может SEO-специалист.
- Также обязательно проверяем для https-версии:
Вот так будет выглядеть результат, если все хорошо:
и так, если есть проблема:
В данном случае есть проблемы с настройкой сертификата и сайт не открывается в браузере Firefox.
Обязательно протестируйте настройку SSL и проверьте как отображается сайт в разных браузерах, в том числе на мобильных устройствах: отдельно проверьте сайт с iPhone и Android.
Если есть критичные проблемы, обратитесь к техническим специалистам, которые настраивали вам сертификат.
Важно! Ранее в инструкции предполагалось использование двух robots.txt и временное закрытие https-версии от Google на время переклейки в Яндекс. Сейчас это не требуется, мы протестировали вариант без закрытия от Google и обновили инструкцию. Google при доступности обеих версий по умолчанию начинает показывать https-версию в выдаче, в Яндекс – после переклейки.
В robots должна содержаться строчка:
Host: https://site.ru/
Эта строчка означает, что главным зеркалом является https-версия сайта.
Пример robots.txt (обратите внимание (!), что содержимое файла у вас будет свое, это пример для иллюстрации принципа переклейки):
User-agent: *
Disallow: /*?
# Тут ваши текущие директивы
Host: https://site.ru/
Sitemap: https://site.ru/sitemap.xml
- Протокол в rel=”canonical” (используется для указания на каноническую версию страницы)
- Протокол в rel=”alternate” (используется для указания на страницы других языковых версий либо на мобильную версию сайта)
- Протокол ссылок в sitemap.xml
Для https-версии ссылки в них должны быть доступны по https, а не http.
Если домен https был признан зеркалом до переклейки
Если домены http и https были признаны зеркалами ранее (а именно https-версия была признана неглавным зеркалом – такое бывает, но редко), то на данном этапе необходимо сначала расклеить зеркала. Обычно, если https-версия была ранее поклеена на http-версию, это выглядит вот так в Вебмастере Яндекса:
Расклеиваем зеркала, а после расклейки указываем главным зеркалом https-версию. Для этого в Вебмастере заходим в раздел «Переезд сайта» для https-версии и под предложением отклеить сайт нажимаем «Применить».
После этого увидите следующее сообщение:
https://yandex.ru/support/webmaster-troubleshooting/mirrors/change-protocol.xml
Стрелкой указана ссылка на этой странице, по которой можно написать в техподдержку Яндекс при наличии проблем.
Яндекс подтверждает, что в случае, когда https-версия является неглавным зеркалом, это верный порядок действий.
https://webmasters.googleblog.com/2015/12/indexing-https-pages-by-default.html
После начала переклейки вы увидите в Вебмастере Яндекса следующее уведомление в разделе «Уведомления»:
А также увидите, что https-версия стала отбражаться в Яндекс.Вебмастере как основная:
Неглавное зеркало начнет выпадать из индекса Яндекса
А главное зеркало начнет попадать в индекс Яндекса:
Моментально у большого сайта все страницы не переиндексируются, поэтому рекомендуем подождать, пока 90-100% страниц сайта переиндексируются в Яндекс, после чего настроить 301 редирект.
Важно! При переклейке сайта на другое зеркало обнуляется ТИЦ. Он вернется после следующего обновления ТИЦ, которое происходит примерно раз в месяц. (Источник). Не стоит волноваться: никаких последствий для сайта это не имеет, ТИЦ не учитывается при ранжировании сайта в поиске Яндекса.
Цитата справки Яндекса: «тИЦ как средство определения авторитетности ресурсов призван обеспечить релевантность расположения ресурсов в рубриках каталога Яндекса.» (Источник)
Для перенаправления c http:// на https:// в .htaccess добавляем (может работать не во всех случаях, тогда обращаемся к хостеру или программисту):
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]
Альтернативный вариант:
RewriteEngine on
RewriteCond %{ENV:HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
Вот подтверждение от службы поддержки Яндекса. Надеемся, скоро это действие перестанет быть необходимым.
Счетчики шеров и лайков
Еще один важный момент для сайтов, на которых используются счетчики «лайков» — эти данные, к сожалению, будут потеряны. Если до перехода у вас были такие цифры по шерам вашей статьи:
то после перехода счетчики будут выглядеть вот так:
Такая проблема возникает из-за того, что подобные счетчики лайков отображают статистику для конкретного адреса. Так как у страницы меняется протокол, адрес страницы меняется и у новой страницы нет подобной статистики.
Facebook уже решил эту проблему, будем надеяться, что остальные соцсети также подтянутся.
Резюме
Описанный алгоритм перехода на https позволит минимизировать потери трафика. Вместе с тем служба поддержки Яндекса отвечает, что гарантировать сохранение позиций сайта при склейке его зеркал они не могут.
На время переклейки сайта, как правило, временные просадки позиций неизбежны и в Яндекс, и в Гугл. Алгоритм действий, указанный выше, подтвержден Яндексом.
Проблема с реферальным трафиком
Важно! Если пользователь осуществляет переход с сайта на HTTPS на сайт без HTTPS (например, с вашего сайта, на сайт компании, купившей на вашем сайте баннер), то по умолчанию HTTP заголовок referer не передается, если не указано иное правило. Поведение логичное, ведь вы покидаете защищенную зону и отправляетесь в зону риска.
Это означает, что ваш сайт как источник трафика Google Analytics или Яндекс.Метрика определить не сможет и отнесет весь этот трафик к прямому. Поэтому, если вы продаете на сайте баннеры или размещаете информацию о компаниях и их сайтах и вашим клиентам важно отслеживать трафик с вашего сайта.
Чтобы с этим не было проблем, на HTTPS-сайте необходимо добавить на страницах до закрывающего тега </head> мета-тег:
<meta name=»referrer» content=»[директива]»>,
где [директива] — одна из тактик поведения из следующего списка:
none — не передавать;
origin — передавать протокол и домен;
none-when-downgrade — не передавать при переходе с HTTPS-сайта на HTTP-сайт;
unsafe-url — всегда передавать;
Оптимальным вариантом будет следующий:
<meta name=»referrer» content=»origin»>
Проверка смешанного содержимого
После перехода на https, тем не менее, в браузере может не появиться значок защищенного соединения, а отображаться один из следующих значков в Google Chrome
А в сведениях о подключении может быть одно из следующих изображений
Подробнее о статусах в справке Google.
Это значит, что на странице загружается смешанный контент и небезопасное содержимое. Например, какой-то скрипт или изображение все еще загружаются по незащищенному протоколу http. Необходимо, чтобы все внутренние и внешние ссылки имели протокол https:// либо относительный //. Это же касается и внешних ссылок.
Справка Google для технических специалистов.
Чтобы найти смешанный контент, воспользуйтесь инструментами разработчика, которые вызываются в Google Chrome (Ctrl+Shift+I). Воспользуйтесь вкладкой Security, где будут ссылки на просмотр загрузки незащищенного контента в консоли. Для просмотра полной информации в консоли потребуется перезагрузка страницы.
На примере мы видим, что на странице загружается изображение с другого сайта по незащищенному протоколу http. Такую проверку необходимо провести для всех страниц. Это можно сделать SEO-специалист, например, с помощью программы ScreamingFrog SEO Spider. Либо вы можете самостоятельно походить по страницам сайта и посмотреть, везде ли отображается значок защищенного соединения. Примеры страниц, где соединение не защищено, нужно отправить техническому специалисту, который переводит сайт на защищенный протокол.
Анализ ссылочной массы после переклейки
Обратите внимание, что при анализе ссылочной массы вам будет необходимо выгружать ссылки из Вебмастера Яндекса для каждого зеркала, так как в Вебмастере выгружаются ссылки только для того зеркала, для которого вы их выгружаете. Например, для данного сайта нужно будет выгрузить ссылки для трех зеркал, чтобы увидеть всю ссылочную массу сайта:
Источники
Ниже приведены источники информации касательно защищенного протокола от поисковых систем и полезные сервисы – настоятельно рекомендуется к ознакомлению:
Защитите свой сайт с помощью HTTPS (Справка — Вебмастер Google) —
https://support.google.com/webmasters/answer/6073543?hl=ru
Google опубликовал FAQ по переходу на https для новостных сайтов —
https://www.searchengines.ru/google-opublikoval-faq.html
Переезд сайта на новый домен (Справка Яндекс.Вебмастер) —
https://help.yandex.ru/webmaster/yandex-indexing/moving-site.xml
Индексирование картинок (Советы веб-мастеру от Яндекс) —
http://help.yandex.ru/images/indexing.xml
Деликатный переезд (или рекомендации Яндекса по переезду на HTTPS) —
https://yandex.ru/blog/platon/2778
Сделать подробный анализ конфигурации SSL можно с помощью этого сервиса:
https://www.ssllabs.com/ssltest/analyze.html
Бесплатные SSL-сертификаты — https://letsencrypt.org/
Успешного вам переезда!
Автор: Антон Шабан,
Руководитель группы SEO-специалистов
Artox Media Digital Group
Что это такое HTTPS: зачем он нужен
Защита личной информации о клиенте – одно из главных требований к владельцам сайта на данный момент. Без соответствующих сервисов, которые предоставляют файл, защищающий данные пользователя, посетившего сайта, сайт будет понижен поисковыми системами и не иметь преимуществ перед своими конкурентами. Сегодня мы поговорим про этот самый протокол безопасности https и зачем он нужен.
Что такое HTTPS-протокол
HTTPS — это протокол, обеспечивающих шифрование данных, для их защиты. Как мы уже сказала, в последнее время всё больше веб-ресурсов переходит на защищённые соединения пользователя с сервером, приобретая для сайта SSL-сертификат, что это не только добавляет ему преимуществ и поисковые системы, так сказать, помогают продвигать этот сайт, но и обеспечивают защиту данных пользователю, тем самым вызывая у него доверие.
Можно сказать, что если пользователя, зайдя на сайт, видит в строке адреса сайта значок, который гласит, что сайт защищён, вероятность, что но оставит заявку или сделает заказ, намного выше, чем в случае его посещения незащищённого сайта.
Что такое HTTPS и WWW: в чём разница
Понять, что такое HTTPS и WWW не сложно, главное – уметь их различать. По сути, разница этих двух понятий проста, как между комплексным SEO-продвижением и контекстной рекламой.
Дело в том, что WWW —это огромная корпоративная сеть —части которой связаны при помощи протокола http, который является её неотъемлемой частью. Многие пользователи даже не замечают наличие и отсутствие в адресе сайта атрибут WWW, поэтому можно смело сказать, что для них он не играет никакой роли.
Наличие WWW скорее нужно и важно для самого браузера, дабы он смог правильно проиндексировать сайт и если у него есть зеркало, различать их для грамотной подачи пользователю.
HTTP и HTTPS: в чем разница
Рассмотрим, в чём разница между HTTP и HTTPS. HTTPS — не самостоятельный протокол для синхронизации данный, когда HTTP протокол со встроенной настройкой шифрования. В этом и состоит главное их различие.
В случае с протоколом HTTP данные не подвергаются защите, в то время HTTPS обеспечивает защиту любому пользователю, будь то таргетолог или обычный человек.
Чаще всего такие типы протоколов как HTTPS используют такие сайты, структура которых больше других связана с банковскими операциями, например банки или компании по микрозаймам. Не исключением будут так же и интернет-магазины, где оплата покупок, в основном происходит с помощью электронных средств.
Но, всё-таки лучше приобрести SSL-сертификат для своего сайта, чтобы обезопасить данные своих клиентов, ведь, злоумышленники не дремлят, и при любой попытке пользователя, оставить заявку на поисковое продвижение сайта в Яндексе используют эту возможность, дабы украсть пароли или логины человека и тем более его банковские данные. А за сохранность этих данных, владельцы, как правило, несут непосредственную ответственность.
Почему вашему сайту нужен HTTPS (SSL)
admin
Если вы хотя бы раз задумывались о своей безопасности, тогда вы примерно понимаете, что это такое. Ведь каждое посещение сайтов в сети Интернет по факту является не безопасным, где-то могут быть вирус, а некоторые сайты воруют данные. До середины 2018 года, большая часть сайтов работает на протоколе старого поколения — HTTP. А это значит, что все передаваемые данные браузера происходят в незащищенном виде, и каждый может перехватить их.
Чтобы обезопасить пользователей выпустили HTTPS протокол защиты. Если вы не знаете, что такое HTTPS — это протокол передачи данных, обеспечивающий безопасный и конфиденциальный обмен информацией между веб-сайтом и устройством, которое использует пользователь для доступа в сеть.
Зачем нужен HTTPS?
- Шифрование. Вся передаваемая информация будет шифроваться, тем самым сторонние лица не получат доступ к ней.
- Передаваемые данные. Система защиты может зафиксировать любые изменения передаваемых данных, будет это сделано намерено или случайно.
- Защита от атак. Ваш пользователь на сайте будет полностью защищен от любых атак, тем самым это дает гарантию безопасности аутентификации пользователя на ресурсе.
- Уровень доверия. Повышается доверие со стороны пользователя и поисковых машин к сайту, который работает на HTTPS.
- Влияние HTTPS на продвижение сайта — да, есть официальные данные от гугла.
Как работает защищенный протокол?
- SSL/TLS — есть два вариант использования защиты данных (информации). В любом из идет подключение к стандартному протоколу, после чего делается безопасное подключение к веб-сайту, что и делает после невозможным для просмотра данных сторонними лицами.
- Секретные ключи. Когда установлено соединение с протоколом HTTPS создаются случайные секретные ключи, которые известны будут только вашему ПК и серверу к которому подключаетесь. Каждый раз посещая сайт, вы генерируете новый ключ, тем самым идет шифрование данных. Код состоит из 100 символов (рандомных), тем самым подобрать доступ к нему на данный момент нереально.
- Безопасность. Цифровой сертификат повышает уровень доверия и дает дополнительную безопасность соединения для веб-сайта. Всегда можно узнать кем был выдан сертификат, какая информация в нем есть о владельце, и какая подпись подлинности.
- Обмен данных. Только после получения подлинности вашего сертификата сервера начинается обмен данных между сайтом и пользователем.
Где применяются (поддерживаются) HTTPS протоколы?
- Государственные организации
- Сайты банков, или другие финансовые системы
- Сайты, где есть обработка частной информации или персональных данных (электронные почты)
- Веб-сайты вебмастеров, которые хотят сохранить информацию и получить доверие от пользователя
Обязательно ли использовать этот протокол безопасности
Раньше данный момент можно было выбрать, использовать или нет. Теперь такой возможности нет, например Google понижает выдачу для сайтов на незащищенном протоколе (есть информация в сети), а другие сайты поднимает. После выхода Chrome 69 в котором идет проверка защищенного протокола и чуть ли не полное отключение от небезопасного, стоит задумываться о том, что это все таки нужно.
Когда вы уже знаете, зачем нужен HTTPS протокол, то перед созданием своего нового сайта или сайта клиента задумывайтесь о том, чтобы его использовать сразу. Переход на HTTPS всегда будет полезен сайту, чаще всего это увеличивает его трафик на 15-20% после правильно переезда.
Что такое https протокол и зачем он нужен в 2017 году
Что такое протокол HTTPS и зачем он нужен
Вы когда-нибудь задумывались о том, насколько безопасным является Ваше регулярное посещение сети Интернет? Так вот, чаще Вы вовсе не защищены, потому что большинство сайтов работает с использованием протокола HTTP. А это значит, что передача всех данных происходит в абсолютно незащищенном виде и при желании их можно перехватить в любом промежуточном узле, участвующем в цепочке.
С целью исправления этой ситуации был разработан HTTPS протокол.
Для тех, кто не в курсе, что такое HTTPS – это протокол передачи данных, обеспечивающий безопасный и конфиденциальный обмен информацией между веб-сайтом и устройством, которое использует пользователь для доступа в сеть.
Особенности использования HTTPS протокола
Если Вы до сих пор не поняли, зачем нужен HTTPS, ознакомьтесь со следующим перечнем:
- Вся передаваемая информация шифруется, что исключает возможность ознакомления с ней посторонних лиц.
- Фиксируются любые изменения или искажения передаваемых данных, в независимости от того, преднамеренно они совершаются или случайно.
- Защита от атак с перехватом гарантирует безопасную аутентификацию пользователя на сайте.
- Если веб-сайт работает с использованием протокола HTTPS и это визуально отображается в адресной строке браузера, наблюдается существенное повышение доверия со стороны пользователей.
- Влияние HTTPS на продвижение сайтов официально подтверждено Google.
Как это работает
- Защищенность информации достигается путем использования SSL/TLS – стандартного протокола, обеспечивающего безопасное подключение при доступе к веб-ресурсам и делающим невозможным просмотр передаваемых данных посторонними.
- Во время установки соединения на основе протокола HTTPS происходит создание случайного секретного ключа, который будет известен только серверу и Вашему компьютеру.
Затем, при использовании этого ключа (который, к слову, генерируется заново при каждом новом сеансе связи) вся передаваемая информация шифруется.
Получить доступ к передаваемым данным со стороны путем подбора секретного ключа невозможно, поскольку он состоит больше чем из 100 символов.
- Используется еще один дополнительный элемент повышения безопасности соединения на основе протокола HTTPS – это цифровой сертификат, используемый для идентификации сервера веб-сайта.
Он подтверждает факт управления сервером лицом, которому был выдан. В нем содержится вся необходимая информация о его владельце и присутствует цифровая подпись, которая используется для подтверждения подлинности.
- Только в случае прохождения проверки подлинности цифрового сертификата сервера начинается обмен данными между веб-сайтом и устройством пользователя.
Где применяется
Поддержка протокола HTTPS встроена все современные браузеры.
Область применения этого протокола безопасности достаточно широка. В частности, это:
- сайты банковских и других финансовых учреждений;
- электронные платежные системы;
- большинство веб-ресурсов, которые занимаются обработкой частной информации и оперируют персональными данными (например, Яндекс.Паспорт, Gmail).
- абсолютно любые веб-сайты, для владельцев которых важна сохранность информации и доверие пользователей.
Обязательно ли использовать этот протокол безопасности
К счастью, пока что этот протокол не является обязательным и у Вас все еще есть возможность выбирать: использовать его или нет.
Но теперь, когда Вы знаете зачем нужен HTTPS протокол, перед разработкой нового сайта стоит задуматься о возможности его использования, учитывая все вышеназванные преимущества.
Для уже существующих сайтов переход также возможен и полезен, но для этого потребуется достаточно много временных и трудозатрат.
А Вы уже приняли решение на этот счет? Пожалуйста, отпишитесь в комментариях!
что должен знать каждый Web-разработчик / Habr
Как же все-таки работает HTTPS? Это вопрос, над которым я бился несколько дней в своем рабочем проекте.
Будучи Web-разработчиком, я понимал, что использование HTTPS для защиты пользовательских данных – это очень и очень хорошая идея, но у меня никогда не было кристального понимания, как HTTPS на самом деле устроен.
Как данные защищаются? Как клиент и сервер могут установить безопасное соединение, если кто-то уже прослушивает их канал? Что такое сертификат безопасности и почему я должен кому-то платить, чтобы получить его?
Трубопровод
Перед тем как мы погрузимся в то, как это работает, давайте коротко поговорим о том, почему так важно защищать Интернет-соединения и от чего защищает HTTPS.
Когда браузер делает запрос к Вашему любимому веб-сайту, этот запрос должен пройти через множество различных сетей, любая из которых может быть потенциально использована для прослушивания или для вмешательства в установленное соединение.
С вашего собственного компьютера на другие компьютеры вашей локальной сети, через роутеры и свитчи, через вашего провайдера и через множество других промежуточных провайдеров – огромное количество организаций ретранслирует ваши данные. Если злоумышленник окажется хотя бы в одной из них — у него есть возможность посмотреть, какие данные передаются.
Как правило, запросы передаются посредством обычного HTTP, в котором и запрос клиента, и ответ сервера передаются в открытом виде. И есть множество весомых аргументов, почему HTTP не использует шифрование по умолчанию:
• Для этого требуется больше вычислительных мощностей
• Передается больше данных
• Нельзя использовать кеширование
Но в некоторых случаях, когда по каналу связи передается исключительно важная информация (такая как, пароли или данные кредитных карт), необходимо обеспечить дополнительные меры, предотвращающие прослушивание таких соединений.
Transport Layer Security (TLS)
Сейчас мы собираемся погрузиться в мир криптографии, но нам не потребуется для этого какого-то особенного опыта — мы рассмотрим только самые общие вопросы. Итак, криптография позволяет защитить соединение от потенциальных злоумышленников, которые хотят воздействовать на соединение или просто прослушивать его.
TLS — наследник SSL — это такой протокол, наиболее часто применяемый для обеспечения безопасного HTTP соединения (так называемого HTTPS). TLS расположен на уровень ниже протокола HTTP в модели OSI. Объясняя на пальцах, это означает, что в процессе выполнения запроса сперва происходят все “вещи”, связанные с TLS-соединением и уже потом, все что связано с HTTP-соединением.
TLS – гибридная криптографическая система. Это означает, что она использует несколько криптографических подходов, которые мы и рассмотрим далее:
1) Асиметричное шифрование (криптосистема с открытым ключом) для генерации общего секретного ключа и аутентификации (то есть удостоверения в том, что вы – тот за кого себя выдаете).
2) Симметричное шифрование, использующее секретный ключ для дальнейшего шифрования запросов и ответов.
Криптосистема с открытым ключом
Криптосистема с открытым ключом – это разновидность криптографической системы, когда у каждой стороны есть и открытый, и закрытый ключ, математически связанные между собой. Открытый ключ используется для шифрования текста сообщения в “тарабарщину”, в то время как закрытый ключ используется для дешифрования и получения исходного текста.
С тех пор как сообщение было зашифровано с помощью открытого ключа, оно может быть расшифровано только соответствующим ему закрытым ключом. Ни один из ключей не может выполнять обе функции. Открытый ключ публикуется в открытом доступе без риска подвергнуть систему угрозам, но закрытый ключ не должен попасть к кому-либо, не имеющему прав на дешифровку данных. Итак, мы имеем ключи – открытый и закрытый. Одним из наиболее впечатляющих достоинств ассиметричного шифрования является то, что две стороны, ранее совершенно не знающие друг друга, могут установить защищенное соединение, изначально обмениваясь данными по открытому, незащищенному соединению.
Клиент и сервер используют свои собственные закрытые ключи (каждый – свой) и опубликованный открытый ключ для создания общего секретного ключа на сессию.
Это означает, что если кто-нибудь находится между клиентом и сервером и наблюдает за соединением – он все равно не сможет узнать ни закрытый ключ клиента, ни закрытый ключ сервера, ни секретный ключ сессии.
Как это возможно? Математика!
Алгоритм Ди́ффи — Хе́ллмана
Одним из наиболее распространенных подходов является алгоритм обмена ключами Ди́ффи — Хе́ллмана (DH). Этот алгоритм позволяет клиенту и серверу договориться по поводу общего секретного ключа, без необходимости передачи секретного ключа по соединению. Таким образом, злоумышленники, прослушивающие канал, не смогу определить секретный ключ, даже если они будут перехватывать все пакеты данных без исключения.
Как только произошел обмен ключами по DH-алгоритму, полученный секретный ключ может использоваться для шифрования дальнейшего соединения в рамках данной сессии, используя намного более простое симметричное шифрование.
Немного математики…
Математические функции, лежащие в основе этого алгоритма, имею важную отличительную особенность — они относительно просто вычисляются в прямом направлении, но практически не вычисляются в обратном. Это именно та область, где в игру вступают очень большие простые числа.
Пусть Алиса и Боб – две стороны, осуществляющие обмен ключами по DH-алгоритму. Сперва они договариваются о некотором основании root (обычно маленьком числе, таком как 2,3 или 5 ) и об очень большом простом числе prime (больше чем 300 цифр). Оба значения пересылаются в открытом виде по каналу связи, без угрозы компрометировать соединение.
Напомним, что и у Алисы, и у Боба есть собственные закрытые ключи (из более чем 100 цифр), которые никогда не передаются по каналам связи.
По каналу связи же передается смесь mixture, полученная из закрытых ключей, а также значений prime и root.
Таким образом:
Alice’s mixture = (root ^ Alice’s Secret) % prime
Bob’s mixture = (root ^ Bob’s Secret) % prime
где % — остаток от деления
Таким образом, Алиса создает свою смесь mixture на основе утвержденных значений констант (root и prime), Боб делает то же самое. Как только они получили значения mixture друг друга, они производят дополнительные математические операции для получения закрытого ключа сессии. А именно:
Вычисления Алисы
(Bob’s mixture ^ Alice’s Secret) % prime
Вычисления Боба
(Alice’s mixture ^ Bob’s Secret) % prime
Результатом этих операций является одно и то же число, как для Алисы, так и для Боба, и это число и становится закрытым ключом на данную сессию. Обратите внимание, что ни одна из сторон не должна была пересылать свой закрытый ключ по каналу связи, и полученный секретный ключ так же не передавался по открытому соединению. Великолепно!
Для тех, кто меньше подкован в математическом плане, Wikipedia дает прекрасную картинку, объясняющую данный процесс на примере смешивания цветов:
Обратите внимание как начальный цвет (желтый) в итоге превращается в один и тот же “смешанный” цвет и у Боба, и у Алисы. Единственное, что передается по открытому каналу связи так это наполовину смешанные цвета, на самом деле бессмысленные для любого прослушивающего канал связи.
Симметричное шифрование
Обмен ключами происходит всего один раз за сессию, во время установления соединения. Когда же стороны уже договорились о секретном ключе, клиент-серверное взаимодействие происходит с помощью симметричного шифрования, которое намного эффективнее для передачи информации, поскольку не требуется дополнительные издержки на подтверждения.
Используя секретный ключ, полученный ранее, а также договорившись по поводу режима шифрования, клиент и сервер могут безопасно обмениваться данными, шифруя и дешифруя сообщения, полученные друг от друга с использованием секретного ключа. Злоумышленник, подключившийся каналу, будет видеть лишь “мусор”, гуляющий по сети взад-вперед.
Аутентификация
Алгоритм Диффи-Хеллмана позволяет двум сторонам получить закрытый секретный ключ. Но откуда обе стороны могут уверены, что разговаривают действительно друг с другом? Мы еще не говорили об аутентификации.
Что если я позвоню своему приятелю, мы осуществим DH-обмен ключами, но вдруг окажется, что мой звонок был перехвачен и на самом деле я общался с кем-то другим?! Я по прежнему смогу безопасно общаться с этим человеком – никто больше не сможет нас прослушать – но это будет совсем не тот, с кем я думаю, что общаюсь. Это не слишком безопасно!
Для решения проблемы аутентификации, нам нужна Инфраструктура открытых ключей, позволяющая быть уверенным, что субъекты являются теми за кого себя выдают. Эта инфраструктура создана для создания, управления, распространения и отзыва цифровых сертификатов. Сертификаты – это те раздражающие штуки, за которые нужно платить, чтобы сайт работал по HTTPS.
Но, на самом деле, что это за сертификат, и как он предоставляет нам безопасность?
Сертификаты
В самом грубом приближении, цифровой сертификат – это файл, использующий электронной-цифровую подпись (подробнее об этом через минуту) и связывающий открытый (публичный) ключ компьютера с его принадлежностью. Цифровая подпись на сертификате означает, что некто удостоверяет тот факт, что данный открытый ключ принадлежит определенному лицу или организации.
По сути, сертификаты связывают доменные имена с определенным публичным ключом. Это предотвращает возможность того, что злоумышленник предоставит свой публичный ключ, выдавая себя за сервер, к которому обращается клиент.
В примере с телефоном, приведенном выше, хакер может попытаться предъявить мне свой публичный ключ, выдавая себя за моего друга – но подпись на его сертификате не будет принадлежать тому, кому я доверяю.
Чтобы сертификату доверял любой веб-браузер, он должен быть подписан аккредитованным удостоверяющим центром (центром сертификации, Certificate Authority, CA). CA – это компании, выполняющие ручную проверку, того что лицо, пытающееся получить сертификат, удовлетворяет следующим двум условиям:
1. является реально существующим;
2. имеет доступ к домену, сертификат для которого оно пытается получить.
Как только CA удостоверяется в том, что заявитель – реальный и он реально контролирует домен, CA подписывает сертификат для этого сайта, по сути, устанавливая штамп подтверждения на том факте, что публичный ключ сайта действительно принадлежит ему и ему можно доверять.
В ваш браузер уже изначально предзагружен список аккредитованных CA. Если сервер возвращает сертификат, не подписанный аккредитованным CA, то появится большое красное предупреждение. В противном случае, каждый мог бы подписывать фиктивные сертификаты.
Так что даже если хакер взял открытый ключ своего сервера и сгенерировал цифровой сертификат, подтверждающий что этот публичный ключ, ассоциирован с сайтом facebook.com, браузер не поверит в это, поскольку сертификат не подписан аккредитованным CA.
Прочие вещи которые нужно знать о сертификатах
Расширенная валидация
В дополнение к обычным X.509 сертификатам, существуют Extended validation сертификаты, обеспечивающие более высокий уровень доверия. Выдавая такой сертификат, CA совершает еще больше проверок в отношении лица, получающего сертификат (обычно используя паспортные данные или счета).
При получение такого сертификата, браузер отображает в адресной строке зеленую плашку, в дополнение к обычной иконке с замочком.
Обслуживание множества веб-сайтов на одном сервере
Поскольку обмен данными по протоколу TLS происходит еще до начала HTTP соединения, могут возникать проблемы в случае, если несколько веб-сайтов расположены на одном и том же веб-сервере, по тому же IP-адресу. Роутинг виртуальных хостов осуществляется веб-сервером, но TLS-соединение возникает еще раньше. Единый сертификат на весь сервер будет использоваться при запросе к любому сайту, расположенному на сервере, что может вызвать проблемы на серверах с множеством хостов.
Если вы пользуетесь услугами веб-хостинга, то скорее всего вам потребуется приобрести выделенный IP-адрес, для того чтобы вы могли использовать у себя HTTPS. В противном случае вам придется постоянно получать новые сертификаты (и верифицировать их) при каждом обновлении сайта.
По этой теме много данных есть в википедии, есть курс на Coursera. Отдельное спасибо ребятам из чата на security.stackexchange.com, которые отвечали на мои вопросы сегодня утром.
Примечания переводчика:
1)Спасибо хабраюзеру wowkin за отличную ссылку по теме (видео переведено и озвученно хабраюзером freetonik):
2) По результатам развернувшейся в коменатариях дискуссии (спасибо за участие хабраюзерам a5b, Foggy4 и Allen) дополняю основную статью следующей информацией:
По данным netcraft на базе свежего SSL survey (2.4 млн SSL сайтов, июнь 2013), большинство SSL соединений не используют Perfect forward secrecy алгоритмы: news.netcraft.com/archives/2013/06/25/ssl-intercepted-today-decrypted-tomorrow.html
Особенно ситуация плоха в случае с IE (даже 10 версии), который поддерживает Диффи-Хеллмана только на эллиптических кривых (RSA и ECDSA сертификаты), либо классический Диффи-Хеллман с более редкими сертификатами DSS (DSA).
По подсчетам netcraft 99,7 % соединений с IE и по 66% — с Chrome, Opera и Firefox не будут использовать Диффи-Хеллмана.
На Hacker News в обсуждении это тоже заметили.
Also (and I made the same mistake in my talk…), yes, explaining DH is important, but now it kind of sounds like in TLS both sides figure out the master secret using DH (and, in your talk, specifically, regular DH, not EC-based DH), when in reality that depends on the ciphersuite, and the vast majority of TLS connections don’t work that way. From what I understand to be most TLS configurations in the wild, the pre-master secret is encrypted using the server’s public key. (RFC 5246: 7.4.7.1, 8.1.1)это важно и интересно, но не все понимают что он в реальности применяется не так часто. В большинстве сеансов SSL и TLS действительно обмен ключей происходит путем их шифрования с помощью RSA.