Как обеспечить безопасность веб-сайта, или Протокол HTTPS нас бережет

Al Sinatra

Администратор
АДМИНИСТРАТОР
SKYNET-CLUB
PAYPAL GROUP
ЮБИЛЕЙНАЯ ЛЕНТА
Private fold group

Al Sinatra

Администратор
АДМИНИСТРАТОР
SKYNET-CLUB
PAYPAL GROUP
ЮБИЛЕЙНАЯ ЛЕНТА
Private fold group
Регистрация
4 Июн 2018
Сообщения
1,879
Реакции
458
Репутация
32
ГАРАНТ
3

HTTPS — это некая защитная оболочка для обычного HTTP, позволяющая надежно шифровать передаваемую от пользователя к серверу и обратно информацию. Такое шифрование не допускает утечки данных, а значит, защищает сайт от взлома.

https: необходимость или рекомендация?
Переход на https вовсе не является жестким требованием для всех без исключения сайтов. Конечно, если сайт работает с платежными данными клиентов или любой другой персональной информацией, такой протокол должен быть установлен в обязательном порядке. Во всех остальных случаях переходить или не переходить на https решает только владелец сайта. Однако неприятности в случае взлома грозят любому сайту — рассылка спама, автоматический переход на сайты сомнительного содержания или даже полное уничтожение.

Кстати, использование https, как показывает практика, это серьезный плюс сайту со стороны клиентов и пользователей. Надежность соединения вызывает с их стороны больше доверия к самой компании. К тому же сайты с защищенным соединением лучше ранжируются поисковыми системами.

Как работает https
Как уже говорилось, протокол http, по которому осуществляется передача данных, практически ничем не защищен, и информация может стать легкой добычей хакеров. Для исключения возможности утечки в 1994 году был создан протокол https, использующий криптографическую систему SSL/TLS, которая шифрует все передаваемые данные и дает возможность установки защищенного соединения через незащищенный канал.

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

Как перевести сайт на https
Перевести сайт на протокол https не так сложно, как может показаться. Процесс перехода состоит всего из нескольких шагов.

Шаг 1. Получение и настройка сертификата.
Получить сертификат можно в центрах сертификации за отдельную плату, но существуют и бесплатные варианты. Для небольших фирм они могут быть вполне приемлемы, но крупные компании обычно отдают предпочтения платным сертификатам, которые отличаются расширенной аутентификацией, возможностью включения субдоменов и т.д. Кроме того, бесплатные сертификаты иногда увеличивают время передачи данных в несколько раз из-за особенностей их обслуживания удостоверяющими центрами. И что очень важно, бесплатный сертификат не подойдет для сайтов с приемом онлайн-платежей, поскольку неизвестно, кто является владельцем такого сайта. Кстати, за услугу перевыпуска некоторых бесплатных сертификатов или внесения в них каких-либо изменений все равно придется заплатить. Затем сертификат нужно настроить. Цель настройки — переадресация всех запросов с http на https.


Шаг 2. Работа с внутренними ссылками.
Полные ссылки внутри сайта придется заменить на относительные с помощью скриптов. Поскольку после перехода прокол http не заменится на https автоматически, может возникнуть ситуация с загрузкой смешанного контента. Одновременное действие обоих протоколов не обеспечивает полноценной защиты и может привести даже к тому, что сайт совсем перестанет работать.

Шаг 3. Переадресация.
После установки сертификатов сайт станет доступен по двум адресам, из которых оставить нужно только тот, который начинается с https. Для этого нужно настроить прямой редирект «301» с http на https. Делается это на сервере, но можно и в htaсcess, хотя последний вариант хуже. После этого даже http-запросы пользователей будут переадресовываться на сайт с новым протоколом.

Шаг 4. Внесение изменений в файл robots.txt.
Для того чтобы поисковые роботы могли обнаружить сайт с измененным протоколом, нужно указать этот протокол в файле robots.txt.

Шаг 5. Включение HTTPS Strict-Transport-Security.
Этот процесс индивидуален для каждого сервера, так что универсальных рекомендаций не существует. Для облегчения задачи можно обратиться к специалистам, которые разрабатывали сайт. И в заключение необходимо включить Secure Cookies — с этого момента информация на ресурсе надежно защищена.



Как выбрать сертификат безопасности для сайта (TLS/SSL)
При выборе сертификата можно пойти двумя путями. Если у вас небольшой офлайн-бизнес или личный блог, и вы просто хотите донести информацию о своей компании до потенциальных клиентов, используйте Domain Validation SSL. Этот вид верификации не позволит защищать субдомены и вести финансовые операции через сайт. Зато сертификат делается быстро, и заработает он сразу после того, как вы подтвердите владение доменом. Это можно сделать несколькими способами: через e-mail, через запись в DNS и через хэш-файл. Стоимость таких сертификатов бывает относительно невелика, например, всего 610 рублей в год.

Для владельцев сайтов, на которых предполагаются финансовые онлайн-операции необходима установка сертификатов типа Business Validation. Такой вид сертификата надежнее, поскольку подтверждает не только владение доменом, но и связь компании с сайтом. Для верификации нужно отправить в верификационный центр пакет документов и принять звонок на корпоративный номер. Все сертификаты Business Validation делятся на несколько видов:

Extended Validation SSL — сертификаты с расширенной проверкой, обычно используются банками, платежными системами, крупными интернет-магазинами — теми, кто работает с большими объемами денег.
Wildcard SSL — защищает сам сайт и его поддомены. Используется в том случае, если предполагается несколько поддоменов с разной региональной привязкой.
SAN SSL — поддерживает внешние и внутренние альтернативные доменные имена.
CodeSigning SSL — подтверждает безопасность кодов и программных продуктов с сайта, пригодится разработчикам приложений.

Но какой бы сертификат не был выбран, сначала необходимо сгенерировать запрос на его получение, содержащий всю информацию о хозяине домена и открытый ключ. Запрос направляется в центр верификации. В результате выдается сертификат и файл с ключом, который ни в коем случае не должен попадать в открытый доступ. Сертификаты такого типа могут стоить несколько сотен тысяч рублей, например, приблизительная стоимость Symantec Secure Site Wildcard — от 281 967 рублей в год[9]. Даже стремление к экономии не должно приводить к отказу от обеспечения безопасности данных на сайте. Намного проще потратить средства и время на ее обеспечение, чем после взлома приводить сайт в порядок и бороться с негативной репутацией, которую спровоцировал этот взлом. А если сайт имеет отношение к онлайн-торговле, то его безопасность должна быть основной задачей владельца.
 
Сверху