- Цифровой сертификат безопасности (SSL). Что это такое, зачем нужен и как работает
- Зачем нужен сертификат
- Технология работы
- Типы сертификатов
- Как получить SSL-сертификат
- Как установить SSL-сертификат
- SSL-сертификаты и безопасный интернет
- Минутка технического объяснения про SSL и HTTPS
- Как работает SSL-протокол
- А как быть с обычными сайтами без сертификатов?
- Получить SSL-сертификат — это сложно?
- Что не так с безопасным соединением
Цифровой сертификат безопасности (SSL). Что это такое, зачем нужен и как работает
Даже если вы никогда не слышали про SSL-сертификаты, то наверняка сталкивались с ними. Например, при посещении любимых интернет-ресурсов. Если взглянуть на адресную строку в браузере, то можно увидеть значок закрытого замка, при нажатии на который появляется надпись «Безопасное соединение». Замочек или появление HTTPS вместо HTTP означает, что у сайта имеется SSL (Secure Sockets Layer). Если этого нет, в адресной строке можно увидеть открытый замочек или надпись «Не защищено».
Цифровой сертификат безопасности (SSL) — это сертификат безопасности, необходимый для безопасной передачи данных с помощью протокола шифрования. Использование этого протокола гарантирует безопасность обмена данными между сервером web-портала и браузером пользователя. Другими словами, SSL-сертификат защищает пользователей от хищения или подмены данных.
Зачем нужен сертификат
Это забота о безопасности пользователей, а также работа на репутацию. Видя значок замка, человек получает уверенность в том, что вводимые им личные или финансовые данные не окажутся в чужих руках. Это важно, ведь из-за утечек имидж компании может быть подпорчен. Если сертификата безопасности нет, посетители могут отказаться от работы с ресурсом.
Без SSL сайт уязвим. Это особенно актуально для банков, интернет-магазинов, госпорталов и других интернет-ресурсов, работающих с ПДн или другой чувствительной информацией. Более того, некоторые браузеры воспринимают сайты без защитного протокола как потенциально опасные для пользователей.
Технология работы
SSL одновременно использует два типа шифрования, симметричное и асимметричное. Это никак не сказывается на действиях интернет-пользователей. Всё происходит на уровни сети.
- Вы указываете имя интернет-ресурса;
- Браузер проверяет DNS, определяет IP-адреса хоста сайта;
- Переходит на веб-сервер хоста;
- Запрашивает у него безопасное SSL-соединение;
- Хост возвращает валидные данные сертификата;
- Браузер устанавливает защищённое соединение.
Весь процесс занимает несколько секунд, а в ИТ-терминах называется «рукопожатием». После рукопожатия сервер вместе с браузером пользователя используют симметричный ключ, который действителен только для этой сессии (посещения). Все данные будут зашифрованы/расшифрованы именно им. После завершения сессии ключ уничтожается. Когда пользователь снова зайдёт на сайт, процедура повторится.
Типы сертификатов
Различают шесть типов SSL-сертификатов. Их основное отличие — в стоимости, а также уровне проверки.
Сертификаты с расширенной проверкой (EV SSL). Считаются престижными, наиболее дорогими. Используются преимущественно на популярных порталах, собирающих ПДн или принимающих платежи. После установки возле адреса сайта появляется HTTPS, значок замка, имя компании, страна. Для получения необходимо пройти строгую проверку, а также подтвердить наличие исключительных прав на домен.
Сертификаты, подтверждающие организацию (OV SSL). Уровень доверия аналогичен предыдущему, поскольку владельца проверяют по той же схеме. Стоят дешевле, в адресной строке видна информация о владельце. Используются для шифрования транзакций. OV SSL ставят, чтобы защитить обрабатываемые данные от компрометации.
Сертификаты, подтверждающие домен (DV SSL). Недорогой, простой в получении. Право собственности на домен подтверждается по email или телефону. После установки в адресной строке появляется HTTPS и значок замка. Менее надёжны, но подходят для блогов, новостных порталов, других ресурсов, обрабатывающих ПДн и платежи.
Wildcard-сертификаты (сертификаты с подстановочными символами). Используются для защиты базового домена с поддоменами, содержат звездочку (*) как часть общего имени. Когда нужно защитить несколько поддоменов, нет смысла покупать отдельные для каждого из них. Выгоднее купить один Wildcard-сертификат.
Мультидоменные сертификаты (MDC). Используются для защиты нескольких доменных/поддоменных имен, включая сочетания уникальных доменов и поддоменов с разными доменами верхнего уровня. Исключение — локальные/внутренние поддомены. В ситуации, когда нужно защитить интернет-ресурсы sitename.com, на этапе получения SSL указывают оба имени.
Сертификаты унифицированных коммуникаций (UCC). Тоже относятся к мультидоменным сертификатам, а придуманы были для защиты серверов Microsoft Exchange и Live Communications. Сейчас ими может пользоваться любой владелец сайта, желающий защитить несколько доменных имён одним сертификатом. UCC проверяются на уровне организации, а в браузере отображаются значком замка.
Как получить SSL-сертификат
Для тех, кто не знает, где взять SSL, поясняем. Есть три способа: приобрести у компании, сделать самому или получить бесплатно. Самый простой вариант — заказать его. Например, корпоративный облачный провайдер Cloud4Y предлагает три типа сертификатов:
- Symantec. Решения компании обеспечивают должный уровень безопасности сайтов, гарантируя самый высокий уровень защиты и беспрецедентное качество в отрасли.
- Thawte. Накопленный опыт в сочетании с новыми технологиями в области защиты данных позволили компании заслужить доверие потребителей во всём мире.
- GeoTrust. Эти недорогие сертификаты позволяют сайтам гарантировать безопасность.
Также существуют бесплатные сертификаты. Например, созданные внутри самой компании — самоподписанные. Их можно быстро насоздавать в любом количестве. Не у них нет должного уровня защиты, есть риск потерять данные. Кроме того, существует риск ошибки при создании такого сертификата, из-за чего он будет только отпугивать посетителей.
DV SSL тоже обычно бесплатны. Но у них короткий срок жизни (до 3 месяцев), их трудно продлевать, есть риск не заметить, что срок действия давно истёк. К тому же, у них нет технической поддержки.
Как установить SSL-сертификат
До того, как приступать к установке сертификата, позаботьтесь о его активации. Это делается в системе компании, которая продала защитный сертификат. Для активации необходимо указать контакты и данные CSR (Certificate Signing Request)— зашифрованную информацию о домене и компании, а затем отправить запрос. Система пришёт CSR и приватный ключ. В некоторых случаях добавляется публичный ключ.
Скопируйте эти данные или перешлите себе на почту. Они понадобятся, когда вы будете устанавливать SSL на сервер. Будьте внимательны, чтобы не перепутать CSR с приватным ключом! Данные первого файла не является чем-то тайным, а второго — секретная информация.
Для установки понадобится сертификат, приватный ключ и цепочка сертификатов. Как получить приватный ключ, рассказано выше, остальные данные выдаст центр сертификации. У файла сертификата расширение *.CRT, а у файла цепочки — *.CA-BUNDLE.
Процесс установки зависит от вида хостинга и используемой панели управления. Рекомендуем обратиться к вашему провайдеру, чтобы он прислал соответствующие инструкции или помог с установкой.
Обратите внимание, несколько раз установить один сертификат нельзя. Он предназначен для работы на одном сайте, а при установке на разные может возникнуть ошибка. Или, если эта процедура всё же удастся, сайты окажутся уязвимыми, а данные пользователей и владельцев сайта неизбежно будут скомпрометированы.
SSL-сертификаты и безопасный интернет
Когда открываешь некоторые сайты, то браузер сообщает нам про что-то: «Не защищено». Некоторые думают, что такие страницы все в вирусах и что оставаться на них опасно. На самом деле всё не так страшно — у сайта просто нет SSL-сертификата. Рассказываем, что это за технология и почему с ней не всё так просто.
Минутка технического объяснения про SSL и HTTPS
Стандартный протокол передачи данных в вебе, который используется с 1992 года, — HTTP. Этот протокол задаёт правила, по которым пользователи запрашивают сайты, а серверы — отдают эти сайты. Протокола — это просто договорённости: «Заголовок страницы передавай так-то, текст — так, пароль проси так». Протокол может быть любым внутри, главное — чтобы все договорились использовать именно его.
Минус протокола HTTP в том, что он передаёт данные в открытом виде. Если на сайте с HTTP ввести данные карточки, то они полетят по каналам связи незашифрованными. Злоумышленник может их перехватить и прочитать — достаточно, например, просто «прослушивать» весь трафик в беспроводной сети.
HTTP — это быстрый, но небезопасный протокол. Его сложно в этом винить: когда его создавали, никто не думал, что на сайтах будут вводить данные кредитных карт. Думали, будут обмениваться результатами научных исследований.
Чтобы решить проблему незашифрованных данных, в 2000 году придумали HTTPS — HyperText Transfer Protocol Secure, безопасный протокол передачи гипертекста. Внутри себя он работает как обычный HTTP, но снаружи шифрует весь свой трафик. Даже если кто-то вклинится посередине, он увидит только шифр, который не получится разобрать.
За шифрование страниц в HTTPS отвечает протокол SSL — Secure Sockets Layer, уровень защищённых сокетов. Сокеты — это такие виртуальные соединения между компьютерами. Защищённый сокет означает, что данные, которые идут внутри от одного компьютера к другому, — в безопасности. Если браузер открывает страницу по такому протоколу, то он перед отправкой на сервер шифрует всё, что вы делаете или вводите на сайте. Самое то, если нужно отправить данные платёжной карты или логин с паролем от сервиса.
На самом деле примерно с 2014 года вместо протокола SSL используют TLS, который задумывался как обновление SSL 3.0. Дело в том, что в 2014 году обнаружили уязвимость в SSL-протоколе, которая позволяет расшифровывать все данные. В TLS конкретно этой уязвимости нет (но наверняка есть другие), поэтому все плавно перешли на него, но по старой памяти и привычке называют всё SSL-соединением и SSL-сертификатами.
Как работает SSL-протокол
- После ввода адреса браузер отправляется к нужному серверу и запрашивает у него страницу по протоколу HTTPS. Если страницы работают с HTTPS, то всё отлично, переходим к шагу 2. Если на сервере используется ещё старый протокол HTTP, то он отдаст браузеру страницу по этому незащищённому протоколу и никакого шифрования дальше не будет.
- Сервер отправляет браузеру копию своего SSL-сертификата, чтобы браузер убедился, что всё в порядке. В таком сертификате написано, что это за домен, кто выдал сертификат и информация о владельце.
- Браузер проверяет подлинность сертификата и, если всё хорошо, — извлекает из сертификата ключ шифрования и с его помощью безопасно договаривается с сервером о том, каким образом они будут кодировать всё дальнейшее общение.
- Сервер шифрует страницу и отправляет её браузеру.
- Браузер расшифровывает страницу, показывает её пользователю, а серверу сообщает, что всё в порядке, работаем дальше. Все данные шифруются и можно отправлять на сервер что угодно.
А как быть с обычными сайтами без сертификатов?
Если у сайта нет сертификата, это не значит, что сайт плохой. Это значит, что данные, которые вы там будете вводить, передаются в открытом виде. Значит, их проще перехватить. Если вы на сайте ничего не заполняете или оставляете комментарий без регистрации — страшного ничего не произойдёт.
Есть много сайтов, которые не используют сертификаты и ничего не просят от пользователей — сайты-визитки, корпоративные страницы и информационные порталы.
Некоторые считают, что если безопасного соединения нет, то вас сразу атакуют хакеры или заразят вирусы, но это не так. Вирус можно подцепить даже на сайте с SSL-сертификатом, если владелец домена его туда положит.
Получить SSL-сертификат — это сложно?
Нет. Это не только дело десяти минут, но и в некоторых случаях бесплатная операция. Прогресс дошёл до того, что вы можете получить сертификат на любой новый сайт в автоматическом режиме, даже если у вас мошеннический сайт. Достаточно лишь иметь админский доступ к своему сайту.
Что не так с безопасным соединением
Значок замка и надпись «Защищено» означает лишь то, что браузер установил с сервером защищённое соединение. Если кто-то попытается перехватить трафик, то он всё равно не сможет его расшифровать. Но если злоумышленник поставит себе на сайт SSL-сертификат и будет принимать информацию о платёжных картах, то они попадут к нему в руки.
Никто не может помешать преступнику получить сертификат, установить на свой сайт и сделать вид, что это безопасная страница. SSL-сертификат гарантирует безопасную передачу данных, но не отвечает за то, куда они отправляются. Поэтому перед тем как вводить на сайте секретную информацию, убедитесь в том, что сайт принадлежит нужной компании. Иногда бывает так: злоумышленники меняют в адресе сайта одну букву, получают сертификат и делают точно такой же дизайн, как в оригинале. Кто-то заходит на такой сайт за покупками, вводит реквизиты карты и. вы понимаете. Будьте внимательны.
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.