Exim i kopia outgoing mails

luty 28th, 2007

Jeden z zaprzyjaźnionych użyszkodników “bioly” napastował mnie od dłuższego czasu o mechanizm zapisywania kopii emaili “wychodzących” z exim‘a.

Do wyboru oczywiście procmail, exim.filter oraz zdefiniowanie odpowiedniego transport oraz router. Ja wybrałem ostatnie rozwiązanie jako najbardziej eleganckie.

Założeniem początkowym było aby archiwizować tylko wiadomości wysyłane na zewnątrz, tzn nie w obrębie domeny. Nieinteresującym jest dociekanie co Pani Wieśia(tm) do Pana Józefa(tm) napisała, ale czy aby na pewno nic z firmy nie wycieka poprzez email.
Oto router. Ważne aby w exim.conf umieścić no na samym początku listy routerów

sent_to_archive:
driver = accept
domains = ! +local_domains
# localdomains to obsługiwane lokalnie domeny
transport = sent_archive_delivery
unseen
no_expn

Ostatnim elementem jest dodanie transportu. Lokalizacja wpisu (oczywiście musi znajdować się w sekcji begin transports) nie gra tu roli.

sent_archive_delivery:
debug_print = "T: outgoing mail copy for $local_part@$domain"
driver = appendfile
user = exim
group = exim
delivery_date_add = true
envelope_to_add = true
return_path_add = true
maildir_format = false
mode = 0600
directory_mode = 0600
directory = /var/mail/backup/$tod_logfile/$sender_address
create_directory = true
no_mode_fail_narrower

Wszystko :)
Należy tylko pamiętać (lub zmusić cron do pamiętania za nas) o regularnym kompresowaniu i archiwzowaniu zawartości katalogu /var/mail/backup

11 Responses to “Exim i kopia outgoing mails”

  1. 1 Malik
    kwiecień 20th, 2007 at 8:19 pm

    >no_mode_fail_narrower = true

    U mnie exim przy takim wpisie pluje ze jest blad, po usunieciu = true startuje i wiadomosci wychodzace sa zpisywane.

  2. 2 daniel
    kwiecień 21st, 2007 at 8:40 am

    w PLD wersja exim 4-63 działa poprawnie :)

  3. 3 pit
    maj 31st, 2007 at 1:57 am

    mi nie chce dzialac … katalog pozostaje caly czas pusty ;///

  4. 4 daniel
    maj 31st, 2007 at 10:09 am

    ale czy tworzone są katalogi odpowiednio nazwane datami? czy ownerem jest exim:exim ? no i co w logach

  5. 5 pit
    maj 31st, 2007 at 1:31 pm

    do testow katalog ma 777 i ownerem jest user na ktorym dziala exim … w logach szukałem ale nic nie ma ;/

  6. 6 pit
    czerwiec 1st, 2007 at 12:11 am

    poz mianie directory na file = … zapisuje w pliku maile … nie wiem w czym tkwi błąd

  7. 7 Areq
    wrzesień 23rd, 2007 at 4:12 pm

    A nie duplikuje Ci maili w backupie jeśli był do kilku odbiorców ?

  8. 8 daniel
    wrzesień 23rd, 2007 at 7:58 pm

    Tak … dla każdego sender_address tworzony jest oddzielny katalog

  9. 9 Bogdan
    marzec 8th, 2008 at 8:01 pm

    Witam,
    niestety skonfigurowany exim wg tej porady nic nie loguje.
    Wersja 4.69, kompilowany ze zrodel.
    Skonfigurowany w ten sposob loguje maile przychodzace?
    Cos sknocilem?

  10. 10 daniel
    marzec 8th, 2008 at 8:13 pm

    hmmm to jest przepis na infomacje wychodzace z naszego systemu

    sent_to_archive:
    driver = accept
    domains = ! +local_domains
    # localdomains to obsługiwane lokalnie domeny
    transport = sent_archive_delivery
    unseen
    no_expn

    chodzi o domains = ! +local_domains
    wiec gdy poczta trafi na nasz serwer to sila rzeczy musi byc w local_domains

    wiec nalezy poeksperymentowac wlasnie z warunkiem domains
    czyli jesli przychodzace na ‘nasze domeny’ to bez “!” a jesli takie ktore definitywnie opuszczaja nasz system pocztowy to zdecydowanie z “!” (oczywiscie nalezy uwazac czy nie mamy tutaj aliasowania domen np. to moze wymagac dokladniejszego doboru warunkow doamins = )

    Pozdrawiam

  11. 11 Bogdan
    marzec 8th, 2008 at 8:34 pm

    Panie Danielu jest mozliwość abyśmy zmienili “dwa” slowa na jakims komunikatorze :)
    Jesli tak to proszę na maila, zeby zachowac prywatnosc.
    Pozdrawia :)

Leave a Reply