Почему я должен беспокоиться о защите своих электронных писем WordPress?
Опубликовано: 2023-05-31Электронные письма повсюду. Они стали одним из самых распространенных способов общения людей через Интернет. Администраторы WordPress и владельцы веб-сайтов используют электронную почту для различных целей, таких как личное и профессиональное общение, маркетинг, подбор персонала и многое другое.
Электронные письма также могут содержать конфиденциальную информацию, которую вы используете для аутентификации своих пользователей или позволяете им выполнять определенные действия, такие как сброс пароля и т. д. В этом руководстве мы обсудим все, что владельцам веб-сайтов необходимо знать о безопасности электронной почты в WordPress.
Давайте начнем обсуждение с необходимости защиты электронной почты вашего веб-сайта WordPress. Обеспечение безопасности вашей электронной почты помогает во многих случаях, таких как:
- Защита конфиденциальной информации. Как упоминалось ранее, вы часто будете отправлять электронные письма, которые могут содержать конфиденциальную информацию. Это может включать в себя такие вещи, как учетные данные ваших пользователей и личную информацию, связанную с их здоровьем или финансами. В любом случае нужно убедиться, что никто со злым умыслом не сможет перехватить эту информацию.
- Доставка электронных писем. Спам — большая проблема в Интернете. Мы уверены, что вы также получили свою долю спам-писем. В лучшем случае они раздражают, а в других случаях могут привести к более серьезным последствиям. Один из способов, которым почтовые серверы борются с потенциальным спамом, — это не отправлять электронные письма, которые вообще не соответствуют стандартам. Точно так же электронные письма, которые могут считаться спамом разными почтовыми клиентами, будут помечены как таковые и помещены в отдельную папку вдали от основного почтового ящика.
- Поддержание репутации бренда. Репутация вашего бренда может оказаться под угрозой, если вы не будете серьезно относиться к безопасности электронной почты WordPress. Подумайте об этом, как бы вы отнеслись к бренду, электронные письма которого постоянно застревают в спам-фильтре, или к бренду, отсутствие безопасности которого приводит к утечке вашей личной информации?
- Предотвращение атак по электронной почте. Люди со злым умыслом могут использовать фишинг по электронной почте, чтобы получить доступ к вашему веб-сайту или получить доступ к пользовательским данным. Это может создать всевозможные проблемы с безопасностью. В любом случае вам необходимо принять соответствующие меры для защиты электронной почты WordPress.
Отправка защищенных писем в WordPress
WordPress имеет встроенную функцию wp_mail(), которая используется для отправки электронных писем. Эта функция использует популярную бесплатную библиотеку PHPMailer с открытым исходным кодом для отправки всех ваших электронных писем.
Одним из преимуществ использования библиотеки является то, что она имеет встроенный SMTP-клиент, который позволяет отправлять электронные письма на всех платформах без необходимости использования локального почтового сервера.
Термин SMTP означает простой протокол передачи почты. SMTP-клиент — это программа, которую мы можем использовать для отправки электронной почты с одного сервера на другой. Клиент выполняет множество важных действий, таких как установление соединения с почтовым сервером, проверка подлинности отправителя и передача электронной почты.
Использование функции wp_mail() не является автоматической гарантией успешного получения вашей электронной почты. Он вернет true, как только запрос будет успешным, независимо от статуса доставки электронной почты. Таким образом, вы будете уверены, что отправленные вами электронные письма будут доставлены.
Вы можете добавить свои настройки, связанные с SMTP, в файл wp-config.php, добавив несколько строк PHP в существующий исходный код. Однако гораздо проще использовать плагин.
Вы можете использовать один из множества бесплатных SMTP-плагинов WordPress, который поможет вам настроить все параметры для эффективной и безопасной отправки электронных писем. В прошлом мы уже подробно рассказывали о доставляемости электронной почты WordPress.
Настройка SMTP-плагина
Стоит отметить, что существует несколько плагинов SMTP, которые вы можете использовать на своем веб-сайте. Вы можете попробовать их, чтобы увидеть, какой из них подходит вам лучше всего. Одним из самых популярных является плагин WP Mail SMTP.
Любой плагин, который вы используете, попросит вас выбрать почтовую программу SMTP для вашего сайта. Доступно несколько вариантов, таких как SendLayer, Postmark, SendGrid, Zoho Mail и т. д. Мастер настройки поможет вам с первоначальной настройкой, где вы предоставляете всю необходимую информацию, такую как ключ API и т. д. Все эти настройки для разных плагины будут доступны в панели управления WordPress.
Есть две важные вещи, которые вы должны иметь в виду при настройке этих плагинов:
- Убедитесь, что вы отправляете электронные письма через SSL с вашим SMTP-клиентом. Это поможет предотвратить перехват электронных писем во время их передачи. многие службы, такие как SendLayer и т. д., автоматически обработают для вас шифрование SSL/TLS. Однако вы также можете вручную предоставить информацию о хосте SMTP, номере порта, шифровании и т. д., если вы выберете Другой SMTP в качестве почтовой программы SMTP.
- Вы также можете отключить ведение журнала электронной почты, если вы отправляете конфиденциальную информацию по электронной почте. Это предотвратит любые нежелательные утечки данных, если что-то пойдет не так. Это нормально, если эта опция включена во время тестирования, но в идеале она должна быть отключена в других случаях.
Общие рамки безопасности электронной почты
Установка и использование SSL-сертификатов для отправки электронных писем гарантирует безопасность содержимого электронной почты при передаче между почтовым клиентом и почтовым сервером. Это становится возможным благодаря предотвращению любого несанкционированного доступа или перехвата электронной почты во время передачи.
Следующим шагом в улучшении безопасности электронной почты WordPress является использование шифрования, чтобы только предполагаемый получатель мог прочитать содержимое отправленного ему электронного письма.
Существует множество различных сред безопасности электронной почты, которые вы можете использовать для защиты электронной почты на своем сайте WordPress. Термин «инфраструктура безопасности электронной почты» относится к набору руководящих принципов и стандартов, которые обеспечивают защиту всей вашей электронной почты от угроз безопасности, таких как спам, фишинг и несанкционированный доступ.
Различные SMTP-серверы могут использовать комбинацию нескольких платформ безопасности электронной почты для достижения своей цели защиты электронной почты. Давайте узнаем о некоторых из них.
Структура политики отправителя
Sender Policy Framework, также известная как SPF, представляет собой структуру проверки подлинности электронной почты, которая позволяет почтовому серверу получателя проверять, пришло ли электронное письмо из законного источника.
Короче говоря, SPF работает, проверяя запись DNS (система доменных имен) домена отправителя, чтобы убедиться, что IP-адрес отправителя соответствует авторизованным IP-адресам для этого домена.
После отправки электронного письма почтовый сервер на стороне получателя проверит записи SPF, чтобы выяснить, действительно ли электронное письмо было отправлено с авторизованного почтового сервера на стороне отправителя. Запись SPF будет содержать информацию обо всех IP-адресах и доменах, которые могут отправлять электронные письма от имени определенного домена. Любое несоответствие приведет к тому, что письмо будет помечено как подозрительное.
SPF помогает бороться со спамом и фишинговыми атаками, когда кто-то выдает себя за того, кем он не является.
Идентифицированная почта DomainKeys
Платформа DomainKeys Identified Mail (DKIM) полагается на использование цифровых подписей для проверки того, что отправитель электронной почты является кем-то законным. Это также гарантирует, что содержимое электронной почты не будет изменено при передаче электронной почты.
Цифровая подпись — это не что иное, как криптографическое значение, созданное с использованием закрытого ключа, связанного с законным доменным именем. Сообщение электронной почты содержит криптографическое значение в виде поля DKIM-Signature в заголовке.
Почтовый сервер на стороне получателя может получить доступ к открытому ключу домена отправителя из записей DNS. Система электронной почты использует открытый ключ для расшифровки подписи, чтобы проверить подлинность отправителя. Система доставляет электронное письмо в почтовый ящик получателя после проверки подлинности отправителя.
Секрет здесь в том, что закрытый ключ используется для создания криптографической подписи, и эта подпись может быть расшифрована только соответствующим открытым ключом. Это означает, что совпадающее значение в сгенерированных хэш-значениях с закрытым и открытым ключами гарантирует подлинность электронной почты.
Аутентификация сообщений на основе домена, отчетность и соответствие
Предыдущие две платформы позволяют вам проверить, что отправитель электронной почты является кем-то, за кого он себя выдает. Это помогает предотвратить спам и фишинговые атаки.
Что делать, если письмо не проходит проверку SPF или DKIM?
Вам может быть интересно, как законное электронное письмо может не пройти проверку SPF или DKIM. Это может произойти в различных ситуациях, таких как неправильно настроенные записи SPF или DKIM, неверная временная метка из-за более длительного, чем обычно, времени передачи и переадресация электронной почты, когда сервер пересылки не авторизован для отправки электронной почты от имени домена исходного отправителя.
В этом случае на помощь приходит инфраструктура доменной аутентификации, отчетности и соответствия сообщений (DMARC).
Владельцы доменов могут добавить политику DMARC в свои записи DNS, чтобы указать, что должно происходить с любыми сообщениями электронной почты, которые не проходят проверку аутентификации SPF или DKIM.
Если электронное письмо не проходит эти проверки, почтовый сервер получателя будет искать политику DMARC домена отправителя. Политика DMARC определяет, должно ли электронное письмо быть отклонено, помещено в карантин или доставлено в почтовый ящик получателя.
Помимо проверки легитимности отправителя, DMARC включает в себя механизмы, позволяющие сообщать владельцам доменов всю информацию об электронных письмах, отправленных с их домена. Доступ к этой информации может помочь владельцам доменов выявить потенциальные атаки спуфинга или фишинга электронной почты. В конечном итоге это приводит к повышению безопасности электронной почты.
Довольно хорошая конфиденциальность
Pretty Good Privacy, или PGP, — это еще одна интересная система безопасности электронной почты, которая обеспечивает сквозное шифрование ваших электронных писем, гарантируя, что только предполагаемый получатель сможет прочитать ваши электронные письма.
Протокол безопасности PGP опирается на пару открытого и закрытого ключей для своей криптографической системы. Все пользователи протокола PGP будут иметь свои собственные открытые и закрытые ключи. PGP использует открытый ключ для шифрования сообщений электронной почты и закрытый ключ для их расшифровки. Все, кто хочет общаться с пользователем, имеют доступ к открытому ключу. Закрытый ключ остается у пользователя.
Допустим, вы хотите отправить электронное письмо кому-то. Как отправитель, вы будете использовать открытый ключ, предоставленный получателем, для шифрования вашего сообщения. Это гарантирует, что только получатель сможет расшифровать сообщение, потому что только у него будет закрытый ключ.
PGP также использует цифровые подписи для проверки подлинности и целостности электронной почты, а также для обеспечения отсутствия фальсификации во время передачи.
Закрытый ключ оказывается полезным для создания цифровой подписи, которая проверяет подлинность отправителя. Закрытый ключ используется для создания хэша сообщения электронной почты. Поскольку PGP работает по принципу совместного использования открытых ключей, получатель электронной почты будет иметь доступ к открытому ключу отправителя. Этот открытый ключ полезен для расшифровки хэша, который подтверждает, что сообщение не изменилось.
Еще одним важным аспектом PGP является система «сети доверия», в которой разные пользователи могут подписывать открытые ключи друг друга, чтобы показать, что они подтвердили владельца ключа. Это делает еще более трудным для кого-то со злым умыслом выдать себя за пользователя.
Реализация безопасности электронной почты на вашем сайте WordPress
Теперь мы узнаем, как реализовать различные системы безопасности электронной почты на вашем веб-сайте.
Структура политики отправителя
Как упоминалось в предыдущем разделе, SPF работает, проверяя запись DNS домена отправителя. Он проверяет, соответствует ли IP-адрес отправителя авторизованным IP-адресам для этого домена.
Мы можем проверить это на примере wpwhitesecurity.com. Все, что нам нужно сделать, это использовать команду nslookup следующим образом:
nslookup -type=txt имя домена
Результат говорит нам, какие системы мы используем для отправки электронных писем.
v=spf1 a mx include:_spf.google.com include:relay.kinstamailservice.com include:servers.mcsv.net include:helpscoutemail.com include:sendgrid.net ~all
Если электронное письмо, которое вы получаете от нас, не от какой-либо из этих систем, вероятно, оно не является законным.
Все, что нам нужно сделать для реализации SPF, — это добавить запись TXT в файл зоны DNS домена. Запись TXT может содержать произвольный текст, который вы хотите связать с доменным именем. В этом случае он будет содержать информацию SPF.
Первый шаг — войти в любой сервис, который вы используете для управления своими записями DNS. В этом случае мы будем использовать Cloudflare. Поэтому сначала входим в учетную запись Cloudflare и выбираем домен, DNS-записи которого будут редактироваться.
Вы должны увидеть возможность изменить настройки DNS либо на левой боковой панели, либо в разделе «Быстрые действия», если вы используете Cloudflare. Нажмите на нее, чтобы добавить запись DNS. На следующей странице будет кнопка «Добавить запись» . Нажмите на нее, и вы увидите следующий экран.
Выберите TXT в раскрывающемся списке «Тип». Установите имя в корень вашего домена. Оставьте для TTL значение Auto и установите значение Content равным v=spf1 mx a ip4:XXX.XXX.XXX.XXX -all. Используйте скриншот ниже для справки.
Запись DNS состоит из разных частей. Давайте посмотрим, что они означают по одному:
- v=spf1 — Эта часть указывает версию используемого протокола SPF. В этом случае версия SPF равна 1.
- mx — эта часть разрешает записям MX домена отправлять электронные письма от имени домена.
- a — Эта часть разрешает записям A домена или его адресам ipv4 отправлять электронные письма от имени домена.
- ip4:XXX.XXX.XXX.XXX — вы можете добавить эту часть, чтобы добавить определенный IP-адрес в белый список для отправки электронных писем.
- -all — эта часть указывает, что должно происходить с электронными письмами, которые не соответствуют ни одному из авторизованных доменов или IP-адресов.
Убедитесь, что вы заменили XXX.XXX.XXX.XXX IP-адресом, который хотите внести в белый список. Вам не нужно добавлять эту часть, если вы планируете отправлять адреса электронной почты только из своего домена. Однако вы должны указать здесь IP-адреса ваших почтовых серверов, чтобы предотвратить спуфинг.
Почта, идентифицированная DomainKey
Платформа DKIM также использует значения, хранящиеся в записях DNS, для проверки подлинности отправителя электронной почты.
Основное отличие заключается в том, что в то время как SPF полагается на проверку IP-адресов в записях DNS, чтобы убедиться, что кто-то из авторизованных пользователей отправил электронное письмо, DKIM полагается на использование открытых и закрытых ключей.
Если вы используете Cloudflare для управления своим доменом, вы можете добавить запись DNS, как мы сделали в предыдущем разделе. Однако вы также можете обновить записи DNS из панели управления вашего хостинг-провайдера.
Вот скриншот текущей записи DKIM TXT в cPanel учетной записи хостинга. Вы можете найти эти параметры после входа в свою учетную запись cPanel и проверки возможности доставки электронной почты.
Для имени записи DKIM задано значение default._domainkey, чтобы ее могли легко найти различные поставщики услуг электронной почты.
Содержимое записи DKIM состоит из нескольких частей, как описано ниже:
- v=DKIM1 — Эта часть указывает версию используемого протокола DKIM.
- k=rsa — эта часть указывает, что открытый ключ, который мы используем, является ключом RSA.
- p=KEY_VALUE — Эта часть представляет собой открытый ключ в кодировке Base64.
Аутентификация сообщений на основе домена, отчетность и соответствие
Теперь мы узнаем, как добавить политику DMARC в нашу запись DNS TXT. Процесс добавления записи DNS здесь останется прежним. Меняется только название записи и ее содержимое.
Имя нашей TXT-записи DNS будет _dmarc.yourwebsite.com, где yourwebsite.com — ваш фактический веб-сайт. Опять же, это просто стандартное соглашение для легкой идентификации политики DMARC.
Вы можете добавить в общей сложности 11 пар тег-значение в качестве содержимого TXT-записи DNS политики DMARC. Вы можете прочитать о них на этой странице, которая подробно описывает запись DMARC DNS TXT.
Давайте воспользуемся новым мастером в Cloudflare, чтобы добавить политику DMARC.
После того, как вы нажмете на ссылку мастера, вы увидите следующий экран. Просто нажмите кнопку «Добавить», и все готово.
Теперь мы узнаем, что означает содержимое внутри записи DMARC:
- v=DMARC1 — Как обычно, указывает версию используемого протокола DMARC.
- p=none — эта часть указывает, что никакие действия политики не выполняются для неудачных проверок. Вы также можете установить это значение на карантин или отклонение. Установка значения для карантина пометит электронное письмо как потенциально подозрительное, но по-прежнему будет доставлять его в папку со спамом почтового ящика получателя.
- rua=mailto:[email protected] — в этой части указывается адрес электронной почты, на который приходят отчеты. Отчеты будут содержать информацию о сообщениях электронной почты, которые прошли или не прошли проверку DMRC.
Защита электронной почты для большей безопасности
Как гласит старая пословица, цепь настолько прочна, насколько прочно ее самое слабое звено. Это очень верно, когда речь идет о безопасности, которая требует, чтобы администраторы WordPress и владельцы веб-сайтов не ограничивались защитой WordPress и обращались к поддерживающей/окружающей инфраструктуре.
О безопасности электронной почты часто забывают; однако, как мы только что видели в статье, защита электронной почты относительно проста и очень доступна. От настройки записей DNS до шифрования электронной почты, это не только обеспечит лучший охват клиентов и пользователей, но и значительно снизит риски безопасности.
Дополнительные советы по повышению безопасности WordPress
Обеспечение безопасности вашей электронной почты — это лишь часть общей безопасности веб-сайта. Вот несколько общих советов по улучшению всесторонней безопасности вашего веб-сайта.
- Регулярно обновляйте — важно обновлять все ваши темы или плагины WordPress. Обновления обычно добавляют новые функции, а также исправляют известные уязвимости.
- Используйте надежные пароли. Вы должны использовать надежные и уникальные пароли для всех учетных записей, связанных с вашим веб-сайтом, включая веб-хост, базу данных, учетные записи FTP, учетные записи администратора WordPress и т. д. Это предотвратит взлом вашего пароля атаками грубой силы. Вы можете использовать плагин MelaPress Login Security, чтобы следовать всем передовым методам безопасности входа, таким как надежные пароли, блокировка слишком большого количества неудачных попыток входа и т. д.
- Установите плагины безопасности. Вам также следует подумать об установке плагина безопасности. Некоторые из самых популярных опций — Wordfence, iThemes Security, All-In-One Security и т. д. Вы также можете установить плагины, такие как WP Activity Log, чтобы регистрировать все изменения, происходящие на вашем веб-сайте WordPress.
- Используйте двухфакторную аутентификацию. Вы можете использовать двухфакторную аутентификацию, чтобы добавить дополнительный уровень безопасности. Бесплатные плагины, такие как WP 2FA, помогут вам сделать это с легкостью.
- Делайте регулярные резервные копии. Вы также должны регулярно делать резервные копии своего сайта. Это поможет вам быстро вывести свой веб-сайт в сеть в случае нарушения безопасности или других проблем.
- Используйте надежный веб-хостинг. Убедитесь, что вы используете известный и надежный веб-хостинг для размещения своего веб-сайта. Веб-хост будет отвечать за несколько вещей, таких как обеспечение безопасности веб-сервера, его обновление, создание резервных копий в бэкэнде и т. д.
- Используйте брандмауэр. Установка брандмауэра предотвратит несанкционированный доступ, а также защитит от распространенных угроз безопасности и DDOS-атак. Вы можете установить брандмауэр на уровне сервера с помощью вашего веб-хостинга или на уровне веб-сайта с помощью плагина WordPress. Хорошей новостью является то, что такие плагины, как Wordfence и т. д., уже предлагают брандмауэр и защитят вас от вредоносных программ.
- Ограничьте количество попыток входа в систему. Еще одна мера безопасности, которую вы можете предпринять, — это ограничение количества неудачных попыток входа в систему, чтобы предотвратить атаки методом перебора со стороны ботов.