SSL-сертификаты: что это такое, какие они бывают и зачем их получать
Рассказываем, почему каждый веб-разработчик должен шифровать данные, когда они передаются от пользователей на серверы.
Иллюстрация: Катя Павловская для Skillbox Media
Когда пользователь заходит на сайт, он в первую очередь хочет убедиться, что он надёжный — не обманет и не украдёт данные. А также не даст сделать это другим. Чтобы подтвердить свою благонадёжность, разработчики получают специальные документы — SSL-сертификаты. О них мы сегодня поговорим.
Всё о SSL-сертификатах:
- что это такое
- как работают
- зачем нужны
- кто выдаёт
- какие бывают
- как выбрать
- где приобрести или получить бесплатно
Что такое SSL-сертификат
Он подтверждает подлинность сайта и гарантирует, что данные от пользователя к серверу будут передаваться по зашифрованному соединению.
Аббревиатура SSL расшифровывается как secure sockets layer, или «защищённый сокетный слой». Это протокол безопасности, который создаёт защищённое браузер-серверное соединение. Вся передаваемая по нему информация шифруется одноразовыми ключами, чтобы обеспечить конфиденциальность данных и защитить их от перехвата.
Например, когда вы вводите на сайте номер кредитной карты, чтобы оплатить покупку, браузер отправляет эти данные на сервер. Если отправить их в незащищённом виде — не зашифровать, — мошенники теоретически смогут перехватить их, а затем прочитать. А если данные будут зашифрованы, то разгадать такой шифр будет очень непросто.
Компании должны подтверждать свои сайты сертификатами, если они используют личные данные пользователей — например, логины и пароли. Их имеют все крупные организации: банки, интернет-магазины, социальные сети, платёжные системы, а также другие коммерческие платформы.
Чтобы узнать, есть ли сертификат, можно взглянуть на адресную строку браузера. В её левом углу вы должны увидеть значок с закрытым замком. Если он есть — значит, у сайта имеется сертификат и на нём безопасно.
Как работают SSL-сертификаты
Они гарантируют, что любая информация, которая передаётся от браузера к серверу, будет зашифрована. Для этого протокол использует алгоритмы шифрования данных — например, EIGamal, RSA, DSA или PKCS.
Весь процесс работы протокола выглядит так:
- Пользователь пытается подключиться к сайту, защищённому протоколом.
- Браузер пользователя уточняет у сервера сайта, подлинный ли он.
- Сервер в ответ пересылает копию своего сертификата, если она, конечно, есть.
- Браузер пользователя удостоверяется в его подлинности (сверяется с пунктами выдачи сертификатов), а затем говорит серверу, что всё ок.
- Теперь сервер создаёт защищённый сеанс: отправляет браузеру подтверждение с уникальной цифровой подписью, которая зашифрована протоколом SSL.
- И наконец — данные начинают передаваться по браузер-серверному соединению.
Задача проверки — убедиться, что соединение будет защищённым. Может показаться, что пошаговая схема выглядит длинной, хотя в жизни это занимает миллисекунды.
После того как браузер убедится, что сайт защищён, в адресной строке будет надпись HTTPS. Последняя буква как раз сообщает, что соединение защищённое: S — secured. Но если достоверность не была подтверждена, то в адресной строке будет надпись HTTP, а данные от пользователя к серверу будут передаваться в незашифрованном виде.
Браузеры позволяют посмотреть подробные сведения об SSL-сертификате для каждого сайта. Для этого нужно кликнуть на значок замка и прочитать информацию. Обычно туда входят следующие данные:
- имя домена;
- компания, лицо или устройство, для кого был создан сертификат;
- центр сертификации, который выдал сертификат;
- цифровая подпись из центра сертификации;
- поддомены;
- дата выдачи;
- срок действия;
- открытый ключ.
Зачем нужен SSL-сертификат
Они нужны сайтам, чтобы подтвердить безопасность передачи данных от пользователей на сервер, а также чтобы указать права собственности и не допустить его подделки злоумышленниками. В каком-то смысле это юридически заверенный договор, который сайт подписывает, чтобы доказать свою честность.
Сайтам важно сохранять конфиденциальность данных и гарантировать пользователям безопасность их ввода. Например, если нужно ввести пароль или данные банковской карты, то пользователи будут доверять только тем сайтам, которые прошли проверку. SSL как раз помогают удостоверить это.
Крупным компаниям сертификаты полезны тем, что они предоставляют доступ к HTTPS-протоколу. Он использует все функции протокола HTTP, но при этом шифрует данные с помощью протокола SSL. Браузеры даже помечают сайты с протоколом HTTP как небезопасные, что может стать тревожным сигналом для пользователей и вызвать недоверие — особенно при вводе персональных данных.
Кто выдаёт SSL-сертификаты и какие они бывают
Получить их можно в центрах сертификации, которые ещё называют удостоверяющими центрами. Среди самых крупных из них — DigiCert, Symantec, GlobalSign. Все они занимаются подтверждением ключей для шифрования. Чтобы получить сертификат, придётся заплатить деньги, зато вы будете уверены в его подлинности.
Сертификаты от этих компаний идут вместе с печатью доверия. Она подтверждает, что соединение надёжно защищено.
SSL-сертификат можно получить бесплатно — например, через сервисы Cloudflare и Let’s Encrypt. Они выдают их на три месяца, а затем их нужно будет продлить. Но есть несколько нюансов, которые стоит учесть при выборе этих сервисов:
- Cloudflare выдаёт один сертификат на 50 сайтов одновременно. Поэтому он будет принадлежать не только вам, но и сайтам других компаний. А ещё — у него не будет печати доверия.
- Сертификат Let’s Encrypt поддерживает не все браузеры, не гарантирует сохранность данных, а также не имеет печати доверия.
Поэтому иногда стоит выбрать платный сертификат, если важно убедить пользователей, что соединение надёжно защищено.
Виды SSL-сертификатов
Глобально их можно разделить на два типа:
- Самоподписанные. Это когда они подписываются на сервере компании. И, по сути, это значит, что его может сделать любой пользователь. Поэтому каждый раз при посещении сайта браузеры будут выдавать предупреждение о незащищённом соединении.
- Подписанные в удостоверяющих центрах. Их получают как раз в удостоверяющих центрах. Их подлинность будет подтверждена во всех браузерах.
Второй тип делится ещё на три вида — по тому, как они проверяют данные:
- DV (domain validation) — умеет шифровать данные, но ничего не знает о компании. Это базовый сертификат, который гораздо дешевле, чем остальные, и который подходит любым компаниям.
- OV (organization validation) — шифрует данные и знает о существовании компании. Подойдёт юридическим лицам.
- EV (extended validation) — нужен тем, кто хочет обеспечить высокий уровень защиты. А чтобы получить его, компания должна пройти сложную проверку: подтвердить законность и предоставить права на домен.
Все они обеспечивают надёжность в шифровании при передаче данных от браузера к серверу. Но также есть другие, более специфичные сертификаты:
- Wildсard — объединяет домены с поддоменами, а также защищает соединение между ними.
- SAN — защищает только те домены, которые указаны в сертификате.
Простым сайтам можно обойтись бесплатным сертификатом, если они, конечно, не используют персональные данные. А вот для тех, кто хочет проводить онлайн-транзакции или создать систему личных профилей, нужно будет приобрести один из подтверждённых сертификатов.
Как выбрать SSL-сертификат
Чтобы не потратить лишние деньги, нужно сначала определить, что делает ваш сайт и какие данные он собирает. Мы рассмотрим некоторые из вариантов и дадим пару советов по выбору.
Личный блог. Часто в личном блоге авторы пишут свои мысли, выкладывают фото и видео, при этом данных никаких не собирают, кроме, может быть, почты. Поэтому если вы ведёте личный блог, можно обойтись бесплатным сертификатом от Cloudflare или Let’s Encrypt. Но если вам не нравятся их условия, то выбирайте DV — он станет самым подходящим решением.
Интернет-магазин. Здесь люди покупают товары, тратят деньги и выбирают место, куда им нужно доставить посылки. Без надёжного соединения не обойтись — нужно обеспечить максимальную защиту персональных данных, чтобы пользователи не боялись вводить номера карт и адреса мест жительства.
Лучшим решением будет выбрать сертификат EV, чтобы подтвердить подлинность информации о компании и обезопасить данные. Но также подойдёт OV, если у вас небольшой магазин, у которого не так много клиентов.
Новостной портал. Всё зависит от специфики. Например, если у вас есть медиа, где пользователи входят в свои аккаунты, оставляют комментарии, ставят лайки, то стоит выбрать сертификат OV, чтобы обеспечить надёжность этих данных. Ну а если это новостное издание, где пользователи только читают статьи, можно обойтись DV.
Чтобы выбрать оптимальный сертификат, стоит изучить, что разные центры сертификации предлагают, и учесть следующие пункты:
- совместимость с популярными браузерами;
- уровень защиты персональных данных;
- сложность проверки компании;
- наличие печати доверия.
Если каждый из этих пунктов вас устраивает, можно смело приобретать сертификат.
Где приобрести SSL-сертификат
После ухода многих зарубежных компаний купить его стало намного сложнее. Оплатить подписку на иностранных сайтах с помощью российских карт стало невозможно, поэтому приходится выбирать только среди отечественных аналогов. Но аналогов практически нет.
Самый простой способ получить сертификат сегодня — подать заявку на сайте reg.ru. Там можно получить его бесплатно, но при условии, что вы купите у них домен. Также стоит учесть, что этот сервис сотрудничает с удостоверяющим центром GlobalSign, который может закрыть доступ для пользователей из России. Поэтому при покупке учитывайте этот риск.
Минцифры уже пытается разработать нормативную базу, чтобы российские компании могли получать бесплатные сертификаты. Сейчас заказать его можно через портал «Госуслуг». Поэтому советуем оставить заявку там, чтобы получить надёжный сертификат.