Email Spam Tester

Email Spam Tester › Email Spam Tester для Plesk

Email Spam Tester для Plesk

Расширение для хостинг-провайдеров, использующих Plesk. Клиенты открывают его на вкладке Mail домена, отправляют тестовое письмо, которое действительно уходит с вашего сервера, получают результаты проверок, узнают, в какую папку оно попало у почтовых провайдеров, и могут исправить DKIM, SPF и DMARC с помощью кнопок.

Версия 0.1.0, 1 октября 2026 г. Скачать (75 КБ), SHA-256 5df918a10cd996799f5d144abcc101970fab31fbb7e2298be78362257c0aaa28. Пошаговая инструкция по установке находится в конце этой страницы. В архиве этот же текст содержится в файле INSTALL.md. Код и тот же архив в виде релиза также доступны на GitHub.

Для кого это предназначено

Для хостинг-провайдеров, чьи серверы работают под управлением Plesk Obsidian 18.0.50 или более новой версии на Linux. Вы устанавливаете расширение с правами root и один раз регистрируете сервер. После этого каждый клиент находит Email Spam Tester в разделе Websites & Domains › его домен › Mail, рядом с Mail Settings. Планы обслуживания определяют, кому доступны те или иные функции.

Веб-тестер не может проверить отправляющую сторону, он видит только дошедшее до него письмо. Расширение отправляет тестовое письмо с вашего сервера через Postfix, подписывает его DKIM-ключом домена и использует IP и HELO-имя сервера, поэтому отчет отражает фактическую конфигурацию клиента. А поскольку DNS-зона домена находится в Plesk, отсутствующую запись часто можно добавить одним нажатием.

Что видит клиент

Тест

В верхней части находится проверка, которая выполняется до отправки письма: проходит ли этот сервер проверку SPF домена, подписывает ли Plesk письма с помощью DKIM и соответствует ли ключ в DNS ключу, которым создается подпись, а также проверяются политика DMARC и MX. Для каждой проблемы есть кнопка Исправить или Показать запись, если DNS домена обслуживается в другом месте.

Ниже клиент выбирает почтовый ящик домена и способ отправки теста. Письмо можно отправить от имени этого ящика или так, как отправляет письма сайт, от имени собственного системного пользователя подписки. Именно так отправляют письма WordPress, контактные формы и уведомления магазина. Второй вариант выявляет распространенную проблему хостинга, когда письма из PHP отправляются с адресом отправителя, который не входит в SPF домена. Можно использовать стандартное тестовое письмо, короткое сообщение на английском языке в текстовом формате и HTML, или собственное письмо клиента с указанными темой, HTML и необязательной текстовой версией.

Параметр «Также проверить папку у почтовых провайдеров» включен по умолчанию. Затем сервер в фоновом режиме, в случайном порядке и с интервалом от двух до четырех секунд, отправляет по одной копии в каждый из наших тестовых почтовых ящиков в Gmail, Outlook, Yahoo и у других провайдеров. У каждой копии свой Message-ID, поэтому расширение может найти соответствующие строки в журнале Postfix. В течение следующих 30 минут таблица заполняется результатами: «Входящие», «Спам» или «Промоакции» для каждого провайдера. Если провайдер отклонил письмо, отображается его ответ с кодом SMTP. В Gmail используются общедоступные тестовые почтовые ящики, и любой пользователь с доступом к ним видит тему, имя отправителя и папку, поэтому конфиденциальное содержимое лучше тестировать без проверки папки.

Отчет содержит все проверки, оценку по шкале от 0 до 100 и по классической шкале от 0 до 10, план от ИИ и те же кнопки исправления. На этот раз используется IP, с которого, согласно отчету, фактически пришло письмо.

История

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

Мониторинг

Если разрешить мониторинг на сервере, клиент сможет включить его для домена. После этого для каждого отправленного доменом письма создается технический отчет с результатами DKIM, SPF и DMARC, IP отправителя и данными блок-листов. На вкладке показана сводка за последние 24 часа по источникам, поэтому письма из PHP сайта учитываются отдельно от писем из веб-интерфейса или почтового приложения. Далее отображаются предупреждения, например о сбое DKIM в последних письмах или сбое SPF для писем с сайта. Ниже находятся последние письма и их отчеты. Два подтверждения заказа, отправленные по одному шаблону магазина, считаются одной проверкой в течение часа, поэтому загруженный магазин не создает тысячу одинаковых отчетов. План от ИИ для отдельного письма доступен по запросу.

Что получает администратор

В разделе Tools & Settings › Mail › Email Spam Tester находятся регистрация и переключатель мониторинга для всего сервера. Там для каждой подписки задаются лимиты на тесты, проверки папок, планы AI и отслеживаемые домены, а для каждого отслеживаемого домена задается суточный лимит писем. В таблице перечислены собственные IP-адреса сервера, их обратные DNS-записи, соответствие имени HELO и наличие в блок-листах.

Расширение добавляет в тарифные планы четыре разрешения: на само расширение, кнопки исправления, проверку папок и мониторинг. Все четыре разрешения включены по умолчанию. Для кнопок DNS также требуется предусмотренное тарифным планом разрешение на управление DNS, а для переключателя DKIM требуется разрешение на управление настройками почты.

Цена

Пока бесплатно, как и сам тестер. Если это изменится, сначала об этом будет сказано в журнале изменений. Установленные вами лимиты действуют в рамках лимитов Email Spam Tester для каждого сервера (проверки папок, проверки доменов и отслеживаемые домены в день). На странице администратора показаны оба набора лимитов и использование за сегодня.

Как это работает и какие данные покидают ваш сервер

Расширение отправляет тестовое письмо с вашего сервера и само не принимает никаких решений. Результаты проверок, история, изменения, DNS-запись, которую нужно опубликовать, лента мониторинга, оповещения и лимиты определяются через Email Spam Tester API, тот же API, который использует сайт. В API передаются:

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

Вопросы хостинг-провайдеров

Изменяет ли расширение DNS самостоятельно?

Нет. Запись изменяется, только когда клиент нажимает «Исправить» и подтверждает ее текущее и новое содержимое, а DNS домена действительно обслуживается вашим сервером. В записи SPF сохраняются все существующие условия. IP сервера добавляется первым и не требует дополнительного DNS-запроса. Существующая политика DMARC никогда не заменяется. Каждое изменение заносится в журнал действий Plesk. Его можно отменить на вкладке «Тест», если после этого никто не редактировал запись. Публичные резолверы запоминают отсутствие записи на время, указанное в минимальном значении SOA зоны. В стандартном шаблоне Plesk это три часа, поэтому тест сразу после исправления может по-прежнему показывать прежний результат.

Как мониторинг копирует почту?

Обработчик почты Plesk запускается после того, как Plesk подписывает письмо с помощью DKIM. Он передает каждое сообщение дальше без изменений, а для домена с включенным мониторингом отправляет копию слушателю Postfix на 127.0.0.1, который принимает только наши адреса мониторинга. Затем Postfix доставляет копию как обычное письмо, с того же IP и с той же подписью. Принадлежность письма определяется по учетной записи SMTP или системному пользователю подписки, но никогда только по адресу отправителя. Поэтому никто не может отправить свою почту в ленту другого клиента. Обработчик устанавливается в /usr/local/lib/email-spam-tester, а список доменов сохраняется в /etc/email-spam-tester/monitor.json.

Замедляет ли это исходящую почту?

Обработчик считывает сообщение и передает его дальше. Копия отправляется локальному слушателю отдельным процессом, поэтому исходное сообщение не ждет ее доставки. Я отправил вложение размером 5 МБ через sendmail и SMTP при включенном мониторинге. И исходное письмо, и его копия были доставлены в обоих случаях.

Что было проверено на реальном сервере?

Plesk Obsidian 18.0.81 на Ubuntu 24.04, на сервере с публичным IP и доменом, DNS которого обслуживается этим сервером: установка, удаление и повторная установка, регистрация, тест с проверкой папки для домена без DKIM, SPF и DMARC, три кнопки исправления, повторный тест с успешной проверкой всех трех записей, история и мониторинг писем с сайта и из почтового приложения. Веб-страницы тестировались в локальной установке Plesk. Пока не проверялись другие дистрибутивы Linux и версии Plesk, серверы, пересылающие почту через smarthost, а также qmail вместо Postfix. Plesk для Windows не поддерживается. Напишите мне, если используете расширение в одном из этих вариантов.

Установка, шаг за шагом

В этом руководстве предполагается, что у вас есть root-доступ к серверу Plesk. Каждую приведенную ниже команду можно скопировать и вставить без изменений.

1. Что вам понадобится

Оба подключения можно проверить перед установкой. Первая команда должна вывести строку, начинающуюся с 220, а вторая должна вывести 200:

timeout 10 bash -c 'exec 3<>/dev/tcp/t.email-spam-tester.com/25 && head -1 <&3'
curl -s -o /dev/null -w '%{http_code}\n' https://email-spam-tester.com/health

2. Установка

Войдите по SSH как root. Скачайте расширение и его контрольную сумму:

cd /root
curl -fsSLO https://email-spam-tester.com/plesk/latest.zip
curl -fsSLO https://email-spam-tester.com/plesk/latest.zip.sha256

Проверьте целостность скачанного файла. Вы должны увидеть latest.zip: OK. Если вы видите FAILED, скачайте файл еще раз и не продолжайте установку:

sha256sum -c latest.zip.sha256

Установите расширение:

plesk bin extension --install /root/latest.zip

Последняя строка должна быть такой: The extension was successfully installed.

3. Регистрация сервера

В Plesk перейдите в Tools & Settings › Mail › Email Spam Tester и нажмите Зарегистрировать этот сервер. При желании можно указать адрес электронной почты для уведомлений о сервисе.

При регистрации отправляются имя хоста сервера, версии Plesk и расширения, количество подписок и указанный адрес электронной почты. В ответ приходит ключ, который хранится на этом сервере в зашифрованном виде в настройках расширения. Клиенты его не видят.

Клиенты найдут Email Spam Tester в разделе Websites & Domains › a domain › Mail. Пока сервер не зарегистрирован, расширение лишь предложит им обратиться к вам.

4. Выбор доступных функций

В разделе Service Plans › a plan › Permissions (а также в собственных разрешениях каждой подписки) расширение добавляет четыре разрешения. По умолчанию все они включены:

Лимиты для каждой подписки (тесты, проверки папок, тарифы AI, отслеживаемые домены, количество отслеживаемых писем для каждого домена в день) находятся на той же странице Tools & Settings › Mail › Email Spam Tester.

5. Постоянный мониторинг (необязательно)

Ничего не копируется, пока вы не разрешите эту функцию и клиент не включит ее для своего домена. На странице расширения в разделе Tools & Settings нажмите Разрешить постоянный мониторинг на этом сервере. После этого будут добавлены:

На этой же странице есть кнопка Отключить на всем сервере, которая удаляет все три компонента и отключает мониторинг для всех доменов.

Чтобы проверить состояние из командной строки:

/usr/local/psa/admin/sbin/modules/email-spam-tester/est-monitor status

"state": "active" означает, что мониторинг включен; "off" означает, что он никогда не был разрешен или был удален; "partial" означает, что один из компонентов отсутствует (Plesk иногда перезаписывает файл master.cf Postfix при обновлении). Кнопка Восстановить на той же странице вернет отсутствующий компонент. Ежедневная задача также делает это автоматически.

6. Обновление

Скачайте новый файл latest.zip и его контрольную сумму, как на шаге 2, проверьте их, затем выполните:

plesk bin extension --upgrade /root/latest.zip

Регистрация, лимиты и настройки мониторинга останутся без изменений. Если мониторинг включен, его файлы будут обновлены до новой версии.

7. Удаление

plesk bin extension --uninstall email-spam-tester

Эта команда удаляет мониторинг из Postfix и обработчиков почты Plesk, а также отключает его для всех отслеживаемых доменов. Она не изменяет записи DNS, включая записи, созданные клиентами с помощью кнопок расширения.

Если мониторинг был включен, лучше сначала удалить его отдельно. Тогда возможная ошибка будет видна сразу, а не только в журнале Plesk:

/usr/local/psa/admin/sbin/modules/email-spam-tester/est-monitor disable

В конце команда выводит состояние. "state": "off" означает, что обработчик, слушатель и список удалены.

8. Если что-то не работает