В этой статье мы рассмотрим, как установить SSL-сертификат. С помощью SSL-сертификата ваш сайт может использовать протокол HTTPS для надежной передачи информации между точками A и B. Это имеет решающее значение при передаче конфиденциальной информации, такой как данные кредитной карты на страницах проверки и личную идентификационную информацию (PII) в форме входа и контакта.

Как установить SSL-сертификат

В дополнение к преимуществам безопасности веб-сайты, использующие SSL, получают более высокий рейтинг в Google и улучшают производительность благодаря использованию протокола HTTP/2. Также важно понимать, что SSL не защищает ваш сайт. Это руководство предназначено для ознакомления начинающих и промежуточных пользователей с тем, как развернуть бесплатный SSL-сертификат от Let's Encrypt на своих сайтах, размещенных на собственных сайтах.

Шаг 1

Соберите требования.

Теперь проще, чем когда-либо, использовать HTTPS на вашем сайте. Начинающие должны начать с общения с хостингом провайдером о том, какие варианты тот предлагает.

Есть несколько простых способов добавить SSL на ваш сайт:

  1. Некоторые хосты предлагают бесплатный SSL, включая опции SSL с одним нажатием;
  2. Многие хосты предлагают платный SSL и будут выполнять сертификаты для вас;
  3. Промежуточные пользователи могут генерировать собственный бесплатный SSL-сертификат (например, Certbot / Let's Encrypt).

Независимо от типа сертификата, который вы выбрали, шифрование и уровень безопасности одинаковы.

1.1 - Типы SSL-сертификатов

Некоторые посетители признают дополнительную аутентичность и доверие, предлагаемые сертификатами Extended Validation (EV) и Organization Validated (OV) из-за их строгой проверки.

Существует три типа сертификатов:

  • Домен подтвержден (DV)

Сертификатам DV требуется только центр сертификации, чтобы убедиться, что пользователь, запрашивающий сертификат, владеет и администрирует домен. Посетители увидят значок блокировки в своей адресной строке, но нет конкретной информации о владельце.

  • Утвержденная организация (OV)

Сертификаты OV требуют, чтобы Центр сертификации подтвердил, что бизнес сделал запрос зарегистрированным и законным. Когда посетители нажимают на значок зеленого замка в своем браузере, указывается название компании.

  • Расширенная проверка (EV)

Сертификаты EV требуют еще большей документации для Центра сертификации для проверки организации. Посетители увидят название бизнеса внутри адресной строки (в дополнение к щелчку на значке блокировки).

1.2 - Коммерческие и бесплатные SSL-сертификаты

Важно, чтобы вы оценили свое предпочтение, когда дело доходит до коммерческих или бесплатных сертификатов.

  • Коммерческие (платные) SSL-сертификаты

Это достойный вариант для многих владельцев веб-сайтов. Оплата центра сертификации (или вашей хостинговой компании) часто дает вам преимущества технической поддержки. Уровень шифрования такой же, как и с бесплатными сертификатами SSL. Ключевым отличием будет тот уровень поддержки, который вы получаете с сертификатом.

  • Бесплатные сертификаты SSL

Они возглавляются инициативой Let's Encrypt - открытое сотрудничество между целым рядом глобальных организаций, нацеленное на создание SSL-сертификатов для всех владельцев веб-сайтов.

Заметка

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

1.3 - SSL в облаке

Вы также можете получить преимущества SSL-сертификатов через облачные провайдеры, такие как Сети доставки контента (CDN) и решения для веб-приложений Firewall (WAF), которые предлагают его без дополнительной оплаты.

Эти сервисы являются прокси между посетителем и вашим сайтом. Изменяя записи домена, чтобы указать на их серверы, они могут кэшировать ваш контент, чтобы сделать ваш сайт быстрее и отфильтровывать вредоносный трафик. Это также означает, что браузер распознает, какие IP-адреса сервера подключены к вашему домену, что позволяет использовать сертификаты DV. Эти поставщики также могут работать с вашим собственным сертификатом SSL. 

Заметка

Если вы используете SSL-сертификат через свой хост, вы можете перейти к шагу 3: важные заключительные шаги.

1.4 - Что вам нужно, чтобы получить бесплатный SSL-сертификат

Следующее руководство работает лучше всего, если у вас есть выделенный IP-адрес для вашего сайта (через VPS или выделенный сервер). Если вы находитесь на общем хосте, поговорите с вашим хостом о развертывании Let's Encrypt; несколько хостов автоматизировали процесс развертывания бесплатного SSL для учетных записей с общим хостингом. Можно использовать идентификатор имени сервера (SNI) с одним IP-адресом сервера и создавать сертификаты для всех сайтов на сервере.

В остальной части этого руководства предполагается, что у вас есть полный доступ и управление вашим веб-сервером.

Вам понадобится следующая информация о вашем сервере:

  • IP адрес
  • Имя пользователя сервера (с правами администратора или супер привилегиями)
  • Пароль пользователя (или, предпочтительно, аутентификация SSH-ключа)
  • Программное обеспечение (например, Apache, nginx, IIS)
  • Операционная система и номер версии (например, Debian 7, Ubuntu 16.04 и т. Д.)

Шаг 2

Создать сертификат

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

С вашего компьютера вам нужен способ входа на ваш сервер и отправки SSH-команд. Если вы находитесь на Mac, вы можете использовать терминал (встроенное приложение), и Windows может загрузить PuTTY. Некоторые хосты также предлагают веб-интерфейс для запуска команд на вашем сервере.

Заметка

Инструкции будут отличаться в зависимости от вашего программного обеспечения и системы сервера. Некоторые системы не поддерживают Certbot, но вы можете найти список других уважаемых клиентов, которые должны работать с вашей серверной средой.

2.1 - Обзор шагов

Ниже приведен краткий обзор того, как вы можете получить бесплатный сертификат SSL из Let's Encrypt с помощью инструмента Certbot.

Обзор шагов по использованию Certbot:

  1. Подключитесь к своему серверу через SSH, используя IP-адрес, имя пользователя и пароль.
  2. Посетите веб-сайт Certbot и выберите серверную операционную систему и программное обеспечение.
  3. Следуйте инструкциям, приведенным для вашего сервера, чтобы выполнить следующие шаги.
  4. Запустите все команды, перечисленные для установки зависимостей.
  5. Выполните команды, перечисленные для установки certbot.
  6. Запустите команды, перечисленные в «Начало работы» и сгенерируйте сертификат.
  7. При появлении запроса укажите адрес электронной почты.
  8. Согласитесь с Условиями, когда будет предложено.
  9. Выполните команды, перечисленные для проверки продлений в разделе «Автоматизация обновления».
  10. Настройте работу cron или systemd на сервере для автоматизации процесса обновления

Следующие изображения и анимации иллюстрируют весь процесс для сервера с использованием Apache на Ubuntu 16.04.

2.2 - Установите Certbot Client

Используя инструкции, предоставленные для вашего сервера, установите любые зависимости и инструмент Certbot.

Заметка

Если вы получаете ошибки разрешения, обратитесь к своему хосту, чтобы убедиться, что у пользователя есть разрешения для запуска административных команд (например, sudo).

2.3 - Создать сертификат SSL

Продолжая работу с одним и тем же набором инструкций, раздел «Начало работы» предоставит команды, необходимые для создания сертификата SSL для вашего сайта. Следующие изображения являются примером того, что вы можете ожидать.

После создания сертификата вы захотите отметить, что важные заметки показывают расположение вашего каталога конфигурации Certbot. Это содержит учетные данные, сертификаты и закрытые ключи.

Вы должны перейти к этому местоположению на своем сервере и загрузить резервную копию.

2.4 - Автоматизация обновления

Теперь у вас есть активный SSL-сертификат на вашем сайте! Однако ваш сертификат истечет. Давайте зашифровать сертификаты действительны только в течение 90 дней. Вы можете автоматизировать этот процесс, поэтому вам не нужно забывать вручную обновлять сертификат.

Рекомендуется установить работу cron или systemd для продления сертификата дважды в день. Прежде чем начать, обратите внимание на расположение каталога конфигурации Certbot с предыдущего шага.

Настройка обновления сертификата SSL через работу Cron.

Чтобы запланировать задание cron, которое обновляет сертификат SSL:

  1. Подключитесь к своему серверу.
  2. Запустите команду crontab -e
  3. При появлении запроса выберите текстовый редактор (например, nano)
  4. Введите следующую команду, позаботившись о замене места тем, которое было предоставлено при создании сертификата:
    52 0,12 * * * root /var/log/letsencrypt/certbot-auto renew --quiet
  5. Откройте свой веб-сайт, чтобы убедиться, что он работает

Заметка

Для некоторых конфигураций сервера может потребоваться запустить дополнительные команды для загрузки новых сертификатов.

Вы можете просмотреть полную документацию о продлениях Certbot для получения дополнительной информации.

Эти благотворительные организации работают над тем, чтобы сделать Интернет более безопасным местом для всех. 

Шаг 3

Заключительные шаги

Хотя HTTPS теперь является опцией на вашем сайте, HTTP-версию вашего сайта по-прежнему можно получить. В идеале вы должны заставить всех посетителей (включая поисковые системы) видеть версию HTTPS вашего сайта. Вы также должны предпринять шаги для исправления предупреждений о смешанном содержании и обновления любых облачных сервисов на основе прокси (таких как брандмауэры и CDN) для работы с новым сертификатом SSL.

3.1 – Принудительный HTTPS

Чтобы заставить посетителей получить доступ к вашему сайту только через HTTPS, вы можете отредактировать свой файл .htaccess. Вы можете найти это в корне вашего сайта, и вам может потребоваться показать скрытые файлы, чтобы найти его.

Существуют и другие методы для Apache, например, использование файла виртуального хоста. Если вы используете сервер IIS, вы можете следовать инструкциям по использованию модуля перезаписи URL-адресов, а серверы nginx могут использовать файл конфигурации nginx.

Скопируйте эту директиву в файл .htaccess, чтобы перенаправить HTTP-посетителей на HTTPS-версию вашего сайта:

Code Snippet - добавить в файл .htaccess

1. RewriteEngine On
2. RewriteCond %{HTTPS} off
3. RewriteRule (.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Предосторожность

Редактирование файла .htaccess может вызвать проблемы с большим количеством сайтов со сложными структурами. Переписывание ниже лучше всего подходит для веб-сайтов на выделенном сервере или VPS, работающем под Apache.

3.2. Проверьте наличие предупреждений о смешанном содержании.

Пока ваш сайт теперь доступен на HTTPS, у вас могут быть ресурсы, связанные на вашем веб-сайте, которые загружают HTTP. Сюда входят такие вещи, как изображения, видео и внешние ресурсы.

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

Вы можете использовать тот же доступ SSH, который использовался для создания сертификата для запуска команды, и найти любые файлы, которые ссылаются на http://directly.

Чтобы найти загрузку ресурсов через HTTP, выполните следующую команду:

grep -r "http://"

Это будет список всех файлов, которые будут исследованы на вашем сервере или CMS. Просто измените URL всех ресурсов с http:// на https:// или на относительный путь.

Вы также должны запрашивать свою базу данных или вручную просматривать сообщения и страницы для содержимого HTTP. Доступны плагины и расширения, которые могут автоматизировать процесс перезаписи URL-адресов с использованием HTTP-протокола HTTPS.

Если ресурс HTTP хранится на вашем собственном веб-сайте, мы рекомендуем использовать относительный каталог и имя файла следующим образом.

Абсолютный путь:

<img src="https://Ваш_Сайт.com/images/pic.jpg">

Относительный путь:

<img src="/images/pic.jpg">

Предосторожность

  • Если ваш сайт загружает внешние ресурсы, изменение ссылок на HTTPS может нарушить функциональность. Чтобы этого избежать, убедитесь, что ресурс доступен через HTTPS перед изменением URL-адреса в коде. Вы можете получить доступ к URL-адресу с HTTPS в браузере для проверки.
  • Если вы столкнулись с проблемами, вы можете попытаться загрузить внешний контент и разместить его на своем собственном сервере, чтобы обеспечить его загрузку через HTTPS. Всегда проверяйте среду разработки для скриптов и другого контента, которые могут выполняться по-разному.

3.3 - Поисковая оптимизация

Последнее, что нужно подготовить, - это потенциальные негативные последствия использования HTTPS. Следуя приведенным ниже шагам, следует свести их к минимуму.

После настройки добавьте и проверьте новый сайт HTTPS в Google Search Console. Это позволит вам пересканировать ваш сайт и отправить новый XML-сайт с вашими URL-адресами HTTPS.

Для многих элементов SEO, таких как «rel = canonical» и «Open Graph», рекомендуется использовать абсолютный URL-адрес, поскольку они читаются снаружи сайтами социальных сетей и поисковыми роботами.

Важно отметить, что после применения SSL будет период нормализации, но, в конце концов, это подтвержденный сигнал ранжирования в соответствии с Google.

Аналогичным образом, счетчики социального доступа для более старого контента, скорее всего, станут недействительными. Это связано с тем, что теперь есть новый URL-адрес, начинающийся с HTTPS, а не HTTP, и многие инструменты считают каждый отдельный URL с его собственными показателями взаимодействия.

3.4 - Предостережение о безопасности веб-сайта

HTTPS - отличная вещь для Интернета в целом, это помогает сохранить секрет общения между пользователями и веб-сайтами, которые они посещают. SSL защищает данные в пути, но не защищает сам сайт.

Безопасность веб-сайта более полная, чем HTTPS/SSL, и должна рассматриваться как таковая. Подумайте о HTTPS/SSL как о одном из многих элементов управления безопасностью, которые следует учитывать при анализе безопасности ваших веб-сайтов. Развертывание HTTPS / SSL на вашем веб-сайте мало способствует обеспечению безопасности ваших посетителей, если вы не предпринимаете других действий для обеспечения безопасной среды.

Добавить комментарий

Авторам некорректных комментариев доступ на сайт будет заблокирован