- Что защищает стандарт?
- Взаимодействие с браузером
- Виды ssl-сертификатов
- Виды сертификатов
- Генерация сертификата let’s encrypt на сервере
- Как получить официальный сертификат для сайта
- Как посмотреть информацию о сертификате
- Как устроен ssl-сертификат
- Минусы
- Получение сертификата в панели управления
- Получение сертификата у провайдера
- Самоподписанные сертификаты
- Создание самоподписанного сертификата на сервере
Что защищает стандарт?
SSL-сертификат защищает все принимаемые и отправляемые данные, которыми располагает сайт. Это гарантирует то, что информация, предоставляемая клиентами, будет сохранена. И тем самым бизнес будет под защитой.
В конечном счете SSL-сертификат гарантирует и безопасность клиента. Они знают, что вся информация, включая реквизиты банковских карт, паспортные данные, остается под защитой, поэтому с большой вероятностью захотят иметь дело с компанией.
Взаимодействие с браузером
В браузеры встроены сертификаты всех официальных удостоверяющих центров:
Виды ssl-сертификатов
Различают три вида SSL-сертификатов.
- платные официальные сертификаты, выданные одним из доверенных центров;
- бесплатные сертификаты от Let’s Encrypt;
- самоподписанные (самозаверенные, self-signed certificate).
Виды сертификатов
Выделяют несколько видов сертификатов, которые используются для разных целей:
- Positive SSL – самый недорогой и быстро оформляемый вариант. Доступен как юридическим, так и физическим лицам.
- Essential SSL – общедоступный вид. Доступен как юридическим, так и физическим лицам.
- Обычный Wildcard – то же самое, что и обычный сертификат, но только выдается он уже не на один домен, а на все субдомены.
- EV (Extended Validation) сертификат – вариант, предполагающий расширенную проверку. Доступен только юридическим лицам. Стоит гораздо больше обычного.
Генерация сертификата let’s encrypt на сервере
Пользователи услуги VPS и выделенных серверов могут применить специальное программное обеспечение от Let’s Encrypt и создать бесплатный сертификат для сайтов на свой сервер. Также существует механизм автоматического обновления этих сертификатов.
Как получить официальный сертификат для сайта
Для большинства сайтов будет достаточно установить SSL-сертификат начального уровня с проверкой домена (DV-сертификаты, от английского Domain Validation).
Время выдачи таких сертификатов занимает лишь несколько минут.1. Зайдите в наш каталог и выберите надежную компанию, предлагающую SSL-сертификаты.2. Зарегистрируйтесь на сайте компании и укажите информацию о себе.3. Подтвердите, что именно вы являетесь владельцем домена.4. Создайте запрос на получение сертификата.5. SSL-сертификат будет сгенерирован автоматически.
Есть несколько способов подтверждения владения доменом:
Как посмотреть информацию о сертификате
Если сайт использует SSL-сертификат, то знак “замок” в адресной строке браузера будет закрыт. Если сертификата нет, то открыт.
Браузер предоставляет пользователю полную информацию о применяемом на сайте SSL-сертификате.
1. Чтобы просмотреть ее в браузере Google Chrome, нажмите на значок в начале адресной строки браузера.
2. Выберите в меню пункт “Сертификат”.
3. Открывшееся окно покажет всю информацию о сертификате:
- для какого домена создан;
- название выпустившей сертификат организации;
- срок действия сертификата.
4. Специалисты могут просмотреть дополнительную техническую информацию о сертификате и участвовавших в его выпуске организациях в закладках “Details” и “Certification Path”.
Как устроен ssl-сертификат
SSL (англ. Secure Sockets Layer переводится как “слой защищенных подключений”) – это криптографический протокол, который создан для безопасного обмена и хранения информации на сайтах.
Официальные SSL-сертификаты распространяются в виде набора текстовых файлов – ключей. SSL-сертификаты различаются по используемому методу проверки прав владельца на его выпуск. Самый простой вариант – это проверка прав владения доменом. В более сложных вариантах сертификатов, которые обеспечивают защиту инфраструктуры целого предприятия, нужна проверка информации о компании.
Цифровой сертификат содержит следующую информацию:
- назначение сертификата об обеспечении безопасного соединения между браузером и сервером;
- доменное имя, на которое оформлен SSL-сертификат;
- юридическое лицо, которое владеет сертификатом;
- физическое местонахождение владельца сертификата (город, страна);
- дату выдачи и дату окончания действия сертификата;
- название удостоверяющего центра сертификации;
- используемый алгоритм шифрования;
- публичный ключ, применяемый сервером.
Эта информация позволяет браузеру клиента:1. Проверить достоверность сертификата.2. Установить, что он был выпущен доверенной организацией специально для конкретного домена.3. Сделать вывод, что устанавливаемое с сервером соединение – безопасное.
Минусы
- Небольшой срок действия. Например, сертификаты Let`s Encrypt необходимо перевыпускать каждые 3 месяца.
- Сложности с продлением. Хостеры автоматически продлевают некоторые бесплатные сертификаты. Но здесь бывают проблемы. Перед выпуском сертификационный центр обращается к сайту за специальным файлом. Иногда он в системе не обнаруживается: не было места на диске и файл не записался, во время проверки почему-то закрылся доступ к сайту и пр. Итог один — сертификат не обновляется, а вы даже не узнаете об этом, если не решите вдруг проверить срок действия вручную.
- Отсутствие поддержки. Для корректной работы SSL-сертификата важна грамотная полноценная поддержка (по телефону, по email, в чатах). Она недоступна для бесплатных SSL. На официальных сайтах удостоверяющих центров, как правило, размещены ответы на часто задаваемые вопросы, которые в основном описывают общие случаи и могут быть бесполезны для решения конкретной проблемы. Также есть неофициальная информация на тематических форумах, но среди неё ещё надо найти нужную.
- Есть вероятность не заметить, что сертификат не работает. Как мы писали выше, посмотреть сроки действия сертификата можно вручную. Есть и другой способ: проверять даты с помощью специального скрипта, который не так просто создать. Поддержки нет. Если не проверять сроки, можно пропустить время продления, и сертификаты будут аннулированы. В безопасности сайта появятся дыры, посетители, увидев уведомление о ненадёжности сайта, станут покидать сайт и трафик снизится.
В 2021 году кредитное бюро Equifax сообщило о масштабном взломе: хакеры украли данные 143 млн человек — почти половины населения США. Это произошло отчасти из-за истечения срока действия сертификата, который был неактивным в течение 19 месяцев.
- Несовместимость с некоторыми браузерами. Как правило, такие сертификаты не могут использовать устаревшие версии браузеров и платформ. Это значит, что даже с сертификатом ваш сайт может не открыться у части клиентов. Они увидят предупреждающее об опасности окно и, скорее всего, уйдут с вашей страницы.
- Отсутствие гарантий и компенсаций. При использовании бесплатного сертификата сертификационный центр берёт на себя ответственность за шифрование данных. Но при утечке ответственность будет на вас. Гарантии и компенсацию за взлом вы не получите.
- Для самостоятельного выпуска и установки нужны навыки администрирования. При том, что выпустить и установить сертификат бывает не так трудно, навыки администрирования всё же пригодятся, если вы не хотите просидеть несколько часов за инструкциями.
- Нежелательны для сайтов с платежами. Бесплатные SSL-сертификаты обычно поддерживают технологию SNI (Server Name Identification). С её помощью можно установить сразу несколько сертификатов на один IP-адрес. Иногда это и удобно, но далеко не все платёжные системы работают с такой технологией. Плюс без надёжного SSL-сертификата покупатель не поймёт, кому принадлежит сайт и куда он собирается перевести деньги. Поэтому, если вы работаете с банком, финансовыми организациями, если у вас интернет-магазин или другой сайт, который принимает электронные платежи, не экономьте на SSL-сертификате.
Получение сертификата в панели управления
В большинство популярных панелей управления хостингом встроена поддержка сертификатов от Let’s Encrypt.
Например, в ISPmanager вы можете быстро создать сертификат, просто указав в соответствующей форме название домена.
Получение сертификата у провайдера
Получить бесплатный SSL-сертификат у провайдера можно в один клик.
Например, у провайдера Beget достаточно просто нажать кнопку “Установить”.
Самоподписанные сертификаты
Самоподписанный (самоизданный, самозаверенный, self-signed) сертификат — тот, который вы сами создали для своего домена или IP-адреса. Многим владельцам сайтов может показаться, что это идеальный вариант:
- Бесплатно.
- Доступно. Такой SSL-сертификат может создать любой владелец домена.
- Без обращения к поставщикам услуг. Не нужно ждать ответа от центра сертификации.
- Быстро. Но только если вы знаете, что делать и как пользоваться специальными программами или библиотеками. Например, для Windows можно воспользоваться криптографическим хранилищем OpenSSL или консолью PowerShell.
- Можно создать сколько угодно сертификатов.
Создание самоподписанного сертификата на сервере
Самоподписанные сертификаты генерируются владельцем сервера и домена самостоятельно. Подходит только для владельцев виртуальных и выделенных серверов под управлением Linux.
Самоподписанные сертификаты:
Но такие сертификаты могут:
Для создания самоподписанного сертификата используется набор инструментов из библиотеки OpenSSL.
Для генерации SSL-сертификата из командной строки используйте команду:
# openssl req -x509 -nodes -newkey rsa:2048 -days 365 -keyout /home/ssl/my_key.key -out /home/ssl/my_cert.crt
Будут запрошены:
- пароль для файла с сертификатом;
- данные о владельце сертификата (страна, город, название организации).
Самый главный параметр, который попросит ввести программа OpenSSL – это Common Name – адрес домена, для которого используется сертификат.
После выполнения данной команды на сервере в каталоге /home/ssl будут сгенерированы файлы сертификата: публичный ключ – в файле my_cert.crt и приватный ключ – в файле my_key.key.
