LINUX.ORG.RU

проблема с отправкой писем через sendmail на asus роутере

 


0

1

Народ, помогите кто знает в чем проблема. Дано: роутер asus с кастомной прошивкой. Через Optware установлен sendmail 8.14.2-2

пробую отправить письмо: cat my.mail | /opt/sbin/sendmail -t после этого висит процесс 32751 admin 5116 S {sendmail} sendmail: ./r8NCYira032748 hotbox.ru: user open

в логах есть запись sendmail[32748]: gethostbyaddr(мой_айпи_адрес_внешний) failed: -1 r8NCYira032748: from=admin, size=59, class=0, nrcpts=1, msgid=<201309231234.r8NCYira032748@my.router>, relay=admin@localhost

проходит минут 5, письмо не отправляется, в логах запись sendmail[32751]: r8NCYira032748: to=holiday@hotbox.ru, ctladdr=admin (0/0), delay=00:06:23, xdelay=00:06:23, mailer=esmtp, pri=120059, relay=hotbox.ru [62.141.94.20], dsn=4.0.0, stat=Deferred: Connection timed out with hotbox.ru

Перерыл весь инет, ответа нет. У провайдера и ну меня на роутере исходящий 25-ый порт открыт. Оч смущает сообщение что sendmail пытается законнектиться к самому hotbox.ru, а не к mx.


Думаю, что проблема в конфиге sendmail'а.

Касательно:

gethostbyaddr(мой_айпи_адрес_внешний) failed

это скорее всего связано с тем, что sendmail хочет определить локальные адреса, опция confDONT_PROBE_INTERFACES. Или он хочет определить hostname, чтобы использовать его в поле EHLO esmtp-протокола.

relay=hotbox.ru [62.141.94.20]

Запрет на использование MX-записей может быть создан через установку флага '0' в опции SMTP_MAILER_FLAGS.

Документации по sendmail'у куча.

mky ★★★★★
()
Ответ на: комментарий от mky

Спасибо за ответ. С gethostbyaddr разобрался, прописал в /etc/hosts айпи и домен. А вот с mx беда. Исходного mc конфига нет, но судя по cf файлу сгенерирован из стандартного generic-linux.mc и SMTP_MAILER_FLAGS там не указан. Попробую сейчас перегенерировать cf из стандартного mc, сравню.

theand
() автор топика
Ответ на: комментарий от theand

и SMTP_MAILER_FLAGS там не указан

В общем-то, это глазами в cf можно проверить. Как-то так:
cat sendmail.cf |grep «F=»

AS ★★★★★
()
Ответ на: комментарий от AS

Пока мучаюсь со своим конфигом и m4.

grep выдал следующий результат Mlocal, P=/opt/bin/procmail, F=lsDFMAw5:/|@qSPfhn9, S=EnvFromL/HdrFromL, R=EnvToL/HdrToL, Mprog, P=/bin/sh, F=lsDFMoqeu9, S=EnvFromL/HdrFromL, R=EnvToL/HdrToL, D=$z:/, Msmtp, P=[IPC], F=mDFMuX, S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP, E=\r\n, L=990, Mesmtp, P=[IPC], F=mDFMuXa, S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP, E=\r\n, L=990, Msmtp8, P=[IPC], F=mDFMuX8, S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP, E=\r\n, L=990, Mdsmtp, P=[IPC], F=mDFMuXa%, S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP, E=\r\n, L=990, Mrelay, P=[IPC], F=mDFMuXa8, S=EnvFromSMTP/HdrFromSMTP, R=MasqSMTP, E=\r\n, L=2040,

F=0 нет. Вникаю дальше...

theand
() автор топика
Ответ на: комментарий от theand

Может, с DNS что-то не так ? Что показывает на этом роутере host -t mx hotbox.ru ?

Или, даже, вот так надо попробовать:

# sendmail -bt
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> /mx hotbox.ru
getmxrr(hotbox.ru) returns 1 value(s):
        mx.qip.ru.

И lorcode надо изучить: www.linux.org.ru/wiki/en/Lorcode

AS ★★★★★
()
Ответ на: комментарий от AS

И lorcode надо изучить: www.linux.org.ru/wiki/en/Lorcode

Yes, sir! :)

интересная штука у меня получается

ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> /mx hotbox.ru
No MX code compiled in

Это что ж получается что sendmail скомпилирован без рухания mx записей...

theand
() автор топика
Ответ на: комментарий от theand

раскомментил опцию ResolverOption в sendmail.cf, он меня послал

550 /opt/etc/mail/sendmail.cf: line 195: name server (I option) specified but BIND not compiled in

похоже надо заморачиваться переустановкой sendmail, или переходить с optware на entware для роутеров (пока не знаю как там обстоят дела с sendmail).

Всем большое спасибо за помощь!

theand
() автор топика
Ответ на: комментарий от theand

похоже надо заморачиваться переустановкой sendmail, или переходить с optware на entware для роутеров

Или указать отправку через smart relay, если рядом есть сервер, который пустит:
define(`SMART_HOST', `my.relay')
или сразу в cf:
DSmy.relay

AS ★★★★★
()
Ответ на: комментарий от AS

Или указать отправку через smart relay

Да, согласен. Спасибо.

theand
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.