Почему мой клиентский сервер не может отправлять электронную почту через порт 587, хотя возможно подключение через Telnet к моему почтовому серверу?

Хост не может отправлять почту через ретранслятор с портом 587.

У меня есть два сервера. Один почтовый сервер и один сервер, который использует почтовый сервер в качестве узла ретрансляции.

Клиентский сервер должен отправлять сообщения через порт 587. Соединение Telnet между клиентом и почтовым сервером возможно через порт 587. Но попытка отправить почту приводит к появлению следующих строк (/var/log/maillog):

      May 23 07:16:56 mail postfix/smtpd[15476]: connect from HOST_DNS[HOST_IP]
May 23 07:16:56 mail postfix/smtpd[15476]: disconnect from HOST_DNS[HOST_IP] ehlo=1 auth=0/2 quit=1 commands=2/4

РЕДАКТИРОВАТЬ:

Я также получаю это в почтовом журнале:

      May 23 09:32:13 187 postfix/smtp[402991]: maps_find: smtp_sasl_password_maps: MYHOSTNAME: not found
May 23 09:32:13 187 postfix/smtp[402991]: maps_find: smtp_sasl_password_maps: [MYHOSTNAME]:587: not found

В main.cf:

      relayhost=[MYHOSTNAME]:587

и в /etc/postfix/sasl_passwd:

      [MYHOSTNAME]:587 user@domain:password

РЕШЕНО ЭТА ЧАСТЬ: Синтаксическая ошибка в sasl_passwd и отсутствующая команда postmap. Проблема выше все еще существует.

1 ответ

У вас, вероятно, помимо

      relayhost = [MYHOSTNAME]:587

также включил аутентификацию для MYHOSTNAME с помощью:

      smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
smtp_use_tls = yes

The maps_find:ошибка предполагает, что вы не обновили поиск Postfix после обновления обычного текстового файла./etc/postfix/sasl_passwdсsudo postmap /etc/postfix/sasl_passwd

Другие вопросы по тегам