Тест SMTP сервера (E-mail сервера) по 10 показателям, тест на open-relay, SSL/TLS и прочее.
Более 10 тестов
Обратные записи
Тест на Open relay
Проверка шифрования
Диалоги SMTP
Рекомендации
Быстро и точно
API-интерфейс
Как проверить SMTP-сервер?
Почтовый сервер, smtp-сервер или мейл-сервер — в системе пересылки электронной почты так называют агента доставки/получения email-сообщений (англ. mail transfer agent, MTA). Это компьютерная программа, которая передаёт сообщения от одного компьютера к другому. Обычно почтовый сервер работает «за кулисами», а пользователи имеют дело с программой — клиентом электронной почты (англ. mail user agent, MUA).
Теперь по порядку, к первой категории ошибок связанных с доставкой писем можно отнести:
Все выше перечисленные ошибки не позволят нужным образом отправить письмо. Их решение может стать ключевым. Наш бесплатный инструмент онлайн диагностики smtp-сервера, поможет выявить большинство проблем. Проверка smtp-сервера по 10 показателям: тест на open-relay, наличие SSL/TLS, hostname, helo/ehlo, время транзакции и прочее. да, это бесплатно и без регистрации.
Как они себя проявляют, к примеру, ошибки с блокировкой 25 порта или большого таймаута не дадут отправить письмо вообще, даже установить соединение с сервером. А ошибки с rNDS, hostname, DNS спровоцируют полное и временное отклонение писем сервером получателя или помещением письма в папку спам.
Если письмо отклонено сервером получателя с кодами 500x и 400x, можно точно сказать, что стоит обратить внимание на rNDS, hostname и DNS, спам и тд. Обычно серверы получателей дают дополнительную информацию о причинах отклонения.
Для примера рассмотрим популярные ошибки, что они обозначают:
Да, информации очень много, работа почты на сервере состоит из многочисленных технических тонкостей. Продолжим по второй группе ошибок, напомню это безопасность и шифрование. Тут проще, каждый почтовый сервер должен разрешать отправку только авторизованным пользователям, т.е. не быть open-relay (открытый релей) и поддерживать безопасное соединение SSL/TLS. Open-relay (открытый релей) это крайне плохо и значит, что кто угодно и без вашего ведома может отправлять письма через Ваш smtp-сервер, как минимум ухудшение доставляемости, а максиму блокировка сервера хостером или почтовыми службами. Наш инструмент также делает тест на open-relay (открытый релей).
Мы постарались рассказать вкратце о частых ошибках на smtp-сервере, тем не менее многое не рассказали, т.к. часто серверы получателей возвращают совершенно непонятные ошибки или вовсе ведут себя не предсказуемо, все на усмотрение системного администратора обслуживающего почтовый сервер получателя. Проверить свой почтовый сервер (smtp-сервер) можно с помощью нашего бесплатного инструмента, просто введите адрес/хост сервера в поле в начале сайта.
Проверка Email на валидность и существование.
Данная форма позволяет проверить Email на формальную валидность и существование на почтовом сервере.
Как проверяется email адрес
Проверка синтаксиса
При запросе подтверждения адреса электронной почты в первую очередь будет выполннена проверка синтаксиса электронной почты, т.е. проверено его соответствие правилам регулярных выражений, таким как:
Доменная часть email должна соответствовать строгим правилам: она должна соответствовать требованиям к имени хоста, состоящему из букв, цифр, дефисов и точек. Кроме того, доменная часть может быть литералом IP-адреса, заключенным в квадратные скобки, хотя это крайне редко встречается.
Проверка доступности почтового сервера
Проверяется доступность MX-записи почтового сервера с помощью DNS-запроса.
Проверка самого ящика на сервере (проверить по SMTP)
Для этого сервис устанавливает соединение с почтовым сервером получателя и отправляет ему команды по аналогии с отправкой письма. Если на сервере нет такого получателя, то при отправке команды «письмо для такого-то мыла»(RCPT TO:) сервер отвечает что такого ящика нет(код 550). Не все сервера отвечают согласно требованиям RFC, например сервера mail.ru на любое письмо отвечает кодом 250, что всё Ok.
Если включена проверка по SMTP: списывается два запроса, адреса в результирующем файле будут упорядочены по smtp-серверам
С примером установления соединения и отправки команд можете ознакомиться здесь. Время проверки каждого е-mail может занимать до 60 секунд.
Некоторые почтовые сервера для защиты от спама используют технологию серых списков (Greylisting). При отправке письма сервер отвечает кодом 450 или 451, что он временно не готов принять письмо. В этом случае необходимо повторно проверить почтовый адрес более чем через 30 минут. При разовой проверке и проверке по API повторный запрос не отправляется. При пакетной обработке файла система будет ждать 30+ минут и повторно опрашивать почтовый сервер. Время обработки файла с почтовыми адресами в этом случе существенно возрастает. Дополнительная оплата при пакетной обработке за повторную проверку не взимается.
Почтовый сервер mail.ru (inbox.ru, bk.ru, list.ru) на любой адрес отвечает, что такой получатель есть и принимают для него полностью письмо. И только потом присылают FBL письмо, что такого адреса не существует. Вам нужно сделать почтовый ящик для таких писем прописать его в mail.ru и обрабатывать отписку для таких адресов.
Пример проверки Email на валидность
Данный пример при выходе из поля проверяет корректность заполнения поля е-mail.
Внимание! Использовать этот пример можно только из приватных сетей, т.к. он использует API_KEY на стороне клиента.
Исходный код этого примера:
Api проверки Email на валидность
format_valid = false
error = ‘Неверный символ в e-mail!’
mx_found = false
error = ‘Email сервер не существует!’
Если сервер защищен с помощью технологии серых списков, будет возвращено:
gray_listing=true
Для получения достоверного результата необходимо вызвать API повторно через час-полтора.
Если все проверки пройдены, возвращается:
message = ’email валидный’
Примеры API запросов проверки email
Пример запроса в формате json: https://htmlweb.ru/json/service/email?email=kdg@a12sd.ru
Пример запроса: https://htmlweb.ru/json/service/email?email=kdg@gmail.com
Пример запроса: https://htmlweb.ru/json/service/email?email=kdg22@htmlweb.ru&smtp_check
Команды SMTP сервера
SMTP (Simple Mail Transfer Protocol — простой протокол передачи почты) — это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP. ESMTP (англ. Extended SMTP) — масштабируемое расширение протокола SMTP. В настоящее время под «протоколом SMTP», как правило, подразумевают ESMTP и его расширения. SMTP использует порт Порты TCP 25.
Протокол SMTP (RFC 821) использует простые текстовые команды в формате ASCII и возвращает трехзначные кодированные ответы с текстовыми сообщениями.
Формат команд в SMTP прост: command [parameter], где command — четырехсимвольная команда протокола SMTP, а parameter — необязательный параметр, определяющий тип данных в команде.
Купить скрипт проверки email адресов
На написание этого скрипта ушло меньше часа времени, а на его отладку я потратил больше месяца. Неоднократно я получал бан от почтовых серверов и потом вытаскивал свой ip из бана. Если Вы не хотите пройти через все злоключения, Вы можете приобрести скрипт проверки почтовых адресов за 8000 рублей (
110$). Код скрипта реализован на PHP, полностью открытый и не использует никаких дополнительных библиотек. Скрипт НЕ будет работать на виртуальном хостинге с закрытым портом SMTP.
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»
Онлайн инструменты для проверки почтового сервера
Также данные сервисы будут полезны в том случае, если что-то работает не так: почта не доходит к некоторым адресатам, принимается, но не отправляется и т.д. и т.п. Но даже если все работает как надо не поленитесь выполнить диагностику, так как некоторые проблемы проще и дешевле устранить заранее, не дожидаясь пока они себя проявят. Например, если из-за ошибки в настройке вы получили открытый релей, то лучше исправить ее сразу, пока ваш сервер не попал во всевозможные спам-листы.
MX Toolbox
Одним из лучших сервисов по диагностике почты является MX Toolbox. Достаточно ввести имя вашего домена, все остальные проверки сервис выполнит самостоятельно. Первым делом будут определены MX-записи:
После чего можно будет выполнить поиск проблем:
В результате вы получите общий список ошибок и предупреждений, более подробно с результатами проверки можно ознакомиться выбрав соответствующий раздел. Так например настройка DNS не содержит ошибок, а настройка почтового сервера лишь два предупреждения:
В общем информации, предоставляемой сервисом, вполне достаточно, чтобы проверить все основные настройки и устранить все грубые ошибки, а также найти возможные проблемы с производительностью.
На этом возможности данного сервиса не заканчиваются, вам доступно большое количество инструментов, которые могут пригодиться не только для диагностики почты.
Microsoft Remote Connectivity Analyzer
Нас должен заинтересовать раздел Тесты для электронной почты в Интернете, который не только выполнит проверку настроек, но и попробует отправить тестовое письмо, сопроводив этот процесс подробным отчетом:
В нашем случае для домена указаны две MX-записи, одна из которых полностью рабочая, а вторая не прошла проверку.
Проверка исходящего потока почты позволит обнаружить возможные проблемы проведя эмуляцию реальной отправки с вашего сервера:
Мы настоятельно рекомендуем использовать этот инструмент при возникновении проблем с входящим / исходящим потоком почты, так как он позволяет быстро и наглядно выявить проблему. Также сервис позволяет выполнить аналогичные проверки для почтовых клиентов, подключающихся по протоколу POP3 или IMAP.
Анализатор заголовков на наш взгляд более удобен, чем у предыдущего сервиса, так как содержит большее количество технической информации.
В частности определяются и указываются имена участвующих в обработке почты служб, что позволяет гораздо быстрее определить узел вносящий наибольшие задержки. Действительно, MX Toolboox просто уведомил нас, что вторым шагом отдал почту на localhost и, только зная архитектуру Zimbra, мы можем сказать кому именно была отдана почта. Сервис от Microsoft гораздо подробнее, он сообщает что почта отдана сервису amavisd-new на порт 10026, это может сэкономить немало времени, особенно если почта проходит обработку на нескольких узлах.
В заключение хочется сказать, что несмотря на то, что оба описанных нами сервиса дают весьма подробную информацию об ошибках и методах их устранения, администратор должен иметь базовые познания в области архитектуры почтовых серверов и работы электронной почты как в общем, так и в частном, применительно к используемому им почтовому ПО. Потому как ни один сервис не способен заменить человека, особенно в таком вопросе как диагностика и устранение неисправностей.
Дополнительные материалы:
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:
Smtp проверка почтового адреса
Spam lists: 
проверка сервера на присутствие в антиспам базах
(параметром может имя сервера или IP адрес
[например: relay1.example.com])
Mail Relay: 
проверка на возможность использования почтового сервера в качестве пересыльщика почты (mail relay)
(параметром может быть IP адрес или имя почтового сервера
[например: mail.example.com])
Mail Valid: 
проверка email адреса на доступность для получения почты
(параметром может быть email адрес получателя
[например: test@example.com])
Mail Send: 
отправка тестового письма
(параметром является email, заданный при регистрации)
SPF Generator: 
Инструмент формирует SPF строку для DNS сервера.
Используется для предотвращения спам рассылок.
Mail service test:
Server:
Protocol: Port:
Domain:
проверка доступности почтовых сервисов
(параметром является имя или IP адрес почтового сервера, порт, тип сервиса и почтовый домен)
[например:
Server: relay1.example.com: SMTP : 25
Domain:example.com]
Mail Trace: 
проверка маршрутизации почты на основе служебного заголовка письма
(параметром является фрагмент заголовка письма)
Spam Lists
Mail Relay
Инструмент Mail Relay проверяет возможность использования почтового сервера в качестве open mail relay.
Mail Valid
Инструмент позволяет определить возможность использования указанного email адреса для получения почты.
Проверяется доступность почтового сервера получателя и возможность доставки электронных сообщений в указанный почтовый ящик.
Mail server test
Инструмент позволяет проверить возможность использования почтовых сервисов SMTP, POP3, IMAP, а так же SMTP SSL, POP3 SSL, IMAP SSL
Mail Send
Инструмент позволяет определить возможность отправки сообщения на почтовый адрес, указанный при регистрации.
Проверяется доступность почтового сервера получателя и возможность доставки электронных сообщений в указанный почтовый ящик.
SPF Generator
SPF(Sender Policy Framework) это TXT запись в DNS, которая используется для предотвращения несанкционированных рассылок электронной почты.
С помощью одной записи TXT можно указать все IP-адреса, используемые для отправки почты, и указать принимающему серверу, что разрешены только исходящие серверы, указанные в списке.
Инструмент использует удобный интерфейс и упрощает создание SPF записей.
Mail Trace
Используя техническую информацию заголовков писем, инструмент анализирует маршрут прохождения ссобшений.
Параметром является технический заголовок письма.
Например:
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»
Проверка связи по протоколу SMTP с помощью Telnet

Несмотря на кажущуюся сложность этого метода, он достаточно прост и необходимость ручного ввода SMTP-команд не должна вас пугать. Зато вы сможете получить всю необходимую для диагностики информацию прямо здесь и сейчас, не оглядываясь на возможности и ограничения сторонних сервисов.
Поставим себе некую задачу. Допустим мы хотим проверить доставку почты c некого ящика example@interface31.ru на ящик test@host31.ru, а также проверить работу сервера в некоторых иных ситуациях.
Прежде всего сразу следует выяснить какой узел в указанном домене отвечает за прием почты, это следует сделать даже если вы знаете точный адрес этого сервера, так как позволит выявить возможные ошибки при настройке DNS. Для этого мы будем использовать утилиту nslookup, в Windows она входит в штатный комплект поставки, а в Linux вам возможно потребуется установить пакет dnsutils.
Для получения записей MX-хостов узла (т.е. серверов, принимающих почту) выполним:
В качестве ответа вы должны получить имя одного или нескольких серверов.

Прежде всего запустим самого клиента:
в ответ мы увидим строку приглашения, куда введем строку соединения с сервером, обычно используется порт 25, но могут также быть 465 или 587:
В ответ мы должны получить сообщение с кодом 220, которое содержит имя узла, работающего с нами.
Обратите внимание, что оно отличается от адреса, к которому мы подключались. Это связано с тем, что почту могут обслуживать несколько серверов и при обращении к домену mx.yandex.net каждый раз будет выдаваться разный адрес, для распределения нагрузки между серверами. В этом несложно убедиться, выполнив еще раз команду nslookup, без аргументов она сообщит нам А-записи, которые соответствуют адресам серверов.

После того как мы подключились к серверу нужно отправить приветствие, которое будет содержать полное доменное имя клиента (либо адрес, если клиент не имеет доменного имени):
На приветствие сервер отвечает кодом 250 OK и сообщает поддерживаемые SMTP-расширения, это означает что сервер готов к получению почты.
Для начала почтовой сессии введите команду:
Она означает, что мы хотим передать сообщение от отправителя example@interface31.ru, на что сервер должен ответить нам кодом 250 2.1.0 ok.
Теперь укажем получателя:
Также мы можем попросить сервер отправить нам отчет о доставке или невозможности это сделать, для этого добавим в команду необязательные параметры:
Если все хорошо, то сервер должен ответить нам с кодом 250 2.1.5 recipient ok, после чего мы можем перейти к передаче письма.

В ответ мы получим сообщение с кодом 354, которое разрешит нам ввод письма, которое следует закончить точкой с новой строки.
В первую очередь следует указать тему:
После чего сервер выполнит попытку отправки нашего письма и сообщит нам результат.
В нашем случае письмо принято к доставке, о чем говорит код 250 2.0.0 Ok, также сервер сообщает нам присвоенный письму идентификатор. Его можно использовать при дальнейшем поиске сообщения в недрах самой почтовой системы. Обратите внимание, что этот код не говорит о том, что письмо успешно доставлено получателю, в дальнейшем оно может попасть под фильтры и оказаться в спаме, но это уже находится за рамками работы протокола SMTP, свою работу в данном случае он выполнил.
Для проверки мы отправили сообщение с подделанным отправителем и сразу же получили ошибку 451 4.7.1 Sorry, the service is currently unavailable. Please come back later.
Чтобы убедиться, что вы действительно имеете дело с серыми списками, а не временными неполадками на сервере, повторите отправку спустя полчаса, она должна увенчаться успехом.
Для окончания сессии с сервером введите команду
Как видим, работа с почтовым сервером по протоколу SMTP через Telnet не сложна, но в тоже время предоставляет широкие возможности по диагностике сервера и позволяет быстро найти и выявить причины возможных проблем с доставкой почты.
Дополнительные материалы:
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:





