Страница 1 из 1

Sendmail'овский ступор

Добавлено: 2010-05-21 20:31:06
mr. brightside
Помогите, пожалуйста, разобраться с настройкой sendmail.

По традиции, начну сначала.

Исходные данные:
- Sendmail 8.14.3
- Clamav
- SpamAssassin
- Procmail
- dovecot - в перспективе, еще не ставил.

Первые четыре пакета установил. Запустил - запустились. Clamav, SA (конечно же) ставил с milter'om, чтобы интегрировать в сендмыл.

Для procmail создал конфиг в /usr/local/etc/, содердимое которого:

Код: Выделить всё

MAILDIR=/var/mail 
LOGFILE=/var/log/procmaillog 
LOGABSTRACT=no 
VERBOSE=off 
:0 
* ^Subject:.*(SPAM|spam) 
$MAILDIR/spam/
В /var/mai папку /spam/ создал.

Привожу конфиг sendmail:

Код: Выделить всё

divert(-1)
divert(0)
VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.34.2.3.4.1 2009/04/15 03:14:26 kensmith Exp $')
OSTYPE(freebsd6)
DOMAIN(generic)

FEATURE(access_db, `hash -o -T<TMPF> /etc/mail/access')
FEATURE(blacklist_recipients)
FEATURE(local_lmtp)
FEATURE(`local_procmail')dnl - =====добавляем procmail, sendmail будет "цеплять" его при запуске======
FEATURE(mailertable, `hash -o /etc/mail/mailertable')
FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')

------------Использование публичных антиспамовых писем---------------------
FEATURE(blacklist_recipients)dnl
FEATURE(dnsbl)dnl
FEATURE('dnsbl', 'relays.ordb.org', 'Spam bloked - see http://ordb.org/')
FEATURE(dnsbl,'inputs.orbz.org', 'Input Spam bloked - see http://orbz.org/')
FEATURE(dnsbl,'bl.spamcop.net', 'Spam blocked - see http://spamcop.net/bl.shtml?$&{client_addr}')
FEATURE(dnsbl,'ex.dnsbl.org', 'Spam bloked - see http://www.dnsbl.org/')
FEATURE(dnsbl, 'relays.osirusoft.com', 'Spam bloked - see http://relays.osirusoft.com/')
-------------------------------------------------------------------------------------------------


define(`confCW_FILE', `-o /etc/mail/local-host-names') – тут определяем для какого домена Sendmail будет принимать почту
DAEMON_OPTIONS(`Name=IPv4, Family=inet')
DAEMON_OPTIONS(`Name=IPv6, Family=inet6, Modifiers=O')

define(`confBIND_OPTS', `WorkAroundBrokenAAAA')
define(`confNO_RCPT_ACTION', `add-to-undisclosed')
define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy')
define(`confMAX_RCPTS_PER_MESSAGE', `10') – ========запрет рассылки более 10 получателям=========
define(`confMAX_MESSAGE_SIZE', `1048576') – ==========ограничение размера письма в один мегабайт========

define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy') - =======Отключаем команды VRFY и EXPN=========
define(`confMAX_DAEMON_CHILDREN', `10') - =====Максимальное количество sendmail-процессов, которые могут быть запущенны одновременно=====
define(`confCONNECTION_RATE_THROTTLE', `10') - ======Максимальное количество входящих соединений за секунду=======
define(`confTO_IDENT', `0') - ====Отключаем выполнение ident-запросов======

-------Тут подключил антивирус и УбийцуСпама со своими параметрами-------
INPUT_MAIL_FILTER(`clamav', `S=local:/var/run/clamav/clamd.sock, F=, T=S:4m;R:4m')dnl
INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass-milter.sock, F=, T=C:15m;S:4m;R:4m;E:10m')
define(`confINPUT_MAIL_FILTERS', `spamassassin,clamav')dnl

MAILER(procmail)dnl
-------------

MAILER(local)
MAILER(smtp)
В rc.conf добавил строки:

Код: Выделить всё

clamav_clamd_enable="YES"
clamav_freshclam_enable="YES"
clamav_milter_enable="YES"
spamd_enable="YES"
spamass_milter_enable="YES"
Хотя и без этих строк, "руками", все необходимые модули запустил. В процессах висят, все супер, я доволен. Иду собирать сендмыл и получаю:

Код: Выделить всё

[root@server /etc/mail]# make
cp freebsd.mc host.mydomain.ru.mc
/usr/bin/m4 -D_CF_DIR_=/usr/share/sendmail/cf/   /usr/share/sendmail/cf/m4/cf.m4 host.mydomain.ru.mc > shost.mydomain.ru.cf
*** ERROR: missing argument for FEATURE(`dnsbl')
m4: host.mydomain.ru.mc at line 22: include(/usr/share/sendmail/cf/feature/'dnsbl'.m4): No such file or directory
*** Error code 1

Stop in /etc/mail.
Тут вообще не понял даже куда плевать...

Хммм.... смотрю в лог maillog... Повторяются следующие ошибки:

Код: Выделить всё

May 20 18:34:58 server sm-mta[22354]: o4KEYs2r022351: to=<МойЯщикНаМэйле@mail.ru>, delay=00:00:04, xdelay=00:00:01, mailer=esmtp, pri=30351, relay=mxs.mail.ru. [94.100.176.20], dsn=
May 20 18:34:58 server sm-mta[22354]: o4KEYs2r022351: SYSERR(root): MX list for mydomain.ru. points back to host.mydomain.ru
May 20 18:34:58 server sm-mta[22354]: o4KEYs2r022351: o4KEYw2r022354: DSN: MX list for mydomain.ru. points back to host.mydomain.ru
Накосячил с MX записями? или нет?
Своего ДНСа пока не имею, посему воспользовался услугами руцентра. МХ-запись там выглядит следующим образом:

Код: Выделить всё

mydomain.ru     MX      10       host.mydomain.ru
mydomain.ru - мой домен, и, соответственно, host.mydomain.ru - серв, на котором валяется сайт и с которого хочу отправлять почту

Следущее, что смущает в логе - касается SA:

Код: Выделить всё

May 20 18:53:51 server spamd[724]: spamd: setuid to root succeeded
May 20 18:53:51 server spamd[724]: spamd: still running as root: user not specified with -u, not found, or set to root, falling back to nobody
May 20 18:53:51 server spamd[724]: spamd: processing message <20100520145344.M47489@mydomain.ru> for root:65534
Сделать так, чтобы SA запускался не от рута?

Далее в local-host-names задал:

Код: Выделить всё

mydomain.ru
host.mydomain.ru
До того, как я определил МХ-записи почту я мог отправлять. После определения - нет. Dovecot не ставил, соответственно пытаюсь отправить почту прямо с сервака посредством веб-морды в лице openwebmail, который, кстати, встал замечательно! :crazy:

Помогите разобраться, что не так... Уже две недели шаманю. Из принципа же хочу добить сендмыл, понять, как он работает и, пока не разберусь, не перейду на postfix или exim. На ixbt посоветовали книгу O'Reilly "Sendmail" - действительно крутая, только там 1300 страниц, не хочу с ума сойти, пока читаю да и время терять... :fool: :oops:

Re: Sendmail'овский ступор

Добавлено: 2010-10-03 18:39:39
Alex Keda
exim заюзайте