Не удалось разрешить сервер smtp уточните настройки серверовsmtp и dns
Да.Читайте несколько раз, и каша уйдет.
Ну, сделаете вы mail. А где будет тогда
The fully qualified Internet domain name of the server
Подсказка- он у Вас EX.lime.local
Откройте свойства коннектора Client Frontend EX01, где Вы хотите по 587 принимать клиентов, так?
Поскольку в SAN такое имя есть уже, то перевыписывать не надо сертификат. Проверьте работу подключения.
Ссылка была дана выше.
Не помогает- что конкретно не работает?
Удалил сертификаты в итоге, которые были с таким-же именем, но с другими отпечатками. Старые, их похоже создавали в порыве гнева )
mmc - (Add) Certificates - Local Computers - Personal - Certificates - тут проверьте ваши сертификаты. И проверьте ваше отпечатки - вполне могут быть серты с одинаковыми именами, но разными (не нужными вам) отпечатками.
И всё заработало.
Спасибо за помощь!
Почтовый клиент
Для непосредственной работы с почтой необходимо добавить ящик в какой-либо почтовый клиент.
Настройки, которые при этом необходимо указать, доступны в разделе Почта — выбрать ящик — Управление ящиком — Настройки для почтовых клиентов.
В открывшемся окне вы найдете данные, которые потребуются для настройки почтового клиента, а также сможете скачать готовые файлы с настройками для Thunderbird и Outlook.
Виды почтовых сервисов
На программном уровне существует несколько видов обработки электронной почтовой корреспонденции. К первой группе относятся виртуальные сервисы, доступные чаще всего в бесплатном исполнении через интернет-соединение на сайте почтового сервера. Это всем известные ресурсы:
Ко второй группе относятся почтовые клиенты – программы, обладающие более расширенным функционалом, чем виртуальные сервисы. Наиболее популярными и универсальными почтовыми клиентами для Windows являются:
- Opera Mail;
- Mozilla Thunderbird;
- Koma-Mail;
- SeaMonkey;
- The Bat!;
- Microsoft Outlook.
О вариантах выбора и способах создания корпоративных почтовых сервисов более подробно можно прочитать здесь: Что такое почтовый сервер и зачем он нужен.
Сертификат почтового сервера недействителен
Установка службы SMTP на Windows Server 2016/2012 R2
SMTP сервер – это один из компонентов Windows Server, который можно установить через Server Manager. Для этого откройте консоль Server Manager Dashboard (servermanager.exe), перейдите в режим Add roles and features и на этапе выбора функций отметьте чекбокс у пункта SMTP Server. Для управления службой SMTP нужно установить консоли управления, которые входят в комплект роли Web Server IIS (вам будет предложено установить IIS Management Tools).
Оставьте все предлагаемые опции роли Web Server (IIS) и запустите установку.
Также вы можете установить компонент SMTP сервера с помощью одной команды PowerShell:
После окончания установки компонентов может потребоваться перезагрузка системы.
Все ответы
Repeat that for every server and connector that will be handling the authenticated SMTP connections, i.e. if you're using a load balanced SMTP namespace
Это выполняется для прошедших проверку отправителей.
все внешние клиенты SMTP и PHPMailer входят в их число? Вы их после этого перенастроили на использование 587?
Да, все стояли и стоят на 587 порт
Если честно, то не очень понял эту фразу, как я должен их перенастроить
А они Вашему внешнему сертификату доверяют? Корневику и тп. Должно все запеть если все сделали так как написано.
А они Вашему внешнему сертификату доверяют? Корневику и тп. Должно все запеть если все сделали так как написано.
Как это понять бы. Сертификат вроде нормальный, проходит все проверки.
Поставил именно вот этот, который " 076A039B67F"
но там понятно, что веб проверяется, но всё же.
Сейчас вот что выдаёт например сандербёрд
Так, всё верно. я его и поставил последний раз. Сейчас сменю на нормальный
Кстати, все клиенты отвалились всё равно, даже если поставить EX-01 серт. Все ругаются, что не могут аутентифицироваться
Самоподписанный ЕХ1 разумеется, будет выдавать предупреждение, пока его не будет явно в доверенных.
Вывод- запросите сертификат с FQDN сервера, назначьте его на транспорт. Можете для тестирования бесплатный взять от startssl.
Может я что упустил при настройке и где-то ещё не прописал это имя?
Кстати, может это связано, но оутлук при подключении внутри домена подключается на EX-01 и ругается на сертификат
При подключении снаружи всё нормально, единственное, что нужно указать пользователя с dns суффиксом .local, ну так сложилось.
Кстати, может это связано, но оутлук при подключении внутри домена подключается на EX-01 и ругается на сертификат
Относительно что делать и куда бежать- крайне рекомендую ознакомиться с теорией по вопросу. За выходные вполне можно уложить все в голову.
Так, давайте сначала разберёмся с сертификатом в домене.
Я изменил Виртуальные каталоги, но теперь Outlook не может аутентифицировать пользователей.
"приложению outlook не удается войти в систему убедитесь в наличии подключения к сети и правильности имен сервера"
Вполне допускаю, что ошибка с SCP.
Сейчас настройки стоят вот такие
Вернул все виртуальные каталоги обратно. Перезагрузил сервер, теперь оутлук выдаёт ошибку сертификата как раньше, но всё равно не авторизует. Абсурд прям какой-то. Что я мог сломать? Менял только виртуальные каталоги
Так, давайте сначала разберёмся с сертификатом в домене.
Я изменил Виртуальные каталоги, но теперь Outlook не может аутентифицировать пользователей.
Аутлук цепляется за имя в Outlook anywhere.
Понятно, что грабли от домена, но это очень большая история и очень трудозатратное дело изменить теперь домен.
Не менее трудозатратное, чем жить с ним и наступать раз за разом на такое. При кажущейся простоте и отсутствии вменяемого опыта и получается вот такие локалы. Но надо надеяться на лучшее, конечно.
Часть с ошибкой сертификата оутлука решили.
Всё-таки остались вопросы с сертификатом на SMTP. Пока никак не пойму как ему дать правильный сертификат.
Итак.
Часть с ошибкой сертификата оутлука решили.
Всё-таки остались вопросы с сертификатом на SMTP. Пока никак не пойму как ему дать правильный сертификат.
Вот выдержка из документации
Чтобы требовать шифрование TLS для SMTP-подключений, можно использовать отдельный сертификат для каждого соединителя получения. Сертификат должен включать DNS-имя, которое используется клиентами SMTP или серверами для подключения к соединителю получения. Чтобы упростить управление сертификатами, рекомендуется включить все DNS-имена, для которых требуется поддержка трафика TLS, в один сертификат.
Сведения о том, как настроить взаимную проверку подлинности TLS, когда выполняется шифрование и проверка подлинности SMTP-подключений между исходным и конечным серверами, см. в статье Общие сведения о безопасности домена.
Чтобы требовать шифрование TLS для SMTP-подключений, можно использовать отдельный сертификат для каждого соединителя получения.
Вот тут в упор не могу понять. У меня есть сертификат, который содержит autodiscover, Mail и *
Он не подходит разве? Я вроде его указываю на службу SMTP
В логах OS постоянно сыплются ошибки:
1.A fatal alert was received from the remote endpoint. The TLS protocol defined fatal alert code is 46.
2.An TLS 1.2 connection request was received from a remote client application, but none of the cipher suites supported by the client application are supported by the server. The SSL connection request has failed.
3.A fatal alert was generated and sent to the remote endpoint. This may result in termination of the connection. The TLS protocol defined fatal error code is 40. The Windows SChannel error state is 1205.
Выполнял вот эту рекомендацию-действие - не помогает
Update.
Вот как я понимаю тут что-то не так. На SMTP висит несколько сертификатов. Как убрать подскажите лишние службы.? Правильно ли я понимаю, что на SMTP должен быть только
"FriendlyName : Autodiscover.lime-shop.ru
Subject : CN=Autodiscover.lime-shop.ru, OU=PositiveSSL Multi-Domain, OU=Domain Control Validated
CertificateDomains :
Thumbprint : 6EF79F9E26F7F17B355F819DF6B7C076A039B67F
Services : IMAP, POP, IIS, SMTP"
[PS] C:\Windows\system32>Get-ExchangeCertificate | Format-List FriendlyName,Subject,CertificateDomains,Thumbprint,Services
Creating a new session for i
mplicit remoting of "Get-ExchangeCertificate" command.
FriendlyName : Exchange Delegation Federation
Subject : CN=Federation
CertificateDomains :
Thumbprint : 66A06B35940E14877FA40111D155F3A300B5E551
Services : SMTP
FriendlyName : Microsoft Exchange
Subject : CN=EX-01
CertificateDomains :
Thumbprint : AD2AFC8CF37D6E96D380439B66C9CD0240BBC700
Services : IIS, SMTP
FriendlyName : WMSVC
Subject : CN=WMSvc-EX-01
CertificateDomains :
Thumbprint : B8E556F357F826FBD60E341808F9A432712D6998
Services : None
Также совсем не понятны приоритеты выдачи. Если я по статье, что указал выше ставлю сертификат FriendlyName : Microsoft Exchange
Subject : CN=EX-01
Вот тут в упор не могу понять. У меня есть сертификат, который содержит autodiscover, Mail и *
Он не подходит разве? Я вроде его указываю на службу SMTP.
Нет, не подходит. Перечитайте ответы выше.
Я Вам русским языком сказал и что нет вашего FQDN сервера в этом сертификате. Выпишите его тодельно и только его назначьте на SMTP.
Прочитать весь раздел до полного понимания несколько раз.
Best Practices for Domain Names for Internet SMTP
When you create a certificate or a certificate request for an Edge Transport server performing SMTP TLS over the Internet, the set of domain names that you should include in the request are as follows:
The fully qualified Internet domain name of the server This may be different from the internal FQDN that is used between Edge Transport servers and Hub Transport servers and should match the A record that is published on the Internet (public) DNS server. This name should be entered as a CN in the SubjectName parameter of the New-ExchangeCertificate cmdlet.
Увидел у себя ошибку в EventLog вот такого содержания
A fatal alert was received from the remote endpoint. The TLS protocol defined fatal alert code is 46.
Начал искать решение и нашёл вот эту статью
Надо в таком случае не веселые статьи читать, которые ничего обычно не объясняют по теме, а документацию открывать и читать по поведению продукта. Все же есть, все написано. А подход у все один- погуглить и брать скальпель сразу же. Зачем, если эта статья ничего конкретно не объясняет? Не лучше ли раздел про тлс прочесть и отложить в голове и требования и порядок применения если сертификатов несколько и прочие полезные штуки?
В голове-то после Вашей статьи нет понимания, одни вопросы возникают. А если они возникают- то не надо гуглить. Надо открыть нужный раздел по продукту и читать просто.
Вы простите конечно, туплю не много, не надо так, я эту статья прочитал несколько раз, но повторяю - каша пока в голове с сертификатами.
Update ыав
Я правильно понимаю, что нужно сделать запрос вот таким образом?
Да.Читайте несколько раз, и каша уйдет.
Ну, сделаете вы mail. А где будет тогда
The fully qualified Internet domain name of the server
Подсказка- он у Вас EX.lime.local
Всё, окончательно запутался. Для внешних же клиентов он mail.
Это внутри домена его FQDN EX-01
FriendlyName : Microsoft Exchange
Subject : CN=EX-01
CertificateDomains :
Thumbprint : AD2AFC8CF37D6E96D380439B66C9CD0240BBC700
Services : IIS, SMTP
То всё работает, только ругается.
Вот я и не понимаю, как и какой сертификат то ему дать :) Каша не уходит. Ткните пожалуйста. Может и правда переработал просто
Откройте свойства коннектора Client Frontend EX01, где Вы хотите по 587 принимать клиентов, так?
Поскольку в SAN такое имя есть уже, то перевыписывать не надо сертификат. Проверьте работу подключения.
Вы не поверите ) я это первым делом проверил.
Может его как "передёрнуть" через EMS ? Вдруг опять ошибка через GUI?
Но ) не работает.
Может я не правильно подставляю сертификат для SMTP. Как бы вы это сделали? EMS конечно используя.
Кстати, если вернуться назад к теме, так и не понятно - как проверить какой именно сертификат сейчас на SMTP и с каким отпечатком?
Update
Просто вот этот вывод не особо даёт понять кто-же "первый"
Enable-ExchangeCertificate -Thumbprint 5113ae0233a72fccb75b1d0198628675333d010e -Services SMTP
Кто первый: идем по ссылке и читаем о порядке выбора сертификатов, привязанных для сервиса смтп.
Проделал ещё раз уже Вашу команду для своего отпечатка.
Ссылка была дана выше.
Не помогает- что конкретно не работает?
а, вы про эту - не понятно было сначала. Ещё раз читать сел.
Например ошибка Сандердёрда всё таже.
Открываем папку с смтп логами и смотрим, что происходит в сессии. Нужно понять где ошибка.
Кстати, почитав эту теорию сразу понятно, почему тот или иной отпечаток проверяется. И как оно вообще там всё.
Вот последняя запись, которая по времени совпадает с попыткой отправки с внешнего источника
Взято вот отсюда
C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\ProtocolLog\SmtpReceive
Как я понял время LOGа игнорирует часовой пояс. У меня Самара.
Почему там Default Frontend только
02.02.2021
itpro
Windows Server 2012 R2, Windows Server 2016, Windows Server 2019
комментариев 13
Ошибка 550
Самый распространенный тип ошибки SMTP. В большинстве случаев возникает, если указан несуществующий email-адрес получателя. Но также возможны следующие причины:
Неправильно настроены параметры SMTP — перепроверьте настройки.
Возможно, в вашей сети вирус и с вашего адреса рассылается спам. Проверьте систему с помощью антивирусного ПО.
Все ответы
Repeat that for every server and connector that will be handling the authenticated SMTP connections, i.e. if you're using a load balanced SMTP namespace
Это выполняется для прошедших проверку отправителей.
все внешние клиенты SMTP и PHPMailer входят в их число? Вы их после этого перенастроили на использование 587?
Да, все стояли и стоят на 587 порт
Если честно, то не очень понял эту фразу, как я должен их перенастроить
А они Вашему внешнему сертификату доверяют? Корневику и тп. Должно все запеть если все сделали так как написано.
А они Вашему внешнему сертификату доверяют? Корневику и тп. Должно все запеть если все сделали так как написано.
Как это понять бы. Сертификат вроде нормальный, проходит все проверки.
Поставил именно вот этот, который " 076A039B67F"
но там понятно, что веб проверяется, но всё же.
Сейчас вот что выдаёт например сандербёрд
Так, всё верно. я его и поставил последний раз. Сейчас сменю на нормальный
Кстати, все клиенты отвалились всё равно, даже если поставить EX-01 серт. Все ругаются, что не могут аутентифицироваться
Самоподписанный ЕХ1 разумеется, будет выдавать предупреждение, пока его не будет явно в доверенных.
Вывод- запросите сертификат с FQDN сервера, назначьте его на транспорт. Можете для тестирования бесплатный взять от startssl.
Может я что упустил при настройке и где-то ещё не прописал это имя?
Кстати, может это связано, но оутлук при подключении внутри домена подключается на EX-01 и ругается на сертификат
При подключении снаружи всё нормально, единственное, что нужно указать пользователя с dns суффиксом .local, ну так сложилось.
Кстати, может это связано, но оутлук при подключении внутри домена подключается на EX-01 и ругается на сертификат
Относительно что делать и куда бежать- крайне рекомендую ознакомиться с теорией по вопросу. За выходные вполне можно уложить все в голову.
Так, давайте сначала разберёмся с сертификатом в домене.
Я изменил Виртуальные каталоги, но теперь Outlook не может аутентифицировать пользователей.
"приложению outlook не удается войти в систему убедитесь в наличии подключения к сети и правильности имен сервера"
Вполне допускаю, что ошибка с SCP.
Сейчас настройки стоят вот такие
Вернул все виртуальные каталоги обратно. Перезагрузил сервер, теперь оутлук выдаёт ошибку сертификата как раньше, но всё равно не авторизует. Абсурд прям какой-то. Что я мог сломать? Менял только виртуальные каталоги
Так, давайте сначала разберёмся с сертификатом в домене.
Я изменил Виртуальные каталоги, но теперь Outlook не может аутентифицировать пользователей.
Аутлук цепляется за имя в Outlook anywhere.
Понятно, что грабли от домена, но это очень большая история и очень трудозатратное дело изменить теперь домен.
Не менее трудозатратное, чем жить с ним и наступать раз за разом на такое. При кажущейся простоте и отсутствии вменяемого опыта и получается вот такие локалы. Но надо надеяться на лучшее, конечно.
Часть с ошибкой сертификата оутлука решили.
Всё-таки остались вопросы с сертификатом на SMTP. Пока никак не пойму как ему дать правильный сертификат.
Итак.
Часть с ошибкой сертификата оутлука решили.
Всё-таки остались вопросы с сертификатом на SMTP. Пока никак не пойму как ему дать правильный сертификат.
Вот выдержка из документации
Чтобы требовать шифрование TLS для SMTP-подключений, можно использовать отдельный сертификат для каждого соединителя получения. Сертификат должен включать DNS-имя, которое используется клиентами SMTP или серверами для подключения к соединителю получения. Чтобы упростить управление сертификатами, рекомендуется включить все DNS-имена, для которых требуется поддержка трафика TLS, в один сертификат.
Сведения о том, как настроить взаимную проверку подлинности TLS, когда выполняется шифрование и проверка подлинности SMTP-подключений между исходным и конечным серверами, см. в статье Общие сведения о безопасности домена.
Чтобы требовать шифрование TLS для SMTP-подключений, можно использовать отдельный сертификат для каждого соединителя получения.
Вот тут в упор не могу понять. У меня есть сертификат, который содержит autodiscover, Mail и *
Он не подходит разве? Я вроде его указываю на службу SMTP
В логах OS постоянно сыплются ошибки:
1.A fatal alert was received from the remote endpoint. The TLS protocol defined fatal alert code is 46.
2.An TLS 1.2 connection request was received from a remote client application, but none of the cipher suites supported by the client application are supported by the server. The SSL connection request has failed.
3.A fatal alert was generated and sent to the remote endpoint. This may result in termination of the connection. The TLS protocol defined fatal error code is 40. The Windows SChannel error state is 1205.
Выполнял вот эту рекомендацию-действие - не помогает
Update.
Вот как я понимаю тут что-то не так. На SMTP висит несколько сертификатов. Как убрать подскажите лишние службы.? Правильно ли я понимаю, что на SMTP должен быть только
"FriendlyName : Autodiscover.lime-shop.ru
Subject : CN=Autodiscover.lime-shop.ru, OU=PositiveSSL Multi-Domain, OU=Domain Control Validated
CertificateDomains :
Thumbprint : 6EF79F9E26F7F17B355F819DF6B7C076A039B67F
Services : IMAP, POP, IIS, SMTP"
[PS] C:\Windows\system32>Get-ExchangeCertificate | Format-List FriendlyName,Subject,CertificateDomains,Thumbprint,Services
Creating a new session for i
mplicit remoting of "Get-ExchangeCertificate" command.
FriendlyName : Exchange Delegation Federation
Subject : CN=Federation
CertificateDomains :
Thumbprint : 66A06B35940E14877FA40111D155F3A300B5E551
Services : SMTP
FriendlyName : Microsoft Exchange
Subject : CN=EX-01
CertificateDomains :
Thumbprint : AD2AFC8CF37D6E96D380439B66C9CD0240BBC700
Services : IIS, SMTP
FriendlyName : WMSVC
Subject : CN=WMSvc-EX-01
CertificateDomains :
Thumbprint : B8E556F357F826FBD60E341808F9A432712D6998
Services : None
Также совсем не понятны приоритеты выдачи. Если я по статье, что указал выше ставлю сертификат FriendlyName : Microsoft Exchange
Subject : CN=EX-01
Вот тут в упор не могу понять. У меня есть сертификат, который содержит autodiscover, Mail и *
Он не подходит разве? Я вроде его указываю на службу SMTP.
Нет, не подходит. Перечитайте ответы выше.
Я Вам русским языком сказал и что нет вашего FQDN сервера в этом сертификате. Выпишите его тодельно и только его назначьте на SMTP.
Прочитать весь раздел до полного понимания несколько раз.
Best Practices for Domain Names for Internet SMTP
When you create a certificate or a certificate request for an Edge Transport server performing SMTP TLS over the Internet, the set of domain names that you should include in the request are as follows:
The fully qualified Internet domain name of the server This may be different from the internal FQDN that is used between Edge Transport servers and Hub Transport servers and should match the A record that is published on the Internet (public) DNS server. This name should be entered as a CN in the SubjectName parameter of the New-ExchangeCertificate cmdlet.
Увидел у себя ошибку в EventLog вот такого содержания
A fatal alert was received from the remote endpoint. The TLS protocol defined fatal alert code is 46.
Начал искать решение и нашёл вот эту статью
Надо в таком случае не веселые статьи читать, которые ничего обычно не объясняют по теме, а документацию открывать и читать по поведению продукта. Все же есть, все написано. А подход у все один- погуглить и брать скальпель сразу же. Зачем, если эта статья ничего конкретно не объясняет? Не лучше ли раздел про тлс прочесть и отложить в голове и требования и порядок применения если сертификатов несколько и прочие полезные штуки?
В голове-то после Вашей статьи нет понимания, одни вопросы возникают. А если они возникают- то не надо гуглить. Надо открыть нужный раздел по продукту и читать просто.
Вы простите конечно, туплю не много, не надо так, я эту статья прочитал несколько раз, но повторяю - каша пока в голове с сертификатами.
Update ыав
Я правильно понимаю, что нужно сделать запрос вот таким образом?
Да.Читайте несколько раз, и каша уйдет.
Ну, сделаете вы mail. А где будет тогда
The fully qualified Internet domain name of the server
Подсказка- он у Вас EX.lime.local
Всё, окончательно запутался. Для внешних же клиентов он mail.
Это внутри домена его FQDN EX-01
FriendlyName : Microsoft Exchange
Subject : CN=EX-01
CertificateDomains :
Thumbprint : AD2AFC8CF37D6E96D380439B66C9CD0240BBC700
Services : IIS, SMTP
То всё работает, только ругается.
Вот я и не понимаю, как и какой сертификат то ему дать :) Каша не уходит. Ткните пожалуйста. Может и правда переработал просто
Откройте свойства коннектора Client Frontend EX01, где Вы хотите по 587 принимать клиентов, так?
Поскольку в SAN такое имя есть уже, то перевыписывать не надо сертификат. Проверьте работу подключения.
Вы не поверите ) я это первым делом проверил.
Может его как "передёрнуть" через EMS ? Вдруг опять ошибка через GUI?
Но ) не работает.
Может я не правильно подставляю сертификат для SMTP. Как бы вы это сделали? EMS конечно используя.
Кстати, если вернуться назад к теме, так и не понятно - как проверить какой именно сертификат сейчас на SMTP и с каким отпечатком?
Update
Просто вот этот вывод не особо даёт понять кто-же "первый"
Enable-ExchangeCertificate -Thumbprint 5113ae0233a72fccb75b1d0198628675333d010e -Services SMTP
Кто первый: идем по ссылке и читаем о порядке выбора сертификатов, привязанных для сервиса смтп.
Проделал ещё раз уже Вашу команду для своего отпечатка.
Ссылка была дана выше.
Не помогает- что конкретно не работает?
а, вы про эту - не понятно было сначала. Ещё раз читать сел.
Например ошибка Сандердёрда всё таже.
Открываем папку с смтп логами и смотрим, что происходит в сессии. Нужно понять где ошибка.
Кстати, почитав эту теорию сразу понятно, почему тот или иной отпечаток проверяется. И как оно вообще там всё.
Вот последняя запись, которая по времени совпадает с попыткой отправки с внешнего источника
Взято вот отсюда
C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\FrontEnd\ProtocolLog\SmtpReceive
Как я понял время LOGа игнорирует часовой пояс. У меня Самара.
Почему там Default Frontend только
02.02.2021
itpro
Windows Server 2012 R2, Windows Server 2016, Windows Server 2019
комментариев 13
Проверка доступности почтового сервера программным методом
Одним из способов предупреждения появления ошибок является онлайн-проверка доступности почтового сервера с помощью бесплатных инструментов:
Эти сервисы пробуют подключиться к почтовому серверу по SMTP, подтверждают, что у него есть запись обратной зоны DNS, и замеряют время отклика. С их помощью можно диагностировать некоторые ошибки службы почтовых серверов или проверить, не занесен ли данный ресурс в черные списки из-за спама.
SMTP-сервер — это программное обеспечение для отправки электронных писем, использующее SMTP протокол. Напомним, что вообще работа электронной почты обеспечивается с помощью трех протоколов: POP3 или IMAP — для получения писем, SMTP — для отправки.
Передача письма по SMTP происходит с помощью TCP-соединения. Стандартный порт для незащищенного соединения — 25. Однако многие сервисы по умолчанию его блокируют, так как именно на него обычно идет рассылка вирусного спама.
В качестве альтернативных можно прописывать в настройках порты 587 и 2525.
Для защищенного соединения по SSL используется порт 465.
Ошибка 451
Эта ошибка означает, что отправка была прервана в процессе. Возможные причины и пути решения проблемы следующие:
- На DNS-сервере неправильно прописаны параметры почтового сервера (MX записи). Например, некорректно проставлены предпочтения, если почтовых серверов для домена несколько. Перепроверьте и исправьте записи. Возможно, потребуется также посмотреть логи и файлы конфигурации.
- Превышены лимиты сервера на отправки или подключения. Проверьте, нет ли подозрительно большого количества отправляемых писем, если все нормально — увеличьте лимиты в настройках.
Виды почтовых серверов
SMTP-сервер встречается в нескольких вариантах:
Ошибка 571
Это ошибка означает, что сервер SMTP получателя не принял ваше письмо. Возможные причины:
-
Ваш IP-адрес заблокирован почтовым сервером адресата. Это может сделать антивирусное ПО, или файервол, или программное обеспечение для защиты от спама. Проблему нужно решать с системным администратором получателя.
Ваш email внесен в списки спамеров. Нужно разбираться в причине и предпринимать меры, чтобы его оттуда удалили.
У вашего IP нет rDNS записи. Это необходимый параметр, без него ни один почтовый сервер не примет ваше письмо. Для решения проблемы обратитесь к хостинг-провайдеру.
Настройка DNS-записей для домена
После создания почтового домена и почтового ящика необходимо правильно настроить DNS-записи домена: MX, SPF, DMARC, DKIM и PTR.
В SPF-записи указывается список серверов, с которых разрешена отправка писем от имени вашего домена.
Для настройки SPF:
В окне настройки DNS-записи поле «Хост» оставьте пустым. В поле «Значение» укажите следующую запись, заменив 1.1.1.1 на IP-адрес вашего сервера:
1. Включите DKIM в панели ISPmanager:
- Под пользователем root перейдите в раздел Настройки — Конфигурация ПО.
- Найдите в списке «Почтовый сервер (SMTP/POP3/IMAP)» и дважды кликните по нему
- Отметьте пункт «OpenDKIM (exim)» и нажмите «Применить изменения».
- Перейдите в раздел Почта — Почтовые домены и дважды кликните по нужному домену.
- Отметьте пункт «Включить DKIM для домена».
- Также отметьте пункт «Включить DMARC для домена» — эта запись потребуется нам на следующем шаге.
- Нажмите Ok.
Произведенная настройка добавит необходимые TXT-записи для домена (dkim._domainkey и _dmarc).
2. Скопируйте полученную запись:
- Перейдите в раздел Управление DNS.
- Выделите нужный домен и нажмите Управлять DNS-записями.
- Найдите запись вида «dkim._domainkey.вашдомен» и дважды кликните по строчке с ней.
- Скопируйте содержимое поля «Значение».
3. Пропишите DKIM у домена:
Ошибка 421
Расшифровка ошибки SMTP 421 — «сервис недоступен». Причиной могут быть:
Блокировка трафика на 25 порту. Пропишите в настройках альтернативные порты.
Неправильно заданы настройки соединения. Проверьте и исправьте настройки.
Ваш антивирус или брандмауер блокирует соединение с сервером SMTP.
-
Использование VPN. Встречается достаточно редко, но все же проверьте, отправляется ли письмо, если отключить VPN. Если да, то необходимо обратиться к администраторам VPN-сервиса, чтобы устранить проблему.
Вы используете бесплатный сервер SMTP и при этом отправляете много писем. У таких серверов существуют лимиты на отправку в определенный промежуток времени, возможно, вы его превысили. Вам лучше использовать профессиональные платные решения.
Как работает SMTP-сервер
Функции почтового сервера SMTP сводятся к следующему:
-
определить домен получателя письма и то, совпадает ли он с доменом отправителя;
определить IP-адрес сервера SMTP получателя;
установить соединение с ним;
Если провести аналогию с обычной почтой, то функции SMTP-сервера можно сравнить с работой почтового отделения, которое проверяет корректность данных получателя на вашем конверте и отправляет письмо по месту назначения. Само письмо почтовое отделение не вскрывает. Сервер SMTP также не проверяет заголовки и содержимое вашего письма, а отправляет его как есть.
Ошибка 452
Ошибка почтового сервера 452
Значение: Insufficient system resources. Запрашиваемое действие не выполнено: недостаточно места в системе.
Возможные причины
Варианты решения
На сервере получателя закончилось место, поэтому письмо не доставляется
Чтобы в этом убедиться, достаточно попробовать осуществить отправку письма с другого сервера
Необходимо проверить количество отправляемых писем в очереди, наличие свободного места на диске и объем доступной памяти
В Microsoft Exchange Server есть специальный компонент мониторинга доступных ресурсов Back Pressure, который отслеживает свободное место на диске, на котором хранятся очереди транспортной службы Exchange. При возникновении такой ошибки можно сделать следующее:
- очистить диск от ненужных файлов;
- отключить мониторинг Back Pressure (не рекомендуется);
- перенести транспортную очередь на другой диск достаточного объема.
Создание почтового ящика
Cоздать ящик можно в разделе Почта — Почтовые ящики — Создать.
В открывшейся форме заполните необходимые поля:
Нажмите Ок — почтовый ящик создан.
Настройка SMTP сервера на Windows Server
Управляется SMTP сервер консоль управления Internet Information Services (IIS) Manager 6. Открыть эту консоль можно через Server Manager: Tools-> Internet Information Services (IIS) 6.0 Manager или командой inetmgr6.exe.
В консоли IIS 6 Manager разверните ветку с именем сервера, щёлкните ПКМ по SMTP Virtual Server и откройте его свойства.
На вкладке General, если необходимо, выберите IP адрес, на котором должен отвечать SMTP сервер (если у сервера несколько IP адресов), и включите ведение логов Enable logging (чтобы сохранялась информация обо всех полученных письмах).
Затем перейдите на вкладку Access.
Здесь нажмите на кнопку Authentication и убедитесь, что разрешен анонимный доступ (Anonymous access).
Вернитесь на вкладку Access и нажмите кнопку Connection. Здесь вы можете указать IP адреса устройств, которым разрешено отправлять почту через наш SMTP релей. Нужно выбрать опцию Only the list below и указать список IP адресов, не забыв самого себя (127.0.0.1).
Аналогичным образом настройте список разрешенных IP в настройках Relay (нажмите соответствующую кнопку). В этой секции указано каким IP адресам (или подсетям) можно пересылать почту через ваш SMTP сервер.
Примечание. Как правило, обязательно стоит включать эту опцию, как минимум ограничив список обслуживаемых устройств диапазоном IP адресов. В противном случае ваш SMTP сервер может использоваться спамерами и другими злоумышленниками как открытый релей для массовых почтовых рассылок.
Перейдите на вкладку Messages. Здесь указывается email, на который будут отправляться копии всех NDR отчетов (Send copy of Non-Delivery Report to:). Также здесь можно указать ограничения на максимальный размер писем (Limit message size KB) и количество получателей (Limit number of recepients per message).
Затем нажмите на кнопку Outbound Security. Здесь указывается, как нужно авторизоваться на почтовом сервере, на который ваш SMTP-сервере будет пересылать (relay) всю почту. К примеру, если вся почта будет отправляться на почтовый сервер Gmail и уже с него пересылаться адресатам, вам нужно выбрать тип аутентификации Basic authentication, указав в качестве пользователя и пароля данные для доступа к почтовому ящику на сервисе Gmail (в настройках аккаунта Google нужно разрешить отправку через smtp сервера gmail).
Затем нажмите на кнопку Advanced.
Некоторые внешние почтовые сервера принимает почту только при использовании защищенного SMTP соединения с помощью TLS Encryption (используется порт TCP 587). Это настраивается в разделе Delivery-> Outbound Security и Outbound Connections. Ознакомитесь с документацией вашего почтового провайдера.
Сохраните настройки SMTP сервера и перезапустите ваш виртуальный SMTP сервер для применения изменений.
Почтовый сервер ответил ошибкой 571
Возможные причины
Варианты решения
Ваш IP-адрес заблокирован на стороне конечного получателя спам-фильтром, антивирусом или файрволом
Данную проблему может решить только администратор сети получателя, исключив ваши идентификационный данные из списка блокировки или добавив их в «белый список»
Неверные учетные данные ретранслятора. У вас нет разрешения на отправку электронной почты через сервер, который находится между вами и получателем
Обратитесь к администратору данного ресурса для изменения настроек
У IP отправителя нет RDNS
Проверьте настройки получения писем и разрешения для доменов-отправителей
Сервер сообщил об ошибке SMTP 550
Значение: Mailbox unavailable. Требуемые действия не предприняты: электронный ящик недоступен
Возможные причины
Варианты решения
Неверно указан email-адрес получателя
Необходимо связаться с адресатом альтернативным способом и уточнить правильность написания адреса, а также убедиться, что он является действующим
Система заражена вирусом, осуществляющим массовую рассылку писем с вашего адреса
Провести полную проверку специализированной антивирусной программой
Необходимо связаться с поставщиком интернет-услуг и получить консультацию по устранению данной проблемы
Сервер получателя не работает
Отправьте тестовое письмо на другой почтовый сервер. Свяжитесь с получателем и сообщите о проблеме
Проверка работы SMTP сервера на Windows Server
Ну и последнее, что осталось сделать, проверить работу созданного SMTP сервера. Проще всего это сделать, создав на рабочем столе текстовый файл smtp-test-email.txt и скопировав в него следующий текст, заменив имя отправителя и получателя на ваши.
Проверьте ящик получателя, в него должно прийти такое письмо.
Совет. Протестировать работу SMTP сервера можно и из командой строки telnet, скрипта vbs или PowerShell:
Send-MailMessage -SMTPServer localhost -To admin@localdomain.com -From server@localdomain.com -Subject "Email test" -Body "This is the test email sent via PowerShell"
Также убедитесь, что на вашем SMTP сервере не блокируется порт TCP 25 при удаленном подключении (локальным файерволом, антивирусом или межсетевым экраном). Проще всего это сделать с компьютера Windows, IP адрес которого добавлен в разрешенные. Проверку доступности порта можно выполнить с помощью командлета Test-NetConnection:
Test-NetConnection smtpsrv1.name.local –port 25
Если 25 порт блокируется, проверьте настройки Windows Firewall, антивируса и аппаратных межсетевых экранов.
Итак, вы настроили собственный почтовый SMTP релей на Windows Server 2016/2012 R2 и протестировали отправку писем через него.
Для работы с почтой в первую очередь необходимо добавить почтовый домен (возможно, вы уже сделали это на этапе создания нового пользователя, установив галочку «Создать почтовый домен»).
Как при работе от root, так и при работе от пользователя, добавить почтовый домен можно через раздел Почта — Почтовые домены — Создать.
В открывшейся форме заполните необходимые поля:
Нажмите Ок — почтовый домен создан.
Ответы SMTP-сервера. Коды успешной или неуспешной обработки запроса
- 2xx. Такой ответ означает, что предыдущая команда была успешно выполнена.
- 3xx. Коды, начинающиеся на тройку, высылаются на промежуточном этапе передачи, когда сервер ждет остальную часть данных.
- 4xx. Это коды ошибок, которые могут носить временный характер.
- 5xx. В эту категорию относятся коды критичных ошибок.
Почтовый сервер сообщил об ошибке 421
Значение: Service Not Available. Сервер недоступен: канал связи будет закрыт.
Возможные причины
Варианты решения
Неправильно заданы параметры SMTP-соединения
Необходимо перепроверить настройки
Брандмауэр блокирует IP-адрес сервера электронной почты
Необходимо создать новое правило в брандмауэре
Блокируется трафик через порт 25
Попробуйте в настройках учетной записи электронной почты сменить номер порта SMTP на 465
Проблема использования VPN
Необходимо, чтобы провайдер услуги занес ваш почтовый сервер в белый список адресов VPN
Значение: Requested action aborted: local error in processing. Требуемое действие прерывалось: ошибка в обработке.
Возможные причины
Варианты решения
Неправильно настроены MX-записи домена, из-за чего происходит неправильная маршрутизация писем
Проверьте логи, конфигурационные файлы, МХ-записи и разрешения, внесите корректировки
Коды ошибок SMTP, их причины и варианты исправления ситуации
Мы же разберем самые распространенные ошибки SMTP и поясним, что делать в этих ситуациях.
Как избежать ошибок при составлении и отправке писем
- выделенный IP-адрес с целью исключить блокировку на стороне сервера-ретранслятора или почтовой программы конечного получателя;
- криптографические подписи DKIM и SPF, помогающие подтвердить подлинность домена и минимизировать количество писем, воспринимаемых как спам.
Важно! В случае несоблюдения этих элементарных правил вы рискуете не только тем, что конкретное письмо не будет доставлено адресату. При многократных попытках отправки письма в большинстве почтовых программ в блок-лист попадет вся корреспонденция, отправляемая с вашего email, и даже корпоративный домен (@domain.***).
Некорректное использование бота для отправки писем может привести к блокировке отправителя и другим нежелательным последствиям. Даже если информация, которую вы отправляете потенциальным клиентам, реально интересна им, система спам-фильтрации может воспринять данную рассылку как вредоносную. Чтобы избежать этого, лучше всего воспользоваться услугами специализированных компаний.
Данные коды являются трехзначными, каждая его часть несет в себе определенную информацию, расшифровывающую причину сбоя.
Первая цифра комбинации содержит информацию о качестве доставки:
Существует четыре варианта значений для первой цифры кода:
Вторая цифра в коде сообщает о категории ответа:
- 0 – синтаксические ошибки;
- 1 – ответы на запросы информации;
- 2 – ошибки канала передачи;
- 3 и 4 – неизвестный тип ошибки;
- 5 – статус почтовой системы.
Третья цифра дает более расширенную информацию о значении, указанном во второй цифре SMTP-ответа.
Полную информацию о кодах, их компоновке и значениях можно найти в спецификациях RFC 5321 и RFC 1893.
Следует учитывать, что SMTP-message говорит об успешном или неудачном варианте доставки именно на уровне взаимодействия почтовых серверов. Положительный ответ вовсе не означает, что ваше письмо не попало в папку « Спам » .
Автозапуск службы SMTPSVC
Осталось настроить автозапуск службы SMTP сервера. Быстрее всего это сделать из командной строки PowerShell:
set-service smtpsvc -StartupType Automatic
Проверим, что запущена служба SMTPSVC :
DMARC
1. Включите DMARC в панели ISPmanager.
Вероятно, вы сделали это на предыдущем шаге с DKIM. Если же нет, то:
- Перейдите в раздел Почта —Почтовые домены.
- Выделите нужный домен и нажмите Изменить.
- Отметьте пункт Включить DMARC для домена и нажмите Ок, чтобы сохранить изменения.
2. Скопируйте полученную запись:
- Перейдите в раздел Управление DNS.
- Выделите нужный домен и нажмите Управлять DNS-записями .
- Найдите запись вида «_dmarc.вашдомен» и дважды кликните по строке с ней.
- Скопируйте содержимое поля «Значение».
3. Пропишите DMARC у домена:
Читайте также: