SSL-сертификат: что это, зачем нужен и как установить
Про SSL кратко
SSL-сертификат — это цифровой сертификат, который удостоверяет подлинность веб-сайта и позволяет использовать зашифрованное соединение. Он был создан для безопасного обмена конфиденциальной информацией — персональными данными, адресами, номерами кредитных карт. Наличие этого сертификата означает, что обмен между браузером и сервером происходит в зашифрованном виде и что сайт — точно тот, за кого себя выдаёт.
На использование SSL-сертификата указывает буква s в сокращении HTTPS и значок замка в адресной строке браузера.
Зачем нужен сертификат
Протокол HTTP (HyperText Transfer Protocol, протокол передачи гипертекста) — это список правил, по которым компьютер получает данные от сервера. HTTP умеет передавать видео, аудио и текст, но только в открытом, незашифрованном виде. А значит, в случае доступа к трафику кто-то другой, например интернет-провайдер, может прочитать страницу, которую вам передаёт сервер, и то, что вы ему отправляете обратно.
Ещё в 2000 году компания Netscape предложила использовать для передачи чувствительной информации протокол шифрования данных SSL (Secure Socket Layer, защищённый сокетный слой) и выпустила расширение протокола HTTP — HTTPS (HyperText Transfer Protocol Secure). Для того чтобы сайт мог работать по протоколу HTTPS, на домен выпускают и устанавливают SSL-сертификат. Сервер проверяет подлинность этого сертификата, а потом передаёт информацию в зашифрованном виде. Её можно расшифровать только с помощью специального ключа, который входит в сертификат. Так работает защита от несанкционированного доступа к трафику.
Сейчас используют переименованную версию протокола — TLS. Однако аббревиатура SSL прижилась, поэтому новая версия часто называется старым именем.
Сертификат SSL гарантирует пользователю, что при переходе на сайт конфиденциальность данных сохраняется и что платформа подлинная.
Как работает SSL
-
Пользователь отправляет запрос на подключение к сайту, защищённому протоколом. Например, переходит по ссылке или вводит адрес в адресной строке браузера.
-
Браузер пользователя по протоколу HTTPS спрашивает у сервера сайта, подлинный ли он.
-
Сервер в ответ пересылает копию своего сертификата SSL и публичный ключ.
-
Браузер пользователя сверяет полученный сертификат с пунктами выдачи сертификатов, удостоверяется в его подлинности и отправляет серверу подтверждение, которое зашифровывает публичным ключом.
-
Сервер создаёт защищённый сеанс: отправляет браузеру подтверждение с уникальной цифровой подписью, которая зашифрована протоколом SSL.
-
Защищённое соединение установлено: данные передаются по браузер-серверному соединению.
Весь этот длинный список действий система проходит за несколько миллисекунд.
Любой желающий может просмотреть сведения об SSL-сертификате в своём браузере. Для этого надо щёлкнуть на значок замка, расположенный в адресной строке. В открывшемся окне можно будет увидеть доменное имя и организацию, для которых выпущен сертификат, центр сертификации, дату выдачи, срок действия сертификата и другую информацию.
Виды сертификатов
Сертификаты SSL бывают самоподписанные (сервером компании) и подписанные в удостоверяющих центрах. Первые может сделать любой пользователь, поэтому браузер, получив такой сертификат, будет предупреждать о незащищённом соединении. А второй тип браузер рассматривает как достоверный, потому что в браузеры вшита информация об основных удостоверяющих центрах.
Основных типов сертификатов SSL три — DV, OV и EV:
-
DV (Domain Validation) — самого низкого уровня. Он подтверждает домен сайта, но не его владельца. Показывает, что подключение защищено, клиент обменивается зашифрованной информацией с сервером. Этот тип сертификатов самый дешёвый, он подходит для личных блогов, сайтов-визиток, где нет сбора чувствительной информации.
-
OV (Organization Validation) подтверждает не только домен, но и его владельца. Этот сертификат могут получить как физические, так и юридические лица. OV часто используется в социальных сетях, форумах и даже интернет-магазинах или других ресурсах с приёмом платежей.
-
EV (Extended Validation) — сертификат самого высокого уровня, он подтверждает домен, его владельца и регистрационные данные владельца. Его могут приобрести только юридические лица. Обычно такой тип сертификата используют финансовые организации, страховые компании, корпоративные сайты и другой крупный бизнес. Проверка данных при выдаче этого сертификата может занимать несколько недель.
Сертификаты всех типов обеспечивают шифрование трафика между сайтом и браузером, так что можно выбрать тот, которого будет достаточно для решения ваших задач.
Удостоверяющие центры
Долгое время владельцы сайтов, которые не хотели платить за сертификат SSL, вынуждены были выпускать самоподписанные сертификаты. Но появились некоммерческие организации, которые предлагают бесплатные SSL-сертификаты для повышения уровня безопасности сети. Одна из таких организаций — Let’s Encrypt. У бесплатного сертификата есть ограничение: он действует всего три месяца, затем его нужно продлить. Платный — до двух лет.
Основные удостоверяющие центры, которые выдают SSL-сертификаты, — Sectigo (бывший Comodo), GeoTrust, GoDaddy, GlobalSign, Symantec. Но многие зарубежные центры, например Symantec и Sectigo, перестали работать с сайтами из России. Пока ещё можно получить сертификат от GlobalSign на сайте reg.ru, причём бесплатно, если купить здесь домен. Но и этот удостоверяющий центр может закрыть доступ для российских пользователей.
Как получить SSL-сертификат в России. В марте 2022 года Минцифры организовало выдачу российских сертификатов через портал госуслуг. Такой сертификат выдают бесплатно вместо иностранного сертификата безопасности в случае его отзыва или окончания срока действия. Но его могут получить только юридические лица.
Как установить SSL-сертификат на сайт
Приобретённый сертификат SSL будет включать в себя файл сертификата, его цепочку и ключ. Дальше нужно установить его на сайт. Если вы используете, например, панель управления веб-хостингом ISPmanager, авторизуйтесь под учётной записью пользователя, на которого приобретён сертификат, перейдите в раздел «SSL-сертификаты», нажмите кнопку «Добавить сертификат» и заполните нужные поля. После установки весь трафик от сайта к вам и в обратном направлении будет зашифрован.
Как быть с российскими сертификатами
Браузер, через который вы заходите на сайт, должен признавать достоверным и доверенным центр, который выдал SSL-сертификат. Но уже больше года зарубежные браузеры — Google Chrome, Edge, Safari, Opera — не признают российский УЦ. А это значит, что при переходе на сайт, подписанный таким сертификатом, браузер будет сообщать о проблемах. И не исключено, что пользователь не сможет зайти, например, на портал госуслуг.
Решить эту проблему можно двумя способами:
-
Пользуйтесь российскими браузерами — Яндекс Браузером или Атомом. Они признают российские сертификаты.
-
Установите корневой сертификат в свою операционную систему. Тогда каждый браузер будет признавать российские сертификаты достоверными.