Зацикливание Postfix! HELP!

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Sweeper_jr
ефрейтор
Сообщения: 61
Зарегистрирован: 2006-01-19 12:48:12
Контактная информация:

Зацикливание Postfix! HELP!

Непрочитанное сообщение Sweeper_jr » 2006-01-19 13:14:27

ОС FreeBSD 4.11
Поставил почтовик по статье http://www.lissyara.su/?id=1019 , спасибо автору, но "коечто" не работает.
При отправке письма с localhost или с другого хоста картина такая (maillog):

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

Jan 16 18:42:45 box postfix/smtpd[765]: connect from localhost[127.0.0.1] 
Jan 16 18:43:32 box postfix/smtpd[765]: ED8444AAC: client=localhost[127.0.0.1]
Jan 16 18:43:44 box postfix/cleanup[768]: ED8444AAC: message-id=<20060116164302.ED8444AAC@box.infocon.relc.com>
Jan 16 18:43:44 box postfix/qmgr[289]: ED8444AAC: from=<bess1@infocon.relc.com>, size=357, nrcpt=1 (queue active)
Jan 16 18:43:44 box clamsmtpd: 100031: accepted connection from: 127.0.0.1
Jan 16 18:43:44 box postfix/smtpd[770]: connect from localhost[127.0.0.1]
Jan 16 18:43:44 box postfix/smtpd[770]: E31C24AB8: client=localhost[127.0.0.1]
Jan 16 18:43:45 box postfix/cleanup[768]: E31C24AB8: message-id=<20060116164302.ED8444AAC@box.infocon.relc.com>
Jan 16 18:43:45 box postfix/qmgr[289]: E31C24AB8: from=<bess1@infocon.relc.com>, size=586, nrcpt=1 (queue active)
Jan 16 18:43:45 box postfix/smtp[769]: ED8444AAC: to=<bess2@infocon.relc.com>, relay=127.0.0.1[127.0.0.1], delay=43, status=sent (250 Ok: queued as E31C24AB8)
Jan 16 18:43:45 box clamsmtpd: 100031: from=bess1@infocon.relc.com, to=bess2@infocon.relc.com, status=CLEAN
Jan 16 18:43:45 box postfix/qmgr[289]: ED8444AAC: removed
Jan 16 18:43:45 box postfix/smtpd[770]: disconnect from localhost[127.0.0.1]
далее опять

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

Jan 16 18:43:45 box clamsmtpd: 100032: accepted connection from: 127.0.0.1
Jan 16 18:43:45 box postfix/smtpd[770]: connect from localhost[127.0.0.1]
Jan 16 18:43:45 box postfix/smtpd[770]: 40C704AC7: client=localhost[127.0.0.1]
Jan 16 18:43:45 box postfix/cleanup[768]: 40C704AC7: message-id=<20060116164302.ED8444AAC@box.infocon.relc.com>
Jan 16 18:43:45 box postfix/qmgr[289]: 40C704AC7: from=<bess1@infocon.relc.com>, size=814, nrcpt=1 (queue active)
Jan 16 18:43:45 box postfix/smtp[771]: E31C24AB8: to=<bess2@infocon.relc.com>, relay=127.0.0.1[127.0.0.1], delay=1, status=sent (250 Ok: queued as 40C704AC7)
Jan 16 18:43:45 box clamsmtpd: 100032: from=bess1@infocon.relc.com, to=bess2@infocon.relc.com, status=CLEAN
Jan 16 18:43:45 box postfix/smtpd[770]: disconnect from localhost[127.0.0.1]
Jan 16 18:43:45 box postfix/qmgr[289]: E31C24AB8: removed
и так раз двадцать, а потом

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

Jan 16 18:43:58 box clamsmtpd: 100061: accepted connection from: 127.0.0.1
Jan 16 18:43:58 box postfix/smtpd[770]: connect from localhost[127.0.0.1]
Jan 16 18:43:58 box postfix/smtpd[770]: 481F54B28: client=localhost[127.0.0.1]
Jan 16 18:43:58 box clamsmtpd: 100061: from=bess1@infocon.relc.com, to=bess2@infocon.relc.com, status=CLEAN
Jan 16 18:43:58 box postfix/smtp[769]: F2FCF4B27: to=<bess2@infocon.relc.com>, relay=127.0.0.1[127.0.0.1], delay=1, status=bounced (host 127.0.0.1[127.0.0.1] said: 554 Error: too many hops (in reply to end of DATA command))
Jan 16 18:43:58 box postfix/smtpd[770]: disconnect from localhost[127.0.0.1]
Jan 16 18:43:58 box postfix/cleanup[768]: 7ABAB4B22: message-id=<20060116164358.7ABAB4B22@box.infocon.relc.com>
Jan 16 18:43:58 box postfix/qmgr[289]: 7ABAB4B22: from=<>, size=13124, nrcpt=1 (queue active)
Jan 16 18:43:58 box postfix/qmgr[289]: F2FCF4B27: removed
Jan 16 18:43:58 box postfix/virtual[773]: 7ABAB4B22: to=<bess1@infocon.relc.com>, relay=virtual, delay=0, status=sent (delivered to maildir)
Jan 16 18:43:58 box postfix/qmgr[289]: 7ABAB4B22: removed
На MySQL запросы поступают, при каждом цикле "зацикливания".
В чем может быть грабли, подскажите, млин?!
А то я уже задолбался гуглить... :twisted:

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35046
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2006-01-19 15:48:21

интересно получается... локалхост шлёт сообщения....

прям и удалённо тоже самое? листинг дай?

И писем в итоге сколько приходит? Или неи одного?
Убей их всех! Бог потом рассортирует...

Гость
проходил мимо

Непрочитанное сообщение Гость » 2006-01-19 16:13:04

lissyara писал(а):интересно получается... локалхост шлёт сообщения....
я имел ввиду отправляю почту локально (telnet localhost 25)
box# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 box.infocon.relc.com ESMTP Postfix
mail from: bess1@infocon.relc.com
250 Ok
rcpt to: bess2@infocon.relc.com
250 Ok
data
354 End data with <CR><LF>.<CR><LF>
test
.
250 Ok: queued as 3E1254AEE
quit
221 Bye
Connection closed by foreign host.
lissyara писал(а):прям и удалённо тоже самое? листинг дай?
а удаленно, также только вместо localhost IP сервака
lissyara писал(а):И писем в итоге сколько приходит? Или неи одного?
писем приходит не одного, то есть возвращается обратно от MAILER-DAEMON с Subject: Undelivered Mail Returned to Sender, и ошибкой 554 Error: too many hops

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35046
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2006-01-19 16:22:51

хм... ты его релеем самого на себя настроил? :wink:
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Sweeper_jr
ефрейтор
Сообщения: 61
Зарегистрирован: 2006-01-19 12:48:12
Контактная информация:

Непрочитанное сообщение Sweeper_jr » 2006-01-19 17:07:43

вот блин, а где смотреть?
в relay_domains ?

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35046
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2006-01-19 19:53:48

Выложи конфиг...
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Sweeper_jr
ефрейтор
Сообщения: 61
Зарегистрирован: 2006-01-19 12:48:12
Контактная информация:

Непрочитанное сообщение Sweeper_jr » 2006-01-20 13:00:17

Вот конфиги Postfix. Мапсы к MySQL один к одному как у тебя в статье.

main.cf

queue_directory = /var/spool/postfix
command_directory = /usr/local/sbin
daemon_directory = /usr/local/libexec/postfix
mail_owner = postfix
myhostname = box.infocon.relc.com
mydomain = infocon.relc.com
myorigin = $mydomain
local_recipient_maps = $virtual_mailbox_maps
unknown_local_recipient_reject_code = 550
mynetworks_style = subnet
mynetworks = 192.168.3.0/24, 127.0.0.0/8
debug_peer_level = 2
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/local/sbin/sendmail
newaliases_path = /usr/local/bin/newaliases
mailq_path = /usr/local/bin/mailq
setgid_group = maildrop
html_directory = no
manpage_directory = /usr/local/man
sample_directory = /usr/local/etc/postfix
readme_directory = no

local_transport = virtual
smtpd_recipient_restrictions =
permit_mynetworks,
reject_non_fqdn_hostname,
reject_non_fqdn_sender,
reject_unauth_destination,
reject_unauth_pipelining,
reject_invalid_hostname,
reject_rbl_client list.dsbl.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client sbl-xbl.spamhaus.org

content_filter = scan:127.0.0.1:10025
receive_override_options = no_address_mappings

relay_domains = mysql:/usr/local/etc/postfix/mysql_relay_domains_maps.cf

virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:125
virtual_mailbox_base = /opt/var/spool/postfix/virtual
virtual_mailbox_domains = mysql:/usr/local/etc/postfix/mysql_relay_domains_maps.cf
virtual_mailbox_limit = 51200000
virtual_mailbox_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 125
virtual_transport = virtual
virtual_uid_maps = static:125
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailboxes_limit_maps.cf
virtual_mailbox_limit_override= yes
virtual_maildir_limit_message = "Mailbox is FULL!"
virtual_overquota_bounce = yes
unknown_local_recipient_reject_code = 550
transport_map = mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf
message_size_limit = 10240000
smtpd_recipient_limit = 5

master.cf

smtp inet n - n - - smtpd
pickup fifo n - n 60 1 pickup
cleanup unix n - n - 0 cleanup
qmgr fifo n - n 300 1 qmgr
rewrite unix - - n - - trivial-rewrite
bounce unix - - n - 0 bounce
defer unix - - n - 0 bounce
trace unix - - n - 0 bounce
verify unix - - n - 1 verify
flush unix n - n 1000? 0 flush
proxymap unix - - n - - proxymap
smtp unix - - n - - smtp
relay unix - - n - - smtp
showq unix n - n - - showq
error unix - - n - - error
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - n - - lmtp
anvil unix - - n - 1 anvil
maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
old-cyrus unix - n n - - pipe
flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user}
cyrus unix - n n - - pipe
user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
uucp unix - n n - - pipe
flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail unix - n n - - pipe
flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp unix - n n - - pipe
flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient


scan unix - - n - 16 smtp -o smtp_send_xforward_command=yes
127.0.0.1:10026 inet n - n - 16 smtpd
-o content-filter=
-o smtpd_helo_restrictions=
-o smtpd_client_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks_style=host
-o smtpd_autorized_xforward_host=127.0.0.1/8

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35046
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2006-01-20 13:52:55

конфиг не совсем как у меня.

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

PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin 
xxgdb $daemon_directory/$process_name $process_id & sleep 5
это чего?
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Sweeper_jr
ефрейтор
Сообщения: 61
Зарегистрирован: 2006-01-19 12:48:12
Контактная информация:

Непрочитанное сообщение Sweeper_jr » 2006-01-20 14:01:27

# The debugger_command specifies the external command that is executed
# when a Postfix daemon program is run with the -D option.

debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin xxgdb $daemon_directory/$process_name $process_id & sleep 5

Postfix запускается из /usr/local/etc/rc.d ярлыком postfix.sh -> /usr/local/sbin/postfix

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35046
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2006-01-20 14:22:13

угу... а письма у тя не раз в 5 секунд начинают слаться?

====
Вот честно - не знаю даже :))) Приведи свой конфиг к моему - тогда заработает....
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Sweeper_jr
ефрейтор
Сообщения: 61
Зарегистрирован: 2006-01-19 12:48:12
Контактная информация:

Непрочитанное сообщение Sweeper_jr » 2006-01-20 17:13:43

Перешерстил весь конфиг, теперь один к одному как у тебя.
Попробовал послать письмо, тоже самое, только в логах добавилось

Jan 20 15:44:18 box postfix/trivial-rewrite[645]: warning: do not list domain infocon.relc.com in BOTH virtual_mailbox_domains and relay_domains
Jan 20 15:44:39 box postfix/trivial-rewrite[645]: warning: do not list domain infocon.relc.com in BOTH virtual_mailbox_domains and relay_domains

в начале циклирования и в конце, когда MAILER-DAEMON отправляет обратку с ошибкой. В принципе так и есть. Ведь virtual_mailbox_domains и relay_domains имеют одинаковые мапсы (вот здесь я не до конца понял).

И еще, письмо с ошибкой содержит заголовки Received: такое количество, какое количество циклов
....
Received: from box.infocon.relc.com (localhost [127.0.0.1])
by box.infocon.relc.com (Postfix) with ESMTP id E114F4AE5
for <bess2@infocon.relc.com>; Fri, 20 Jan 2006 16:05:29 +0200 (EET)
.... n раз

атакже заголовок прописный антивирусом
....
X-AV-Checked: ClamAV using ClamSMTP
.... n раз

Я бы еще где-нибудь копнул, но все уже перекопано :wink:

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35046
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2006-01-20 17:30:54

Хде новый конфиг? Который один-в-один?
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Sweeper_jr
ефрейтор
Сообщения: 61
Зарегистрирован: 2006-01-19 12:48:12
Контактная информация:

Непрочитанное сообщение Sweeper_jr » 2006-01-20 17:36:51

сорри... вот:

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

sendmail_path = /usr/local/sbin/sendmail
newaliases_path = /usr/local/bin/newaliases
mailq_path = /usr/local/bin/mailq
setgid_group = maildrop
html_directory = no
manpage_directory = /usr/local/man
sample_directory = /usr/local/etc/postfix
readme_directory = no
local_transport = virtual
smtpd_recipient_restrictions =
 permit_mynetworks,
 reject_non_fqdn_hostname,
 reject_non_fqdn_sender,
 reject_unauth_destination,
 reject_unauth_pipelining,
 reject_invalid_hostname,
 reject_rbl_client list.dsbl.org,
 reject_rbl_client bl.spamcop.net,
 reject_rbl_client sbl-xbl.spamhaus.org
content_filter = scan:127.0.0.1:10025
receive_override_options = no_address_mappings
relay_domains = mysql:/usr/local/etc/postfix/mysql_relay_domains_maps.cf
virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:125
virtual_mailbox_base = /opt/var/spool/postfix/virtual
virtual_mailbox_domains = mysql:/usr/local/etc/postfix/mysql_relay_domains_maps.cf
virtual_mailbox_limit = 51200000
virtual_mailbox_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 125
virtual_transport = virtual
virtual_uid_maps = static:125
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailboxes_limit_maps.cf
virtual_mailbox_limit_override= yes
virtual_maildir_limit_message = "Mailbox is FULL!"
virtual_overquota_bounce = yes
unknown_local_recipient_reject_code = 550
transport_map = mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf
message_size_limit = 10240000
smtpd_recipient_limit = 5

Аватара пользователя
Sweeper_jr
ефрейтор
Сообщения: 61
Зарегистрирован: 2006-01-19 12:48:12
Контактная информация:

Непрочитанное сообщение Sweeper_jr » 2006-01-23 18:28:34

Ситуация проясняется... Почему то только после переконфигурирования Postfix пришло мне в голову что это возможно антивирус виноват в зацикливании :idea: . Отключил ClamAV (убрал все с ним связанное из master.cf и main.cf) и все нормально, никакого зацикливания. Письма отправляются и падают в соответствующую dir. (через POP я еще не пробовал тягать). Но в логах все равно пишет по-мимо всего полезного :

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

Jan 23 17:08:07 box postfix/trivial-rewrite[752]: warning: do not list domain box.infocon.relc.com in BOTH mydestination and virtual_mailbox_domains 
Закоментировал relay_domains в main.cf, теперь нормально, логи "чисты", без всяких предупреждений.

Может есть какие-нить мысли насчет ClamAV (а может ClamSMTP?), что у него зацикливает?

Аватара пользователя
grave
ефрейтор
Сообщения: 65
Зарегистрирован: 2006-02-20 16:52:04
Откуда: Сургут
Контактная информация:

Непрочитанное сообщение grave » 2006-02-20 17:11:10

пользователь clamav в какой группе состоит?
Acta est fabula..