Strona 1 z 1

postfix - amavis dubluje niektóre wiadomości

: 03 listopada 2011, 09:29
autor: sethiel
Mam skrzynkę pocztową użytkownik1@dot.com. Adres użytkownik1@dot.com wysyła kopie wiadomości do kogoś innego korzystając z tabeli alias.
Tabela alias:

Kod: Zaznacz cały

address: użytkownik1@dot.com; goto użytkownik1@dot.com, użytkownik2@dot.com
Adres użytkownik2@dot.com otrzymuje dwie kopie - zamiast jednej - każdej wiadomości wysyłanej na adres użytkownik1@dot.com.
Jak można uniknąć zdublowane wiadomości?

Nie ma duplikatów kiedy wyłączy się filtry amavisa w master.cf:

Kod: Zaznacz cały

smtp      inet  n       -       -       -       -       smtpd
   -o smtpd_sasl_auth_enable=no
#   -o content_filter=smtp-amavis:[127.0.0.1]:10024
Ale takie rozwiązanie to nie rozwiązanie.

Gdzie szukać dlaczego jest takie zwielokrotnienie?

wycinek logów

Kod: Zaznacz cały

Nov  3 09:02:55 postfix-new postfix/qmgr[7577]: BE4FD8047E: from=<bart@gmail.com>, size=2185, nrcpt=2 (queue active)
Nov  3 09:02:55 postfix-new amavis[23969]: (23969-15) Passed CLEAN, [209.85.210.179] [209.85.210.179] <bart@gmail.com> -> <użytkownik2@dot.com>,<użytkownik1@dot.com>, Message-ID: <CA+7i1z6G44EYTpwcwheByosh6baLOe-8n3YdgntvE+9E0fP3LQ@mail.gmail.com>, mail_id: KTRNaT5eDpax, Hits: -5.099, size: 1458, queued_as: BBE608047C/BE4FD8047E, 19128 ms
Nov  3 09:02:55 postfix-new postfix/pipe[7856]: BBE608047C: to=<użytkownik2@dot.com>, relay=dovecot, delay=0.03, delays=0/0/0/0.02, dsn=2.0.0, status=sent (delivered via dovecot service)
Nov  3 09:02:55 postfix-new postfix/qmgr[7577]: BBE608047C: removed
Nov  3 09:02:55 postfix-new postfix/pipe[7858]: BE4FD8047E: to=<użytkownik2@dot.com>, orig_to=<użytkownik1@dot.com>, relay=dovecot, delay=0.02, delays=0/0/0/0.02, dsn=2.0.0, status=sent (delivered via dovecot service)
Nov  3 09:02:55 postfix-new postfix/smtp[8997]: 56D648045D: to=<użytkownik2@dot.com>, orig_to=<użytkownik1@dot.com>, relay=127.0.0.1[127.0.0.1]:10024,  delay=20, delays=0.48/0.01/0.01/19, dsn=2.0.0, status=sent (250 2.0.0  from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as BBE608047C)
Nov  3 09:02:55 postfix-new postfix/smtp[8997]: 56D648045D: to=<użytkownik1@dot.com>, relay=127.0.0.1[127.0.0.1]:10024,  delay=20, delays=0.48/0.01/0.01/19, dsn=2.0.0, status=sent (250 2.0.0  from MTA([127.0.0.1]:10025): 250 2.0.0 Ok: queued as BBE608047C)
Nov  3 09:02:55 postfix-new postfix/qmgr[7577]: 56D648045D: removed
Nov  3 09:02:55 postfix-new postfix/pipe[9011]: BE4FD8047E: to=<użytkownik1@dot.com>, relay=dovecot, delay=0.08, delays=0/0.01/0/0.06, dsn=2.0.0, status=sent (delivered via dovecot service)
Nov  3 09:02:55 postfix-new postfix/qmgr[7577]: BE4FD8047E: removed

: 04 listopada 2011, 08:09
autor: fnmirk
Nie wiem, ale dla mnie takie ustawienie:

Kod: Zaznacz cały

address: użytkownik1@dot.com; goto użytkownik2@dot.com
wygląda na logiczne.

: 04 listopada 2011, 09:54
autor: sethiel
Tak tylko wtedy użytkownik1@dot.com nie dostanie wiadomości która do niego była kierowana.
Taki przykład:
u1 - jest na urlopie załącza sobie skrypt "vacation" (czyli zaznacza pole wyboru wysyłaj autoodpowiedź), wpisuje do kogo mają być kopiowane emaile czyli do u2
e-mail wysłany do u1 trafia po tym do u1 oraz do u2.
W tym co napisałeś trafiałby tylko do u2, a u1 nie wiedziałby nawet, że dostał jakąś pocztę.

Część odpowiedzi znalazłem tu ale najważniejszej 1/4 z tego nie rozumiem niestety.
We may simply want to (or have to) use a different virtual alias table. To that end, we will add a new cleanup daemon that amavisd-new can use, then tell this cleanup daemon to use a different virtual alias table. vi /etc/postfix/master.cf and copy the current cleanup daemon, name the copy amavis-cleanup and add an override that changes the current virtual alias maps:
cleanup unix n - - - 0 cleanup
amavis-cleanup unix n - - - 0 cleanup
-o virtual_alias_maps=hash:/etc/postfix/amavis_virtual

qmgr fifo n - n 300 1 qmgr


Then, on the reinjection port 127.0.0.1:10025, tell Postfix to use this new cleanup daemon for mail that amavisd-new sends to it:
127.0.0.1:10025 inet n - n - - smtpd
-o content_filter=

-o cleanup_service_name=amavis-cleanup

-o local_recipient_maps= <...>
Czy oznacza to że plik /etc/postfix/amavis_virtual musi istnieć, czy on jest tylko na niby żeby zmylić amavisa?
A jak ma istnieć to co w nim ma się znajdować?