Доброго времени суток. Помогите разобраться пожалуйста с Sendmail. уже давно мучаюсь, не получаться никак.Система Debian 5.0
есть локальный домен company.local
есть зарегистрированный домен company.com
почтовый сервер mail.company.local поставил за натом и пробросил 25-й порт.
sendmail, как я понял должен работать так - запрещен любой релей без аутентификации, это ведь подразумевает что почта направленная на user@company.com приходит без аутентификации и должна переходить в dbmail-lmtp.
так же установил sasl и настроил его смотреть пользователей в базе mysql.
настраиваю так:
- в ассеss оставил только релей для 127.0.0.1
- local-host-names - пустой
- mailertable: company.com dbmail-lmtp:[127.0.0.1]
- alias не трогал, ведь почтой должен заниматься dbmail.
- создал файлы dbmail.m4 dbmail-lmtp.m4, они в нете везде одинаковые предлагаються.
sendmail.mc:
define(`_USE_ETC_MAIL_')dnl
include(`/usr/share/sendmail/cf/m4/cf.m4')dnl
VERSIONID(`$Id: sendmail.mc, v 8.14.3-5 2008-07-15 22:30:00 cowboy Exp $')
OSTYPE(`debian')dnl
DOMAIN(`debian-mta')dnl
undefine(`confHOST_STATUS_DIRECTORY')dnl
FEATURE(`no_default_msa')dnl
DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp')dnl
define(`confPRIVACY_FLAGS',dnl
`needmailhelo,needexpnhelo,needvrfyhelo,restrictqrun,restrictexpand,nobodyreturn,authwarnings')dnl
define(`confCONNECTION_RATE_THROTTLE', `15')dnl
define(`confCONNECTION_RATE_WINDOW_SIZE',`10m')dnl
FEATURE(`access_db', , `skip')
FEATURE(`greet_pause', `1000')
TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confLOG_LEVEL',21)dnl
FEATURE(`mailertable')dnl
FEATURE(`delay_checks', `friend', `n')dnl
define(`confDELIVERY_MODE',`background')dnl
define(`confMIN_QUEUE_AGE',`31m')dnl
define(`confTO_IDENT',`1s')dnl
define(`confBAD_RCPT_THROTTLE',`3')dnl
FEATURE(`conncontrol', `nodelay', `terminate')dnl
FEATURE(`ratecontrol', `nodelay', `terminate')dnl
MAILER_DEFINITIONS
MAILER(`local')dnl
MAILER(`smtp')dnl
MAILER(`dbmail')dnl
MAILER(`dbmail-lmtp')dnl
И тут возникает сложность. когда отправляю почту на user@company.com с the bat например с использованием smtp-auth почта нормально приходит и ее подхватывает dbmail-lmtp. А вот любой другой почтовик не может мне ее отправть, sendmail пишет Relaying denied. Proper authentication required.
А когда я добавляю в sendmail.mc любую из строк:
define(`confDOMAIN_NAME', `company.com')dnl
или
Cwcompany.com
Cmcompany.com
Ckcompany.com
Djcompany.com
senmdail сразу понимает что это почта локальная, принимает без аутентификации НО использует mailer=local, проверяет aliases и доставляет ее в /var/spool/mail/$u
тоесть я не могу заставить его использовать dbmail.
.. довольно долго ковырял конфиги, пробовал делать это все для company.local без выхода в интернет. одно и то же. итого:
почта или всегда воспринимает локальные адреса как релей и требует аутентификации, но потом кладет ее в dbmail.
или принимает почту на user@company.com нормально, но не хочет использовать dbmail, а использует mailer=local.
Может кто-то сможет подсказать что я не увидел или где ошибся. Спасибо!