Статьи

Как защитить WordPress с помощью SSL

Эта статья была рецензирована Адрианом Санду . Спасибо всем рецензентам SitePoint за то, что сделали контент SitePoint как можно лучше!


С тех пор, как Google начал принимать HTTPS в качестве фактора ранжирования в 2014 году, люди постепенно переключали свои сайты на использование зашифрованных соединений. Это может быть одной из причин установить SSL для защиты WordPress — SEO. Однако с января 2017 года Google несколько усложнил ситуацию, указав в Chrome, что сайты, которые все еще используют HTTP, небезопасны. Когда сайт использует форму, которая собирает потенциально личные данные пользователя, такие как учетные данные для входа, появляется еще более строгое уведомление о том, что сайт не защищен.

Эти уведомления все еще серого цвета, но, вероятно, пройдет немного времени, прежде чем мы начнем видеть красные уведомления для всех этих ситуаций. Эти красные сообщения уже видны, когда фактически имеется сертификат SSL, но его невозможно проверить. И это не только Chrome — браузеры, такие как Safari, Internet Explorer и Firefox, имеют схожие способы показать безопасность или отсутствие безопасности на сайте.

Уведомления о безопасности

Дополнительным преимуществом обслуживания вашего сайта по HTTPS является то, что вы можете использовать HTTP / 2, для которого требуется SSL.

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

  1. Использование CloudFlare для обеспечения безопасности вашего сайта с помощью стандартного сертификата SSL — простой способ.
  2. Использование Let’s Encrypt для получения шифрования на уровне домена.
  3. Получение расширенного сертификата SSL для достижения сертификата самого высокого уровня с указанием названия вашей компании, а не просто «Безопасного» уведомления.

Простой способ защитить WordPress: CloudFlare SSL

Использование CloudFlare для защиты вашего сайта — самый простой способ сделать это, но у него есть некоторые предостережения. Крей Митчелл (Kray Mitchell) сделал отличное руководство по установке CloudFlare вместе со своей универсальной функцией SSL.

Процесс очень прост: зарегистрируйтесь в CloudFlare , измените DNS своего сайта, чтобы активировать CloudFlare, и включите «Flexible SSL» в разделе «Crypto».

CloudFlare Гибкий SSL

Чтобы сделать это еще проще, вы можете сделать так, чтобы CloudFlare перезаписывал ссылки на незащищенные URL-адреса с версией HTTPS, чтобы предотвратить смешанные предупреждения о содержимом. Это можно сделать, включив «Автоматические перезаписи HTTPS» в нижней части раздела «Криптография».

Автоматическая перезапись HTTPS

Если вы устанавливаете плагин CloudFlare WordPress, вы можете указать некоторые обязательные настройки в WP администраторе. Кроме того, это помогает преодолеть бесконечный цикл, который иногда запускается при изменении структуры URL на HTTPS, путем изменения заголовка. Плагин также является самым простым способом настройки Server Push , что является одним из основных преимуществ HTTP / 2.

Это действительно так просто! Но нужно отметить два важных момента:

  1. Гибкий SSL только шифрует трафик между браузером и CloudFlare. Это означает, что трафик между CloudFlare и вашим сайтом (на исходном сервере) не зашифрован, что по-прежнему оставляет место для атаки «человек посередине». Этот метод также не разрешен, когда вы используете формы для конфиденциальной информации, такой как данные кредитной карты или пароли. Чтобы было ясно: вы не можете использовать этот метод для сайтов электронной коммерции.
  2. CloudFlare использует общий SSL-сертификат, а это значит, что ваши посетители не смогут проверить, действительно ли вы закулисны. Даже при том, что большинство посетителей не будут проверять сертификат, это все же нужно помнить. Опять же, когда дело доходит до соответствия PCI для электронной коммерции (поддержание SSL-сертификата является одним из шагов), это не разрешается.

CloudFlare также предлагает «полную» и «полную (строгую)» защиту SSL. Последний также проверяет сертификат на исходном сервере, что по крайней мере смягчает первый пункт выше. Тем не менее, это все еще общий сертификат. За 5 долларов в месяц вы можете заказать специальный сертификат, но есть более дешевые способы сделать это; например, используя Let’s Encrypt, о чем пойдет речь позже в этом посте.

CloudFlare Flexible SSL — это простой способ обеспечить безопасность вашего сайта, но, как вы видели здесь, он дает немного ложного ощущения безопасности. Хотя это предотвратит любое наказание, которое может придумать Google, это не всегда будет лучший способ защитить ваш сайт и его посетителей. Но для базового информационного сайта это поможет.

Бесплатная проверка домена: давайте зашифруем

Let’s Encrypt — это некоммерческий центр сертификации, где вы можете получить бесплатный SSL-сертификат проверки домена. Это означает, что вам будет выдан сертификат для вашего собственного доменного имени вместо общего SSL. А из-за растущей поддержки многих крупных и средних хостинг-провайдеров шаги по его реализации и созданию более безопасного сайта WordPress становятся менее сложными.

В целях повышения безопасности сети Let’s Encrypt автоматизировал процесс выдачи сертификатов на уровне домена, который является самым низким уровнем защиты. Есть ручной маршрут, чтобы получить сертификат самостоятельно. Или вы можете попросить вашего хозяина помочь вам. Большинство хостинг-провайдеров готовы предоставить установку SSL-сертификата бесплатно или за символическую плату. Самый простой способ — найти хост, который предлагает поддержку Let’s Encrypt.

С сертификатами Let’s Encrypt вы должны помнить, что срок их действия истекает каждые 90 дней. В своей статье « Почему 90 дней» организация объясняет, что главная причина, по которой они это делают, заключается в том, что она ограничивает ущерб от ключевых компромиссов и ошибок при выпуске. Они также считают, что это поощряет автоматизацию, которую имеют многие поддерживаемые провайдеры.

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

Хосты WordPress, такие как WPEngine, Dreamhost и SiteGround, либо уже имеют эту автоматизацию, либо имеют инструкции по ее поддержке. Большинство достойных хостов не должны взимать плату за сертификат Let’s Encrypt или установку.

Работа со смешанным контентом

Однако есть одна оговорка, с которой вы также ознакомитесь с сертификатами EV, о которых пойдет речь далее в этом посте. В отличие от CloudFlare, вы должны убедиться, что все ресурсы загружены по HTTPS. Если нет, то вы увидите страшное смешанное уведомление. Это приводит к тому, что изображения и CSS-скрипты не загружаются, что означает, что ваш макет будет испорчен.

Самое важное, что нужно сделать, — это изменить адрес WordPress на версию HTTPS, так как это сразу изменит большинство файлов и изображений, которые будут загружаться через HTTPS, если вы используете относительные пути для их вызова.

Настройки HTTPS

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

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

  1. Измените URL-адреса в базе данных вручную с HTTP на HTTPS или на относительные URL-адреса.
  2. Используйте плагин для изменения ссылок, например, SSL Insecure Content Fixer .
  3. Пройдите все ваши изображения один за другим, чтобы сделать их пути относительными.
  4. Если вы используете CDN, убедитесь, что он был изменен на SSL, иначе вы все равно будете обслуживать небезопасные файлы.

Окончательное решение: расширенная проверка

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

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

Кроме того, добавленный эффект тщеславия этот сертификат имеет большое значение. Например, на мобильном Safari:

Safari Green Padlock

Итак, как вы получаете сертификат EV SSL? Ну, это, безусловно, требует больше усилий и документации, чем с CloudFlare и Let’s Encrypt, так как это не называется «расширенной проверкой» даром!

Следующие шаги участвуют:

  1. Заказ сертификата
  2. Документы: Это обычно включает в себя подписанное соглашение для запроса сертификата, идентификации запрашивающей стороны и для юридических гарантий.
  3. Проверка деловых документов: Оформление документов о бизнесе.
  4. Проверка за кулисами: CA проведет исследование, чтобы проверить информацию о вашем бизнесе и о вас.
  5. Проверка по телефону: как для заявителя сертификата, так и для делового контакта.

Мой опыт с расширенной проверкой

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

Шаг 1: Заказ сертификата

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

Шаг 2: Подписанные документы

Сначала мне нужно было подписать запрос на сертификат вручную, после чего последовало более обширное соглашение о подписке сертификата. Первая форма была использована для идентификации моей компании и меня, а также домена. Это также то место, где мне нужно было указать свое предполагаемое имя (Let’s Grind Some Coffee), которое будет использоваться вместо названия моей компании.

Затем было подписано 8-страничное соглашение с подписчиком, которое используется для покрытия всех правовых последствий, связанных с сертификатом. Обе формы используются на шаге 4, где мне нужно было проверить себя, приложение и свой бизнес по телефону.

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

Шаг 3: Проверка деловых документов

Поскольку мой бизнес был зарегистрирован в Нидерландах, команда проверки Comodo не имела доступа к местному реестру Торговой палаты. Я должен был выслать выписку из своей регистрации, которая была документом с цифровой подписью.

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

Шаг 4: Проверка за кулисами

Конечно, я не знаю всех действий, которые были выполнены в рамках их проверки. Однако следователи могут проверять профили в социальных сетях, такие как LinkedIn, использовать такие инструменты, как Google Maps, чтобы проверить физическое местонахождение вашей компании, или даже отправить кого-то по указанному адресу, чтобы проверить его.

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

Шаг 5: Проверка по телефону

Последний шаг состоял в том, чтобы они позвонили мне, чтобы проверить мой запрос, деловые данные и доменное имя, и фактически поговорили со мной. Звонок длился несколько минут, и мне пришлось ответить на несколько вопросов о проверке, например: « Вы Жако Бланкенспур? « Для какого доменного имени вы запрашиваете этот сертификат? «.

Агент подтвердил, что все было правильно, и что я получу свой сертификат в течение дня. Через несколько часов я получил письмо, содержащее как мой сертификат, так и логотип Comodo Trust для отображения на моем сайте.

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

Вывод

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

В конце концов, все сводится к следующему:

  • Сертификат CloudFlare — самый удобный процесс из всех. Это подойдет, но, учитывая все его недостатки, это не будет моим предпочтительным выбором.
  • Если вы ищете базовую безопасность, то подойдет бесплатный сертификат Let’s Encrypt, который не должен быть слишком сложным для запуска и запуска. Кроме того, это будет держать Google спиной о том, что ваш сайт небезопасен.
  • Если вам нужна максимальная безопасность и максимальное душевное спокойствие, вам нужен сертификат EV.

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