Работает ли сайт HTTP или HTTPS – в чем разница? Объясняем ошибку: «Ваше подключение не защищено» сегодня?

HTTP или HTTPS – как работает и в чем разница?

Рассмотрим популярный вопрос, в чем же отличия данных протоколов? К каким ошибкам могут они привести? И как решить проблему: «Подключение не защищено», «Сертификат безопасности сайта не является доверенным», «Ваше соединение не защищено», «Your connection is not private» и др.

HTTP или HTTPS – как работает и в чем разница

Значит смотри, готовишься ты такой прочитать нашу статью. Поднимаешь глаза на монитор, на адресную строку. Глянь, перед адресом www.siteradar.ru стоит вот такая штука:

https://

Ее наличие означает, что страница были открыта по протоколу https.

Что же такое http?

Экскурсию мы начнем с предшественника https — протокола http, который расшифровывается как hyper text transfer protocol. Он же протокол передачи гипертекста.

Какого еще гипер? Зачем эти префиксы греческого происхождения?

Термин “гипертекст” появился в литературе и обозначал систему текстовых страниц, которые имеют различные сноски и ссылаются друг на друга. Такое часто встречается в энциклопедиях, словарях и других научных текстах.

Есть мнение, что самый древний пример литературного гипертекста – это Библия, которая включает в себя множество книг, взаимосвязанных между собой и имеющих внутренние отсылки от одного фрагмента текста к другому. Сейчас термин гипертекст больше ассоциируется с Интернетом. Любая вэб-страница в нём — это гипертекст, даже та, на которой ты сейчас находишься. Стоит тебе ткнуть на какую-нибудь ссылку, картинку или видео, как тебя тут же перебросит в другое место. Это, кстати, называется гиперссылкой.

Так вот протокол HTTP передает гипертекст с гиперссылками, которые не просто ссылаются на что-то, а представляют собой конкретный путь до другого файла в интернете (то есть его URL). Делает он это с помощью установления TCP сессии по порту 80.

Отлично, мы гипер — разобрались, теперь гипер — погнали дальше.

С помощью HTTP вы получили эту страницу со статьей, а сама страница написана на языке разметки гипертекста HTML – hyper text markup language. HTTP это клиент-серверный протокол. Это значит что у нас есть клиент (сейчас это вы, а точнее ваш браузер), который хочет получить какие-то данные (эту статью) и сервер, у которого эти данные хранятся (сервер веб-сайта).

Увидев эту статью в поиске, или предложке и нажав на неё, ты отправил http запрос на сервер сайта. В ответ от него получил HTML страничку с этой статьей. Так же на нее можно попасть, зная ее адрес или URL (Uniform Resource Locator), что переводится как унифицированный указатель ресурса.

Открываем капот HTTP

HTTP сообщение состоит из трех частей — стартовой строки, заголовка и тела сообщения.

В стартовой строке запроса указывается URL, то есть адрес, куда его послать и метод запроса. Например, запрашивая эту статью, ты отправил запрос методом GET (дай), ещё есть методы POST, PUT, HEAD, DELETE и другие.

Давай проведем эксперимент. Если сейчас открыть в браузере панель разработчика (обычно это клавиша F12). Потом перейти на вкладку Сеть и оставить комментарий под этим постом, то мы сможем увидеть POST запрос, который передает на сервер информацию о том, что ты оставил комментарий на этой странице.

Проверь прямо сейчас!

А вот стартовая строка ответа от сервера отличается от запроса. В ней передается трехзначный код состояния обработки нашего запроса. Например если все прошло успешно, то вернется код 200 OK, а если сервер ничего не смог найти по вашему запросу, то мы получим знаменитый код 404 Not Found.

Пять типов ошибок сайта

1xx — уведомление о процессе передачи запроса;
2хх — уведомление об успешно завершенной передаче;
3хх — уведомление о переадресации;
4хх — ошибки пользователя, сообщают, что ты либо ищешь то, чего нет, либо делаешь это неправильно, либо тебе сюда нельзя;
5хх — ошибки, говорящие, что серверу сейчас плохо.

А ошибки такие как: Подключение не защищено, Сертификат безопасности сайта не является доверенным, Ваше соединение не защищено, Your connection is not private и др. говорят о том, что у сайта наблюдаются проблемы с сертификатом. Подробнее об ошибках в нашей статье.

Идем дальше.

Передача данных

Заголовки, это параметры которые определяют запрос или описывают тело сообщения. Например, это может быть информация о браузере, языке, авторизации и так далее. Ну и в конце идет тело – это данные которые мы либо передаем в запросе (например текст комментария), либо ответ который мы получаем от сервера (страничка с постом).

И тут минуточку внимания.

Все эти данные протокол HTTP передает в открытом виде как обычный текст. Поэтому если где-то на пути до сервера злоумышленник перехватит эти сообщения, то сможет легко всё прочитать. Прям очень легко.

Раньше было не так страшно, что кто-то перехватит ваш запрос на поиск персидских ковров в Интернете или сообщение на форуме, где вы доказываете оппоненту его неправоту. Но в современном мире это уже неприемлемо. Ведь нам нужно безопасно делать покупки в интернете и пересылать конфиденциальную информацию.

Именно поэтому появилось расширение протокола под названием HTTPS (где эс как доллар значит Secure), и именно его вы используйте сейчас при просмотре этой страницы.

Чем же отличается https от http?

HTTPS шифрует все данные при передаче и делает невозможными их чтение при перехвате.

Шифрование обеспечивают механизмы SSL и TLS. SSL(Secure Sockets Layer) работает так — когда мы подключаемся к сайту который использует SSL, то сначала просим, чтобы сайт сначала идентифицировал себя. В ответ он пришлет нам копию своего SSL сертификата, доказывая, что с ним общаться безопасно. Браузер проверит его и если все ок, ответит сайту, что доверяет ему и начнется обмен шифрованными данными.

А как он узнает, что сертификат в порядке?

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

Второй протокол, TLS(transport layer security) является новой прокачанной версией SSL (но его по привычке многие продолжают называть SSL), он также проверяет подлинность сервера и шифрует данные.

Путаница в терминах возникла потому, что компания Netscape, которая придумала SSL аж в 95 году для своих браузеров, в 99 году передала контроль над ним организации IETF: Инженерному совету интернета, а они возьми да и переименуй его в TLS.

Так что, последняя версия SSL, это по сути TLS 1.0. Хотя сейчас использовать такие старые версии – лютый зашквар, ибо они считаются уязвимыми. В настоящий момент применяется TLS 1.2 и 1.3.

Подведем итоги. Ошибка «Подключение не защищено».

Подключение не защищено, Сертификат безопасности сайта не является доверенным, Ваше соединение не защищено

HTTPS уже давно стал стандартом и поэтому многие браузеры высвечивают яркие красные предупреждения, если вы переходите на сайт без HTTPS (Подключение не защищено, Сертификат безопасности сайта не является доверенным, Ваше соединение не защищено, Your connection is not private и т.д.), а если все ок, то мы увидим замочек рядом с адресной строкой.

Со стороны пользователя данная проблема не может быть решена, следует избегать таких сайтов. Администратору ресурса необходимо установить сертифкат на свой веб-сайт. Поисковики занижают сайтам без HTTPS их позиции в поисковой выдаче, а Google грозится и вовсе перестать работать с такими ресурсами.

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

Понравилась статья? Поделиться с друзьями:
Работает ли этот сайт в России сегодня?
Добавить комментарий