Олег Михалевич статей 187
Поделиться Пожаловаться

Фото

Что такое SSL сертификат, как он защищает информацию и как установить его на хостинг своего сайта

  • Опубликовал(а) Олег Михалевич
  • 22 января 2021 г., 16:10:43 MSK
  • комментариев: 0
  • просмотров: 2 493
Последние несколько лет активно внедряется защищённое соединение для сайтов. Если раньше почти все ресурсы работали по протоколу HTTP, то теперь это HTTPS. Разницу между ними в том, что при незащищённом соединении HTTP можно перехватить поток передаваемых данных, т.к. они передаются в незашифрованном виде.

Например, когда вы посещаете какой-то сайт, можно перехватить файлы сайта и воссоздать его у себя. Конечно, в этом нет смысла, но также можно перехватывать данные, которые вы отправляете на сайт: логин, пароль, телефон, данные банковской карты и другую конфиденциальную информацию. Администратор любого роутера, который находится на пути от вашего компьютера до ближайшего узла шифрования, может заниматься снифферингом – перехватом информации по незащищённому соединению.

Как работает SSLсертификат

По защищённому протоколу данные шифруются с помощью SSL (Secure Sockets Layer) сертификата. Поток данных также можно перехватить, но расшифровать его без ключа не получится. SSLсертификат состоит из нескольких цепочек данных, что-то вроде очень длинного пароля. Он состоит из двух частей:

  • Public (открытый) – доступен всем
  • Private (закрытый) – находится только у владельца сертификата (сайта)

Если объяснить простыми словами, то схема соединения по HTTPSс помощью SSL-сертификата выглядит так:

  • Отправитель запрашивает у получателя SSL-сертификат
  • Проверяется подлинность сертификата в центре сертификации, который выдал его
  • Если всё ОК, то отправитель шифрует данные Public-ключом и отправляет то, что получилось
  • Расшифровать данные может только владелец Private-ключа, т.е. получатель

Обменявшись ключами, браузер взаимодействует с сайтом по защищённому соединению. В этом можно убедиться, если посмотреть на адресную строку в браузере. Слева от сайта должен быть закрытый неперечёркнутый замочек:

Если кликнуть по замочку, то можно узнать дополнительную информацию о сертификате: срок годности, тип шифрования и название центра выдачи сертификатов. Сертификаты делятся на несколько разновидностей:

  • DV(DomenValidation): самые простые для подтверждения доменного имени и обеспечения зашифрованного соединения
  • OV (OrganizationValidation): сертификат с подтверждением принадлежности к организации
  • EV (ExtendedValidation): сертификаты с расширенной проверкой деятельности, вызывают наибольшее доверие. Сайты с таким типом сертификатом отображаются зелёным цветом в адресной строке браузера

Существуют платные и бесплатные сертификаты. Бесплатные DV-сертификаты, например, Let’sEncryptгенерируются на самом хостинге. Платные приобретаются на специализированных сайтах, у регистраторов доменов или на хостингах, здесь мы рекомендуем множество вариантов среди топовых компаний. Вы получаете цифровой товар в виде файлов-ключей. Бесплатные ключи самые простые, обеспечивают базовый уровень защиты, требуют перевыпуска каждые 3 месяца, но этого достаточно для безопасного обмена данными и получения «зелёного» значка от браузера.

Наличие сертификата важно не только для защиты информации. Множество сайтов вовсе не нуждаются в шифровании, например, информационные ресурсы обо всём на свете с бесплатным доступом, там просто нечего защищать. Тем не менее, поисковая система Googleофициально заявила, что наличие/отсутствие SSL является фактором ранжирования.

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

На первых порах вебмастера испытывали проблемы с переходом на HTTPS, т.к. поисковые системы воспринимали это как переезд на новый домен со всеми «прелестями» подобного действа: временная или постоянная потеря части трафика, сброс ссылочной массы, выпадение страниц из индекса и др. Даже хорошо оптимизированный сайт с правильно оформленными тегами мог опуститься в выдаче. Но теперь всё максимально автоматизировано, а переезд практически безболезненный, если следовать официальным рекомендациям поисковых систем.

Как установить сертификат в панели cPanel

В случае с бесплатным сертификатом Let’sEncryptвам не нужно самостоятельно устанавливать сертификат. На хостинге должно быть установлено программное обеспечение для автоматической генерации сертификата с включённым планировщиком для выпуска нового сертификата каждые 3 месяца. Обычно, перевыпуск настроен на неделю-две раньше, прежде чем старый сертификат перестанет работать. Это сделано на случай возникновения ошибок, чтобы у вас было время исправить их.

Механика включения Let’sEncryptразная, в зависимости от панели управления сайтом и её версии. Самые популярные панели это cPanelи ISPManager. В панели cPanelнужно перейти в раздел «Безопасность -> SSL/TLSStatus». Вообще, по умолчанию, на все сайты сразу устанавливается бесплатный сертификат. Вы можете добавить домен/поддомен в программу автоматической выдачи сертификатов «AutoSSL» или убрать оттуда.

Для этого нужно отметить галочками домены и нажать кнопку:

  • Включать домены при использовании AutoSSL: использование Let’sEncrypt
  • Exclude 2 DomainsfromAutoSSL: не включать бесплатные сертификаты
  • RunAutoSSL: запустить процедуру перевыпуска сертификатов прямо сейчас

Если вы купили сертификат, то вам нужно добавить его на хостинг. Проще всего покупать сертификат на том же хостинге где сайт, тогда его установка может быть автоматической, либо вам пришлют инструкцию. Если же вы купили сертификат на стороннем ресурсе, то можно попросить техническую поддержку установить сертификат, либо сделать это вручную.

На примере панели cPanel, вам нужно исключить домен из программы «AutoSSL», затем перейти в раздел «Безопасность -> SSL/TLS -> Установить SSLсайт». Выберите свой домен из списка и заполните текстовые поля:

  • Сертификат (CRT): содержимое текстового файла сертификата, т.е. открытого ключа (откройте файл в блокноте и скопируйте всё содержимое)
  • Закрытый ключ (KEY): содержимое файла закрытого ключа
  • Пакет центра сертификации (CABUNDLE): можно ничего не вставлять, цепочка сертификатов будет загружена из публичного репозитория

В конце нажмите кнопку «Установить сертификат».

ISPManager

Для включения сертификата Let’sEncryptв панели управления сайтом ISPManagerпройдите в раздел «Домены -> WWW-домены», выберите ваш домен и нажмите кнопку «Изменить». В окне редактирования настроек домена нужно:

  • Поставить галочку «Защищённое соединение (SSL)»
  • SSL-сертификат: Новый Let’sEncryptсертификат
  • HSTS: включите для загрузки сайта только по HTTPS (если старый браузер не поддерживает версию шифрования, то сайт вообще не загрузится

Через некоторое время браузер должен показать защищённое соединение с сайтом. Есть один важный момент: сертификат Let’sEncryptне сможет быть выдан, если NS-записи домена не указывают на этого хостера, или ещё не успели обновиться.

Чтобы добавить свой SSL-сертификат в панель управления ISPManager, вам нужно пройти в раздел «Настройки web-сервера -> SSLсертификаты». Далее, нажмите кнопку «Создать» и выберите «Существующий» (сертификат). Теперь нужно заполнить текстовые поля:

  • SSL-сертификат: содержимое файла сертификата (в PEM-формате, как на скриншоте)
  • Ключ SSL-сертификата: содержимое файла закрытого ключа
  • Цепочка SSL-сертификатов: можно не вводить, но если есть, то вставьте содержимое файла CABUNDLE

Также, выберите своё имя пользователя, ведь именно он сможет управлять сертификатом, и введите любое имя SSL-сертификата. Когда сертификат создан, откройте настройки WWW-домена, и выберите только что созданный SSL-сертификат в одноимённом поле.

Комментарии

комментариев: 0