PDA

Просмотр полной версии : Sendmail долго отправляет



PooH
31.07.2010, 14:59
flynet# uname -a
FreeBSD flynet.su 8.0-RELEASE-p2 FreeBSD 8.0-RELEASE-p2
ISPmanager Pro из коробки, MTA - Sendmail.
Подключены Greylist и SpamAssassin - по тестам - работают адекватно.

Проблема такая, при отправке писем из скриптов сайта наблюдается 5 секундная задержка. Точнее задержка в 5 секунда есть всегда, и из скриптов и из почтовых менеджеров. Но если с почтовым менеджером это не так страншно, то при отпраке с сайта (регистрация, обратная связь) - это очень напрягает.

Диагностика:
/var/log/maillog

Jul 31 12:28:56 flynet sendmail[99015]: o6V5Suk4099015: Authentication-Warning: flynet.su: www set sender to kovalchuk@flynet.su using -f
Jul 31 12:28:56 flynet sendmail[99015]: o6V5Suk4099015: from=kovalchuk@flynet.su, size=783, class=0, nrcpts=1, msgid=<1c298fa7686b29112dee55a2ce92b881@www.fl
ynet.su>, relay=www@localhost
Jul 31 12:29:01 flynet sm-mta[99016]: STARTTLS=server, relay=flynet.su [127.0.0.1], version=TLSv1/SSLv3, verify=NO, cipher=DHE-RSA-AES256-SHA, bits=256/256
Jul 31 12:29:01 flynet sendmail[99015]: STARTTLS=client, relay=[127.0.0.1], version=TLSv1/SSLv3, verify=FAIL, cipher=DHE-RSA-AES256-SHA, bits=256/256
Jul 31 12:29:01 flynet milter-greylist: o6V5T15A099016: skipping greylist because address 127.0.0.1 is whitelisted, (from=<kovalchuk@flynet.su>, rcpt=<servic
e@flynet.su>, addr=flynet.su[127.0.0.1]) ACL 127
Jul 31 12:29:01 flynet sm-mta[99016]: o6V5T15A099016: from=<kovalchuk@flynet.su>, size=1001, class=0, nrcpts=1, msgid=<1c298fa7686b29112dee55a2ce92b881@www.f
lynet.su>, proto=ESMTP, daemon=IPv4, relay=flynet.su [127.0.0.1]
Jul 31 12:29:01 flynet sm-mta[99016]: o6V5T15A099016: Milter add: header: X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.5 (flynet.su
[127.0.0.1]); Sat, 31 Jul 2010 12:29:01 +0700 (NOVST)
Jul 31 12:29:01 flynet spamd[98986]: spamd: connection from flynet.su [127.0.0.1] at port 8574
Jul 31 12:29:01 flynet spamd[98986]: spamd: setuid to root succeeded
Jul 31 12:29:01 flynet spamd[98986]: spamd: still running as root: user not specified with -u, not found, or set to root, falling back to nobody
Jul 31 12:29:01 flynet spamd[98986]: spamd: processing message <1c298fa7686b29112dee55a2ce92b881@www.flynet.su> for root:65534
Jul 31 12:29:05 flynet spamd[98986]: plugin: eval failed: bayes: (in learn) locker: safe_lock: cannot create tmp lockfile /root/.spamassassin/bayes.lock.flynet.su.98986 for /root/.spamassassin/bayes.lock: Permission denied
Jul 31 12:29:05 flynet spamd[98986]: spamd: clean message (-1.0/5.0) for root:65534 in 3.8 seconds, 1428 bytes.
Jul 31 12:29:05 flynet spamd[98986]: spamd: result: . -1 - ALL_TRUSTED,T_RP_MATCHES_RCVD scantime=3.8,size=1428,user=root,uid=65534,require d_score=5.0,rhost=
flynet.su,raddr=127.0.0.1,rport=8574,mid=<1c298fa7686b29112dee55a2ce92b881@www.flynet.su>,autolearn=unavailable
Jul 31 12:29:05 flynet sm-mta[99016]: o6V5T15A099016: Milter add: header: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD\n\ta
utolearn=unavailable version=3.3.1
Jul 31 12:29:05 flynet sm-mta[99016]: o6V5T15A099016: Milter add: header: X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on flynet.su
Jul 31 12:29:05 flynet sendmail[99015]: o6V5Suk4099015: to=service@flynet.su, ctladdr=kovalchuk@flynet.su (1006/1006), delay=00:00:09, xdelay=00:00:09, maile
r=relay, pri=30783, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (o6V5T15A099016 Message accepted for delivery)
Jul 31 12:29:05 flynet spamd[98983]: prefork: child states: II
Jul 31 12:29:05 flynet sm-mta[99028]: o6V5T15A099016: to=\\virtuser_1024, ctladdr=<kovalchuk@flynet.su> (1013/1006), delay=00:00:04, xdelay=00:00:00, mailer=
local, pri=31601, relay=local, dsn=2.0.0, stat=Sent

Как видно задержка происходит перед третей строкой лога, что конкретно происходит на этом этапе - я так и не понял. При отключении SpamAssassin задержка не увеличивается, хотя в логах видно что он изучает письмо несколько секунд, но видимо уже после того как письмо приянто сервером.

При проверке через telnet (как локально так и удаленно) тоже задержка 5 секунд. И в логах появляется
Jul 31 12:49:50 flynet sm-mta[567]: o6V5hBsD000567: vpn.flynet.su [88.204.112.243] did not issue MAIL/EXPN/VRFY/ETRN during connection to IPv4


# cat /etc/hosts
::1 localhost localhost.flynet.su
127.0.0.1 localhost localhost.flynet.su
62.64.24.36 isp.flynet.su isp
62.64.24.36 isp.flynet.su.
62.64.24.36 flynet.su
flynet# cat /etc/resolv.conf
domain flynet.su
nameserver 195.230.64.13
nameserver 195.230.95.66
nameserver 4.2.2.2


Т.е. с DNS все в порядке, да и по форумам если бы были проблемы с DNS то задержки должны быть не 5 секунда а 30.

Никаких ручных измений в конфиги не вносилось, все настраивала панель.

Вопрос 1. Как сделать чтоб Sendmail сразу принимала письма к отправке (убрать 5 секундную задержку) ?

Вопрос 2. Почему Spamassasin лезет в /root/.spamassassin/bayes.lock ? Говорит что не зватает прав. Его лучше направить в другую директорию или открыть права?

ls
31.07.2010, 23:39
Добавьте в /etc/mail/flynet.su.mc до MAILER строку

define(`confTO_IDENT', `0')dnl
И пересоберите конфиг/перезапустите sendmail

cd /etc/mail/
make install restart
и задержки в 5 секунд не будет при ответе
также задержку могут вызывать неработающие списки DNSBL, проверьте что у вас там, рекомендую использовать bl.spamcop.net и zen.spamhaus.org