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

Sendmail не будет отправлять электронную почту в тот же домен

Я видел много ссылок на эту проблему при сбое сервера и во всем Интернете, но ни одно из решений не устранило мою проблему.

Я запускаю Sendmail 8.14.4 на Ubuntu 13.10, это только веб-сервер (назовите его domain.com) и не обрабатывает входящую или исходящую электронную почту, кроме отправки автоматических сообщений пользователям через php. mail(). Любая входящая почта на someone@domain.com обрабатывается через другую настройку сервера через запись MX и работает должным образом. Кажется, что это частая проблема, когда любое электронное письмо, отправленное с сервера на someone@domain.com маршрутизируется локально и не работает, но любой другой домен работает должным образом.

Я пробовал множество решений, включая добавление define(`confDONT_PROBE_INTERFACES', `True')dnl к /etc/mail/sendmail.mc, затем бег sendmailconfig и перезапуск sendmail. Однако это не решает проблему, и при запуске команды echo $=w | sendmail -bt domain.com по-прежнему отображается в списке. Я удалил domain.com из /etc/mail/local-host-names, но нужно ли еще где-нибудь его удалить? Мне нужно удалить какие-либо ссылки в /etc/hosts? Когда я бегу hostname domain.com сообщается, могу ли я это изменить, и если бы я это сделал, возникли бы проблемы с другими службами?

Отказавшись от этого решения, я также попытался настроить реле, добавив следующее в sendmail.mc:

define(`MAIL_HUB', `example.com.')dnl
define(`LOCAL_RELAY', `example.com.')dnl

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

Обновление: теперь я изменил имя хоста на www.domain.com и, похоже, теперь он правильно попадает на почтовый сервер, а не выполняет локальную маршрутизацию. Однако теперь я получаю сообщение об ошибке: неизвестный пользователь? На почтовом сервере настроена учетная запись пересылки для этого конкретного пользователя, хотя на самом деле почтового ящика нет, это проблема? Я добавил журнал ниже:

Jan 27 12:13:31 www sendmail[1839]: s0RCDV3n001839: from=www-data, size=129, class=0, nrcpts=2, msgid=<201401271213.s0RCDV3n001839@www.domain.com>, relay=www-data@localhost
Jan 27 12:13:32 www sm-mta[1841]: s0RCDVtW001841: from=<www-data@www.domain.com>, size=401, class=0, nrcpts=2, msgid=<201401271213.s0RCDV3n001839@www.domain.com>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Jan 27 12:13:32 www sendmail[1839]: s0RCDV3n001839: to=someone@domain.com,someone@anotherdomain.com, ctladdr=www-data (33/33), delay=00:00:01, xdelay=00:00:01, mailer=relay, pri=60129, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (s0RCDVtW001841 Message accepted for delivery)
Jan 27 12:13:32 www sm-mta[1843]: STARTTLS=client, relay=spool.mail.gandi.net., version=TLSv1/SSLv3, verify=FAIL, cipher=DHE-RSA-AES256-SHA, bits=256/256
Jan 27 12:13:36 www sm-mta[1843]: s0RCDVtW001841: to=<someone@anotherdomain.com>, ctladdr=<www-data@www.domain.com> (33/33), delay=00:00:05, xdelay=00:00:04, mailer=esmtp, pri=150401, relay=spool.mail.gandi.net. [217.70.184.6], dsn=2.0.0, stat=Sent (Ok: queued as 378B22A89BC)
Jan 27 12:13:36 www sm-mta[1843]: STARTTLS=client, relay=mail.domain.com., version=TLSv1/SSLv3, verify=FAIL, cipher=DHE-RSA-AES256-SHA, bits=256/256
Jan 27 12:13:36 www sm-mta[1843]: s0RCDVtW001841: to=<someone@domain.com>, ctladdr=<www-data@www.domain.com> (33/33), delay=00:00:05, xdelay=00:00:00, mailer=esmtp, pri=150401, relay=mail.domain.com. [79.170.40.74], dsn=5.1.1, stat=User unknown
Jan 27 12:13:36 www sm-mta[1843]: s0RCDVtW001841: s0RCDatW001843: DSN: User unknown
Jan 27 12:13:37 www sm-mta[1843]: s0RCDatW001843: to=<www-data@www.domain.com>, delay=00:00:01, xdelay=00:00:01, mailer=local, pri=30000, dsn=2.0.0, stat=Sent

Я протестировал пользователя через telnet-соединение с почтовым сервером, и пользователь был принят.

ваш сервер должен иметь имя хоста (FQDN), отличное от domain.com. После этого проверьте конфигурацию sendmail на предмет настроек LOCAL_DOMAIN. Удалите записи «domain.com», если у вас есть только localhost и полное доменное имя.

Не забудьте перекомпилировать конфиги sendmails после изменения файлов .mc.

Bests, Семир