Страница 1 из 1
Отправляют одно, приходит несколько
Добавлено: 2009-11-08 0:26:43
Михалыч
На серваке стоит exim и dovecot. Всё нормально работает , но есть одно заманэ примерно половина входящих писем дублируются по 7-10 раз. т.е отправитель отослал одно письмо а я получил их 10 копий. Причём временной интервал между копиями одного письма состовляет от получаса до двух часов.
В чём может быть причина в exim или dovecot ? dovecot работает и как pop3 и imap.
Спам асасинов и прочего не стоит.
Может быть ещё нужна какая-то инфа ?
Re: Отправляют одно, приходит несколько
Добавлено: 2009-11-08 1:24:18
---nebo---
DOVECOT - MDA, от тут 100% не при чем.
Ну давайте конфиг EXIM'а + /etc/aliases.
В екзиме особенно интересен раздел
Re: Отправляют одно, приходит несколько
Добавлено: 2009-11-08 1:25:09
Cancer
Показывайте логи!!!
Может быть проблема еще в фильтрах почтового клиента !
Re: Отправляют одно, приходит несколько
Добавлено: 2009-11-08 1:45:57
Михалыч
/etc/aliases
Код: Выделить всё
postmaster: root
nobody: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
security: root
/etc/exim.conf
Код: Выделить всё
perl_startup = do '/etc/exim.pl'
daemon_smtp_ports = 25 : 587
message_size_limit = 20M
smtp_receive_timeout = 5m
message_body_visible = 3000
print_topbitchars = true
deliver_queue_load_max = 5
split_spool_directory = yes
smtp_accept_max = 50
smtp_connect_backlog = 40
smtp_accept_max_per_host = 10
smtp_accept_queue = 22
smtp_accept_queue_per_connection = 10
recipients_max = 16
recipients_max_reject = true
accept_8bitmime
helo_allow_chars = _
log_selector = \
+delivery_size \
+sender_on_delivery \
+received_recipients \
+received_sender \
+smtp_confirmation \
+subject \
+smtp_incomplete_transaction \
-dnslist_defer \
-host_lookup_failed \
-queue_run \
-rejected_header \
-retry_defer \
-skip_delivery
syslog_duplication = false
acl_smtp_rcpt = check_recipient
acl_smtp_data = check_message
addresslist whitelist_senders = lsearch;/etc/virtual/whitelist_senders
addresslist blacklist_senders = lsearch;/etc/virtual/blacklist_senders
domainlist blacklist_domains = lsearch;/etc/virtual/blacklist_domains
domainlist whitelist_domains = lsearch;/etc/virtual/whitelist_domains
domainlist local_domains = lsearch;/etc/virtual/domains
domainlist relay_domains = lsearch;/etc/virtual/domains : localhost
domainlist use_rbl_domains = lsearch;/etc/virtual/use_rbl_domains
hostlist auth_relay_hosts = *
hostlist bad_sender_hosts = lsearch;/etc/virtual/bad_sender_hosts
hostlist bad_sender_hosts_ip = net-lsearch;/etc/virtual/bad_sender_hosts
hostlist relay_hosts = net-lsearch;/etc/virtual/pophosts : 127.0.0.1
hostlist whitelist_hosts = lsearch;/etc/virtual/whitelist_hosts
hostlist whitelist_hosts_ip = net-lsearch;/etc/virtual/whitelist_hosts
allow_domain_literals = false
never_users = root
host_lookup = *
rfc1413_hosts = *
rfc1413_query_timeout = 0s
ignore_bounce_errors_after = 12h
timeout_frozen_after = 7d
trusted_users = mail:majordomo:apache
tls_certificate = /etc/exim.cert
tls_privatekey = /etc/exim.key
tls_require_ciphers = ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP
tls_advertise_hosts = *
begin acl
check_recipient:
deny domains = +local_domains
local_parts = ^[.] : ^.*[@%!/|]
accept hosts = +auth_relay_hosts
condition = ${if eq {$interface_port}{587} {yes}{no}}
endpass
message = relay not permitted, authentication required
authenticated = *
deny domains = !+local_domains
local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./
accept hosts = :
accept sender_domains = +whitelist_domains
accept hosts = +whitelist_hosts
accept hosts = +whitelist_hosts_ip
accept senders = +whitelist_senders
accept local_parts = postmaster
domains = +local_domains
accept local_parts = abuse
domains = +local_domains
accept local_parts = hostmaster
domains =+local_domains
deny message = Email blocked by LBL - to unblock see http://www.example.com/
domains = +use_rbl_domains
sender_domains = +blacklist_domains
deny message = Email blocked by BSHL - to unblock see http://www.example.com/
domains = +use_rbl_domains
hosts = +bad_sender_hosts
deny message = Email blocked by BSHL - to unblock see http://www.example.com/
domains = +use_rbl_domains
hosts = +bad_sender_hosts_ip
deny message = Email blocked by BSAL - to unblock see http://www.example.com/
domains = use_rbl_domains
deny senders = +blacklist_senders
deny message = Email blocked by SPAMHAUS - to unblock see http://www.example.com/
hosts = !+relay_hosts
domains = +use_rbl_domains
!authenticated = *
dnslists = zen.spamhaus.org
deny message = Email blocked by NJABL - to unblock see http://www.example.com/
hosts = !+relay_hosts
domains = +use_rbl_domains
!authenticated = *
dnslists = dnsbl.njabl.org
accept domains = +local_domains
endpass
message = "Unknown User"
verify = recipient
accept domains = +relay_domains
endpass
verify=recipient
accept hosts = +relay_hosts
accept hosts = +auth_relay_hosts
endpass
message = authentication required
authenticated = *
deny message = relay not permitted
deny message = relay not permitted
check_message:
accept
begin authenticators
plain:
driver = plaintext
public_name = PLAIN
server_prompts = :
server_condition = "${perl{smtpauth}}"
server_set_id = $2
login:
driver = plaintext
public_name = LOGIN
server_prompts = "Username:: : Password::"
server_condition = "${perl{smtpauth}}"
server_set_id = $1
begin routers
lookuphost:
driver = dnslookup
domains = ! +local_domains
ignore_target_hosts = 127.0.0.0/8
condition = "${perl{check_limits}}"
transport = remote_smtp
no_more
majordomo_aliases:
driver = redirect
allow_defer
allow_fail
data = ${if exists{/etc/virtual/${domain}/majordomo/list.aliases}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/majordomo/list.aliases}}}}
domains = lsearch;/etc/virtual/domainowners
file_transport = address_file
group = daemon
pipe_transport = majordomo_pipe
retry_use_local_part
no_rewrite
user = majordomo
majordomo_private:
driver = redirect
allow_defer
allow_fail
condition = "${if or { {eq {$received_protocol} {local}} \
{eq {$received_protocol} {spam-scanned}} } {true} {false} }"
data = ${if exists{/etc/virtual/${domain}/majordomo/private.aliases}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/majordomo/private.aliases}}}}
domains = lsearch;/etc/virtual/domainowners
file_transport = address_file
group = daemon
pipe_transport = majordomo_pipe
retry_use_local_part
user = majordomo
domain_filter:
driver = redirect
allow_filter
no_check_local_user
condition = "${if exists{/etc/virtual/${domain}/filter}{yes}{no}}"
user = "${lookup{$domain}lsearch{/etc/virtual/domainowners}{$value}}"
group = "mail"
file = /etc/virtual/${domain}/filter
directory_transport = address_file
pipe_transport = virtual_address_pipe
retry_use_local_part
no_verify
uservacation:
driver = accept
condition = ${lookup{$local_part} lsearch {/etc/virtual/${domain}/vacation.conf}{yes}{no}}
require_files = /etc/virtual/${domain}/reply/${local_part}.msg
transport = uservacation
unseen
userautoreply:
driver = accept
condition = ${lookup{$local_part} lsearch {/etc/virtual/${domain}/autoresponder.conf}{yes}{no}}
require_files = /etc/virtual/${domain}/reply/${local_part}.msg
transport = userautoreply
unseen
virtual_aliases_nostar:
driver = redirect
allow_defer
allow_fail
data = ${if exists{/etc/virtual/${domain}/aliases}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/aliases}}}}
file_transport = address_file
group = mail
pipe_transport = virtual_address_pipe
retry_use_local_part
unseen
virtual_user:
driver = accept
condition = ${perl{save_virtual_user}}
domains = lsearch;/etc/virtual/domainowners
group = mail
retry_use_local_part
transport = virtual_localdelivery
virtual_aliases:
driver = redirect
allow_defer
allow_fail
condition = ${if eq {}{${if exists{/etc/virtual/${domain}/aliases}{${lookup{$local_part}lsearch{/etc/virtual/${domain}/aliases}}}}}{yes}{no}}
data = ${if exists{/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}
file_transport = address_file
group = mail
pipe_transport = virtual_address_pipe
retry_use_local_part
drop_solo_alias:
driver = redirect
allow_defer
allow_fail
data = ${if exists{/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch{/etc/virtual/$domain/aliases}}}}
file_transport = devnull
group = mail
pipe_transport = devnull
retry_use_local_part
userforward:
driver = redirect
allow_filter
check_ancestor
check_local_user
no_expn
file = $home/.forward
file_transport = address_file
pipe_transport = address_pipe
reply_transport = address_reply
no_verify
system_aliases:
driver = redirect
allow_defer
allow_fail
data = ${lookup{$local_part}lsearch{/etc/aliases}}
file_transport = address_file
pipe_transport = address_pipe
retry_use_local_part
localuser:
driver = accept
check_local_user
condition = "${if eq {$domain} {$primary_hostname} {yes} {no}}"
transport = local_delivery
begin transports
spamcheck:
driver = pipe
batch_max = 100
command = /usr/sbin/exim -oMr spam-scanned -bS
current_directory = "/tmp"
group = mail
home_directory = "/tmp"
log_output
message_prefix =
message_suffix =
return_fail_output
no_return_path_add
transport_filter = /usr/bin/spamc -u ${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}
use_bsmtp
user = mail
majordomo_pipe:
driver = pipe
group = daemon
return_fail_output
user = majordomo
local_delivery:
driver = appendfile
delivery_date_add
envelope_to_add
directory = /home/$local_part/Maildir/
directory_mode = 770
create_directory = true
maildir_format
group = mail
mode = 0660
return_path_add
user = ${local_part}
virtual_localdelivery:
driver = appendfile
create_directory
delivery_date_add
directory_mode = 770
envelope_to_add
directory = /home/${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}/imap/${domain}/${local_part}/Maildir
maildir_format
group = mail
mode = 660
return_path_add
user = "${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}"
quota = ${if exists{/etc/virtual/${domain}/quota}{${lookup{$local_part}lsearch*{/etc/virtual/${domain}/quota}{$value}{0}}}{0}}
uservacation:
driver = autoreply
file = /etc/virtual/${domain}/reply/${local_part}.msg
from = "${local_part}@${domain}"
log = /etc/virtual/${domain}/reply/${local_part}.log
no_return_message
subject = "${if def:h_Subject: {Autoreply: ${quote:${escape:$h_Subject:}}} {I am on vacation}}"
text = "\
------ ------\n\n\
This message was automatically generated by email software\n\
The delivery of your message has not been affected.\n\n\
------ ------\n\n"
to = "${sender_address}"
user = mail
once = /etc/virtual/${domain}/reply/${local_part}.once
once_file_size = 100K
once_repeat = 2d
userautoreply:
driver = autoreply
bcc = ${lookup{${local_part}} lsearch {/etc/virtual/${domain}/autoresponder.conf}{$value}}
file = /etc/virtual/${domain}/reply/${local_part}.msg
from = "${local_part}@${domain}"
log = /etc/virtual/${domain}/reply/${local_part}.log
no_return_message
subject = "${if def:h_Subject: {Autoreply: ${quote:${escape:$h_Subject:}}} {Autoreply Message}}"
to = "${sender_address}"
user = mail
once = /etc/virtual/${domain}/reply/${local_part}.once
once_file_size = 100K
once_repeat = 2d
devnull:
driver = appendfile
file = /dev/null
remote_smtp:
driver = smtp
address_pipe:
driver = pipe
return_output
virtual_address_pipe:
driver = pipe
group = nobody
return_output
user = "${lookup{$domain}lsearch* {/etc/virtual/domainowners}{$value}}"
address_file:
driver = appendfile
delivery_date_add
envelope_to_add
return_path_add
address_reply:
driver = autoreply
begin retry
* * F,2h,15m; G,16h,1h,1.5; F,7d,8h
Re: Отправляют одно, приходит несколько
Добавлено: 2009-11-08 1:59:19
---nebo---
Михалыч, возьмите конфиг екзима в теги КОД, оформляйте сообщения
Спам асасинов и прочего не стоит.
Код: Выделить всё
spamcheck:
driver = pipe
batch_max = 100
command = /usr/sbin/exim -oMr spam-scanned -bS
current_directory = "/tmp"
group = mail
home_directory = "/tmp"
log_output
message_prefix =
message_suffix =
return_fail_output
no_return_path_add
transport_filter = /usr/bin/spamc -u ${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}
use_bsmtp
user = mail
и покажите еще
Код: Выделить всё
/etc/virtual/${domain}/majordomo/list.aliases
/etc/virtual/${domain}/majordomo/private.aliases
/etc/virtual/${domain}/aliases
ну и как подметил коллега, когда это происходит - кусок лога в то время
Re: Отправляют одно, приходит несколько
Добавлено: 2009-11-08 15:08:30
Михалыч
Секцию со спам асасином которую тут показали закоментировал всю. (спасибо)
Файлов нету
Код: Выделить всё
/etc/virtual/${domain}/majordomo/list.aliases
/etc/virtual/${domain}/majordomo/private.aliases
А /etc/virtual/${domain}/aliases
Где домен test11.com.ua
Из лога
Код: Выделить всё
2009-11-06 15:49:29 1N6QzJ-0001mH-UO => parts <parts@test11.com.ua> F=<avto@y.net> R=virtual_user T=virtual_localdelivery S=175830
2009-11-06 15:49:29 1N6QzJ-0001mH-UO Completed
2009-11-06 16:04:29 1N6REg-0001pR-Uq => parts <parts@test11.com.ua> F=<avto@y.net> R=virtual_user T=virtual_localdelivery S=175830
2009-11-06 16:04:29 1N6REg-0001pR-Uq Completed
2009-11-06 16:34:29 1N6RX8-0001sz-BW => parts <parts@test11.com.ua> F=<avto@y.net> R=virtual_user T=virtual_localdelivery S=175830
2009-11-06 16:34:29 1N6RX8-0001sz-BW Completed
Re: Отправляют одно, приходит несколько
Добавлено: 2009-11-08 19:09:35
---nebo---
судя из лога не видно, чтобы EXIM разослал кому-то письма.
Тем более , если бы сработал алиас, то
Код: Выделить всё
2009-11-06 16:34:29 1N6RX8-0001sz-BW => parts <parts@test11.com.ua> F=<avto@y.net> R=virtual_user T=virtual_localdelivery
приблизительно имел такой вид
Код: Выделить всё
2009-11-06 16:34:29 1N6RX8-0001sz-BW => [b]alias_user[/b] <parts@test11.com.ua> F=<avto@y.net> R=virtual_user T=virtual_localdelivery
В показаном логе доставка осуществляется с помощью транспорта T=virtual_localdelivery
Код: Выделить всё
virtual_localdelivery:
driver = appendfile
create_directory
delivery_date_add
directory_mode = 770
envelope_to_add
directory = /home/${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}/imap/${domain}/${local_part}/Maildir
maildir_format
group = mail
mode = 660
return_path_add
user = "${lookup{$domain}lsearch*{/etc/virtual/domainowners}{$value}}"
quota = ${if exists{/etc/virtual/${domain}/quota}{${lookup{$local_part}lsearch*{/etc/virtual/${domain}/quota}{$value}{0}}}{0}}
,
а он кажись "ровный".
Может, проблема в этом, *: :fail:
Код: Выделить всё
#cat /etc/virtual/test11.com.ua/aliases
test11: test11
*: :fail:
Re: Отправляют одно, приходит несколько
Добавлено: 2009-11-09 23:06:55
Михалыч
Закоментировал строку
Дубли всёравно продолжают идти.
Какие ещё могут быть варианты ?
Re: Отправляют одно, приходит несколько
Добавлено: 2009-11-10 14:56:00
---nebo---
Давайте тогда максимально детализированную информацию:
а)такое происходит когда отправитель любой или только определенные
б)кому именно приходят не их письма или всем пользователям
в)письмо приходит без изменений или есть изменение в теме, теле
Попробуйте предоставить более детализированный лог.
Для разбора лога установите
и добавте в ~/.cshrc
и тогда выводите лог через tail, он будет разными цветами выделять аргументы, легче будет разбирать.