Назад | Перейти на главную страницу

Конфигурация Sendmail для Exchange Server

Мне нужна помощь в настройке sendmail на нашей Linux-машине.

Вот что: я хочу отправить электронное письмо вовне, используя наш сервер обмена в качестве почтового ретранслятора. Но при отправке электронного письма через сервер он ответит «пользователь неизвестен». Что еще хуже, он вернет обратно все отправленные сообщение на мой локальный хост.

Я уже протестировал нашу конфигурацию, используя внешний почтовый сервер, такой как gmail и yahoo, конфигурация работает без каких-либо проблем, и письмо может быть отправлено получателю. Большая часть конфигурации моего sendmail основана на Вот.

файл authinfo:

AuthInfo:my_exchange_server "U:my_name" "I:my_email" "P:my_passwd" "M:PLAIN LOGIN"
AuthInfo:my_exchange_server:587 "U:my_name" "I:my_email" "P:my_passwd" "M:PLAIN LOGIN"

sendmail.mc:

FEATURE(authinfo,hash /etc/mail/authinfo.db)
define(`SMART_HOST', `my_exchange server')dnl
define('RELAY_MAILER_ARGS', 'TCP $h 587')
define('ESMTP_MAILER_ARGS', 'TCP $h 587')
define('confCACERT_PATH', '/usr/share/ssl/certs')
define('confCACET','/usr/share/ssl/certs/ca-bundle.crt')
define('confSERVER_CERT','/usr/share/ssl/certs/sendmail.pem')
define('confSERVER_KEY','/usr/share/ssl/certs/sendmail.pem')
define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')
TRUST_AUTH_MECH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')
define('confAUTH_OPTIONS, 'A')dnl

Мои первые предположения, что проблема возникает из-за проблемы с аутентификацией, поскольку серверу обмена требуется зашифрованная аутентификация (DIGEST-MD5). Я уже изменил это в файле authinfo (с простого входа на вход в digest-md5), но все еще не работает.

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

Может ли кто-нибудь помочь мне с этой проблемой? Я действительно в тупике. Спасибо.

Создание коннектора анонимной ретрансляции на сервере Exchange

Создать коннектор с помощью PowerShell

New-ReceiveConnector -Name "Anonymous Relay" -Usage Custom -PermissionGroups AnonymousUsers -Bindings 0.0.0.0:26 -RemoteIpRanges 192.168.1.1

-RemoteIpRanges Параметр позволяет ретранслировать IP-адрес сервера

Добавить разрешения

Get-ReceiveConnector "Anonymous Relay" | Add-ADPermission -User "NT AUTHORITY\ANONYMOUS LOGON" -ExtendedRights "Ms-Exch-SMTP-Accept-Any-Recipient"

Нет необходимости в авторизации после этой команды powershell

Добавить разрешенный IP-адрес сервера ретрансляции в список

$RecvConn = Get-ReceiveConnector "Anonymous Relay"
$RecvConn.RemoteIPRanges += "192.168.1.2", "178.151.1.2", "8.8.8.2"
Set-ReceiveConnector "Anonymous Relay" -RemoteIPRanges $RecvConn.RemoteIPRanges

Ссылки

Вся информация доступна на MS TechNet Разрешить анонимную ретрансляцию на коннекторе получения

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

http://support.microsoft.com/kb/153119

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

http://technet.microsoft.com/en-us/library/bb232021.aspx

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