@Bloodsn0w

Sendmail, reley, mailertable. Почему почта приходит локально?

Проблема в следующем.
Есть почтовый relay на sendmail. Почта с доменом domain.ru должна пересылаться на внутренний почтовый сервер Exchange, по правилу, в mailertable:
domain.ru smtp:[192.168.1.172]
но приходит локально. Если создать локально пользователя, то почта приходит, иначе - User unknown.
В local-host-names писал и localhost, и оставлял пустым по разным рекомендациям на разных форумах.
Раньше хост назывался как и MX запись mail.domain.ru, сейчас переименовал его в gw.worknet.local, по тем же рекомендациям на форумах.
uname -a
FreeBSD gw.worknet.local 9.2-RELEASE-p6 FreeBSD 9.2-RELEASE-p6 #4: Tue Jun 17 11:17:41 MSK 2014     admin@mail.domain.ru:/usr/src/sys/i386/compile/MYKERN  i386

Вот одно подозрение, "admin@mail.domain.ru", но как его поменять, не знаю.
Файл relay-doamin
domain.ru
Конфиг sendmail'а стандартный (почти ничего не менял), создавался через make. Имя конфига gw.worknet.local.mc.
В логах появляется следующее:
Oct 15 13:01:10 gw sm-mta[35565]: STARTTLS=server, relay=f153.i.mail.ru [128.140.171.244], version=TLSv1/SSLv3, verify=NO, cipher=DHE-RSA-AES256-SHA, bits=256/256
Oct 15 13:01:10 gw milter-greylist: s9F917rG035565: Sender IP 128.140.171.244 and address <testmail@mail.ru> are SPF-compliant, bypassing greylist
Oct 15 13:01:46 gw sm-mta[35565]: s9F917rG035565: <user@domain.ru>... User unknown
Oct 15 13:01:46 gw sm-mta[35565]: s9F917rG035565: from=<testmail@mail.ru>, size=2354, class=0, nrcpts=0, proto=ESMTP, daemon=IPv4, relay=f153.i.mail.ru [128.140.171.244]

Файл access:
localhost       RELAY
192.168.1       RELAY

gw.worknet.local.mc:
divert(-1)
divert(0)
VERSIONID(`$FreeBSD: release/9.2.0/etc/sendmail/freebsd.mc 249867 2013-04-25 01:46:20Z gshapiro $')dnl
OSTYPE(freebsd6)dnl
DOMAIN(generic)dnl
FEATURE(access_db, `hash -o -T<TMPF> /etc/mail/access')dnl
FEATURE(blacklist_recipients)dnl
FEATURE(local_lmtp)dnl
FEATURE(mailertable, `hash -o /etc/mail/mailertable')dnl
FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')dnl
FEATURE(`require_rdns')dnl
FEATURE(`badmx')dnl
define(`confCW_FILE', `-o /etc/mail/local-host-names')dnl
define(`confCR_FILE', `-o /etc/mail/relay-domains')dnl
dnl Enable for both IPv4 and IPv6 (optional)dnl
DAEMON_OPTIONS(`Name=IPv4, Family=inet')dnl
dnl DAEMON_OPTIONS(`Name=IPv6, Family=inet6, Modifiers=O')dnl
define(`confBIND_OPTS', `WorkAroundBrokenAAAA')dnl
define(`confNO_RCPT_ACTION', `add-to-undisclosed')dnl
define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy')dnl
define(`confMAX_DAEMON_CHILDREN', `30')dnl
define(`confCONNECTION_RATE_THROTTLE', `25')dnl
define(`confMAX_MESSAGE_SIZE', `15000000')dnl
define(`confMAX_RCPTS_PER_MESSAGE', `50')dnl
define(`confSMTP_LOGIN_MSG', `mail.xservx.ru MSERV!')dnl
define(`confTO_IDENT', `0')dnl
FEATURE(dnsbl, `bl.spamcop.net', `"550 Mail from " $&{client_addr} " rejected - see bl.spamcop.net"')dnl
FEATURE(dnsbl, `dnsbl.njabl.org', `"550 Mail from " $&{client_addr} " rejected - see dnsbl.njabl.org"')dnl
FEATURE(dnsbl, `list.dsbl.org', `"550 Mail from " $&{client_addr} " rejected - see list.dsbl.org"')dnl
FEATURE(dnsbl, `zen.spamhaus.org', `"550 Mail from " $&{client_addr} " rejected - see zen.spamhaus.org"')dnl
FEATURE(dnsbl, `sbl.spamhaus.org', `"550 Mail from " $&{client_addr} " rejected - see sbl.spamhaus.org"')dnl
define(`CERT_DIR',        `MAIL_SETTINGS_DIR`'certs')dnl
define(`confCACERT_PATH', `CERT_DIR')dnl
define(`confCACERT',      `CERT_DIR/cacert.pem')dnl
define(`confSERVER_CERT', `CERT_DIR/sendmail.pem')dnl
define(`confSERVER_KEY',  `CERT_DIR/sendmail.pem')dnl
define(`confCLIENT_CERT', `CERT_DIR/sendmail.pem')dnl
define(`confCLIENT_KEY',  `CERT_DIR/sendmail.pem')dnl
INPUT_MAIL_FILTER(`greylist', `S=local:/var/milter-greylist/milter-greylist.sock,F=, T=S:1m;R:1m')dnl
define(`confMILTER_MACROS_CONNECT', `j, {if_addr}')dnl
define(`confMILTER_MACROS_HELO', `{verify}, {cert_subject}')dnl
define(`confMILTER_MACROS_ENVFROM', `i, {auth_authen}')dnl
define(`confMILTER_MACROS_ENVRCPT', `{greylist}')dnl
define(`confMIN_QUEUE_AGE', `15m')dnl
define(`confTO_QUEUERETURN',`2d')dnl
dnl define(`confRECEIVED_HEADER', `id $i; $b')dnl
dnl define(`confDOMAIN_NAME', `,mail.domain.ru')dnl
define(`confALLOW_BOGUS_HELO',`True')dnl
define(`confHELO_NAME', `mail.domain.ru')dnl
TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5PLAIN LOGIN')dnl
define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 PLAIN LOGIN')dnl
FEATURE(`delay_checks')dnl
FEATURE(`greet_pause', `3000')dnl
MAILER(local)dnl
MAILER(smtp)dnl

Подскажите, где искать проблему. Перепробовал многое. Подозреваю, что при переименовании хоста, где то осталось старое, внешнее имя mail.domain.ru, но это только догадки.
  • Вопрос задан
  • 3466 просмотров
Решения вопроса 1
@Bloodsn0w Автор вопроса
Нашел решение!
Надо было проверить, какие хосты и ip он считает локальными.
sendmail -bt
>$=w

Команда выведет весь список интерфейсов.
Чтобы убрать лишние (не знаю, почему именно они лишние) надо в .mc файле добавить строку
define(`confDONT_PROBE_INTERFACES',`True')dnl
и список локальных хостов сокращается. Надо, чтобы в нем не было ни имени домена, ни внешнего адреса.
Теперь работает все!
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы