/etc/exim/exim.conf: ###################################################################### # Runtime configuration file for Exim # ###################################################################### # # Um eine neue Konfiguration auf syntaktische Korrektheit zu testen, wird exim # mit exim -C /etc/exim/exim.conf -bV aufgerufen. # ###################################################################### # MAIN CONFIGURATION SETTINGS # ###################################################################### # # Die Liste der lokalen Domains in diesem Fall gibt es nur die domain localdomain # Dabei ist localdomain de Name der Domain des lokalen Netzes ( wer hätte das gedacht ;-)) # domainlist local_domains = @ : localdomain # # Die Liste der Domains für die exim Mail zustellt bzw. annimmt. In diesem Fall wiederum nur localdomain. # domainlist relay_to_domains = localdomain # # Die Liste der Rechner für die exim Mails transportiert bzw. versendet # Der erste eintrag repräsentiert den localhost, der zweite alle Rechner im # Subnet 10.0.1.x (die ersten 24-bit sind fest) hostlist relay_from_hosts = 127.0.0.1 : 10.0.1.1/24 # # Die Liste der User unter deren User-Id? niemals eine Mailzustellung erfolgt. # Probiert man es trotzdem wird die Nachricht eingefroren und eine Meldung # protokolliert. # never_users = root # # Die beiden folgenden Einstellungen sorgen dafür das exim bei eingehenden Anfragen # nochmal gemäß RFC 1413 prüft, ob der anfragende Rechner auch wirklich "echt" ist. # Ein Sternchen bedeutet das dieses Verfahren für alle Rechner durchgeführt wird. # Der Timeout dafür ist in diesem Fall 30 Sekunden. # rfc1413_hosts = * rf c1413_query_timeout = 30s # # Kann exim eine Mail nicht zustellen, dann wird diese Mail # eingefroren ("frozen"). Die Einstellung taut die Mail # nach 2 Tagen (2d) auf, versucht sie zu versenden und # ignoriert erneut auftretende Fehler. # ignore_bounce_errors_after = 2d # # Befindet sich eine Mail 7 Tage (7d) in eingefrorenem Zustand # dann sorgt diese Option dafür das nicht versucht wird, #die Mail weiter zu versenden. # timeout_frozen_after = 7d # # Eine Mail an root schicken, wenn eine Mail eingefroren wird # freeze_tell = root # # Größte zulässige Mail ist # message_size_limit = 16384000 # # Die Nachrichten nicht gleich verschicken sondern erstmal in die # Warteschlange stellen und zwar für alle domains # queue_smtp_domains = * # # Einbinden eines Filters. # Indiesem Fall, um die Message-ID's zu bearbeiten # system_filter = /etc/exim/systemfilter ###################################################################### # ACL CONFIGURATION # # Specifies access control lists for incoming SMTP mail # ###################################################################### # # In diesem Abschnitt habe ich nichts verändert, sondern den Standard übernommen # begin acl acl_check_rcpt: accept hosts = : deny local_parts = .*[@%!/|] : \\. accept local_parts = postmaster domains = +local_domains require verify = sender accept domains = +local_domains endpass verify = recipient accept domains = +relay_to_domains endpass verify = recipient accept hosts = +relay_from_hosts accept authenticated = * deny message = relay not permitted ###################################################################### # ROUTERS CONFIGURATION # # Specifies how addresses are handled # ###################################################################### # THE ORDER IN WHICH THE ROUTERS ARE DEFINED IS IMPORTANT! # # An address is passed to each router in turn until it is accepted. # ###################################################################### begin routers # # Dieser Router schickt alles an das mail relay des providers # smart_route: driver = manualroute domains = ! +local_domains transport = remote_smtp route_list = * auth.mail.onlinehome.de byname # # Alles was der voriger Router nicht schafft, stellen wir direkt zu. # dnslookup: driver = dnslookup domains = ! +local_domains transport = remote_smtp ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 no_more # # Die weiteren Router sind für lokale Mails zuständig. # system_aliases: driver = redirect allow_fail allow_defer data = ${lookup{$local_part}lsearch{/etc/mail/aliases}} file_transport = address_file pipe_transport = address_pipe # # Dieser Router sorgt dafür das Weiterleitungen # die im Home-Verzeichnis? von Usern in der # Datei .forward angegeben sind weitergeleitet werden. # userforward: driver = redirect check_local_user file = $home/.forward no_verify no_expn check_ancestor file_transport = address_file pipe_transport = address_pipe reply_transport = address_reply # # Dieser Router verarbeitet die Mail der lokalen Mailboxen # localuser: driver = accept check_local_user transport = local_delivery cannot_route_message = Unknown user More... ###################################################################### # TRANSPORTS CONFIGURATION # ###################################################################### # ORDER DOES NOT MATTER # # Only one appropriate transport is called for each delivery. # ###################################################################### begin transports # # Der Remote-Transport? # remote_smtp: headers_remove ="X-rewrote-sender:Resent-To:Resent-Date:Resent-From:Resent-Message-Id:Resent-Bcc:" driver = smtp command_timeout = 1m final_timeout = 1m keepalive = true retry_include_ip_address = false size_addition= -1 hosts_require_auth = auth.mail.onlinehome.de # # Der lokale Transport # driver = appendfile file = /var/mail/$local_part delivery_date_add envelope_to_add return_path_add headers_remove = "resent-to:resent-from" # # Dieser Transport handhabt .forward bzw. pipe Anforderungen # address_pipe: driver = pipe return_output # This transport is used for handling deliveries directly to files that are # generated by aliasing or forwarding. address_file: driver = appendfile delivery_date_add envelope_to_add return_path_add # # Dieser Transport steuert die automatische Antworten # address_reply: driver = autoreply ###################################################################### # RETRY CONFIGURATION # ###################################################################### begin retry # This single retry rule applies to all domains and all errors. It specifies # retries every 15 minutes for 2 hours, then increasing retry intervals, # starting at 1 hour and increasing each time by a factor of 1.5, up to 16 # hours, then retries every 6 hours until 4 days have passed since the first # failed delivery. # Domain Error Retries # ------ ----- ------- * * F,1d,1m; G,3d,20m,1.5; ###################################################################### # REWRITE CONFIGURATION # ###################################################################### begin rewrite # # Die folgenden Rewrite-Regeln? sorgen für die Umwandlung von lokalen Mailadressen in # internettaugliche Mailadressen und umgekehrt. # *@localhost "${lookup{${lc:$1}} lsearch{/etc/exim/aliases_inex} \ {$value} fail}" Eh *@*.darkstar "${lookup{${lc:$1}} lsearch{/etc/exim/aliases_inex} \ {$value} fail}" Eh *@* "${lookup{${lc:$0}} lsearch{/etc/exim/aliases_exin} \ {$value} {$0}}" T ###################################################################### # AUTHENTICATION CONFIGURATION # ###################################################################### begin authenticators # Hier finden sich die verschiedenen Auth SMTP Mechanismen # dabei wird die User/Passwort Kombination aus der Datei /etc/exim/asmtp gelesen plain: driver = plaintext public_name = PLAIN client_send = "${lookup{plain} lsearch{/etc/exim/asmtp} \ {$value} fail}" login: driver = plaintext public_name = LOGIN client_send = "${lookup{login} lsearch{/etc/exim/asmtp} \ {$value} fail}" cram_md5: driver = cram_md5 public_name = CRAM-MD5 client_name = "${lookup{craml} lsearch{/etc/exim/asmtp} \ {$value} fail}" client_secret = "${lookup{cramp} lsearch{/etc/exim/asmtp} \ {$value} fail}" # End of Exim configuration file