# HG changeset patch # User Heiko Schlittermann (JUMPER) # Date 1435842585 -7200 # Node ID 6c2ec23b8f47444f5196c997b913e6ae5bc7851a # Parent a9bf9198340aaffc48d2088618c11a855b947756 Customize the markup diff -r a9bf9198340a -r 6c2ec23b8f47 Makefile --- a/Makefile Wed Apr 22 10:44:16 2015 +0200 +++ b/Makefile Thu Jul 02 15:09:45 2015 +0200 @@ -1,3 +1,5 @@ +# wir brauchen die asciidoc Toolchain, damit das +# alles funktioniert TXT = short.txt # INPUT HTML = out/short.html # OUTPUT diff -r a9bf9198340a -r 6c2ec23b8f47 short.conf --- a/short.conf Wed Apr 22 10:44:16 2015 +0200 +++ b/short.conf Thu Jul 02 15:09:45 2015 +0200 @@ -14,7 +14,10 @@ [eximopt-inlinemacro] {target} +[eximdriver-inlinemacro] +{target} [macros] -(?u)\b(var):(?P[\$\w]+)=eximvar[] -(?u)\b(opt):(?P[\w]+)=eximopt[] +(?u)\b(i):(?P[\$\w]+)=eximvar[] +(?u)\b(o):(?P\w+)=eximopt[] +(?u)\b(d):(?P\w+)=eximdriver[] diff -r a9bf9198340a -r 6c2ec23b8f47 short.txt --- a/short.txt Wed Apr 22 10:44:16 2015 +0200 +++ b/short.txt Thu Jul 02 15:09:45 2015 +0200 @@ -11,29 +11,52 @@ gibt auch eine http://schlittermann.de/doc/Exim_(de)/short.html[HTML] und eine http://schlittermann.de/doc/Exim_(de)/short.pdf[PDF] Version. +Nicht alles wurde zwanghaft ins Deutsche übersetzt, ein Router ist ein Router +und kein Wegleiter. + +== Typografische Konventionen + + //// _italic_:: Namen von Dateien, Programmen, Hosts, Domains, Mail-Header, URLS: _example.com_, _From:_ -*bold*:: - Namen von Exim-Routern, Transports, Authenticators: *dnslookup*-Router -opt:fixed:: - Kommandos, Code-Beispiele, Exim-Konfigurations-Optionen: opt:primary_hostname +o:fixed:: + Kommandos, Code-Beispiele, Exim-Konfigurations-Optionen: o:primary_hostname *+fixed bold+*:: Hervorhebung von Kommandos, Nutzereingaben: *+exim -bV+* -var:slanted:: - Exim-Variablen im Text: var:$local_part oder var:$sender_address //// -== Konfiguration +d:bold:: + Exim Treibernamen im Text: Der driver:dnslookup Router + +o:fixed:: + Exim Konfigurationoptionen im Text: o:primary_hostname + +i:slanted:: + Exim Expansionsitems im Text: i:$local_part oder i:$sender_address + (Variablen, Lookups, …) + + +== Konfigurationsfiles -=== File +== Build-Konfiguration _EDITME_ + +* Maintainer pflegt die _EDITME_ +* Je nach Distro unterschiedliche Konfigurationen, teilweise sogar +mehrere, wie 'fat', 'light', 'heavy'. -* Das Konfigurationsfile wird in der Build-Konfiguration (_EDITME_) festgelegt. + $ exim -bV + +listet wesentliche in der Buildkonfiguration gewählte Features auf. + +=== Runtime-Konfiguration _exim.conf_ + +* Der Name der Runtime-Konfiguration wird in der Build-Konfiguration gestgelegt. * Es ist auch eine Liste von Konfigurationsfiles möglich, der erste Treffer gewinnt. Das verwendete File läßt sich ermitteln mit: - exim -bP configure_file + $ exim -bP configure_file Das aktive Konfigurationsfile kann auch auf der Kommandozeile festgelegt werden. Für einige Operationen muss der Pfad ein absoluter sein. Auch @@ -48,7 +71,7 @@ * re-exec for verschiedene Zwecke CAUTION: Inhalt der Datei _exim.conf_ -und eventuell über opt:.include eingelesener Files +und eventuell über o:.include eingelesener Files ist statisch. Dynamisch sind dann Expansionen, Lookups. === Syntax @@ -154,7 +177,7 @@ Listen-Lookups werden nur gecacht, wenn die Liste keine Expansions-Items entält (also kein '$'). Um ein Caching zu erwzingen, kann dem Listentyp ein -opt:_cache +o:_cache nachgesetzt werden: domainlist_cache local_domain = ${lookup …} @@ -317,7 +340,7 @@ domains = example.com : ^\\d{3} domains = example.com : \N^\d{3}\N -Im Beispiel wird der Backslash verdoppelt, da die opt:domains Option zuerst +Im Beispiel wird der Backslash verdoppelt, da die o:domains Option zuerst expandiert wird. == Expansion von Zeichenketten @@ -329,9 +352,9 @@ binding“). CAUTION: Es stehen aber nicht in jeder Phase alle Expansions-Items zur Verfügung. (z.B. -wird der Wert der globalen Option opt:message_size_limit expandiert, aber bereits +wird der Wert der globalen Option o:message_size_limit expandiert, aber bereits während der Antwort auf das SMTP-HELO. In dieser Phase gibt es noch keinen -var:$local_part). +i:$local_part). .Debugging exim -be [] @@ -502,7 +525,7 @@ == Acess Control Lists ACL wirken für alle Phasen der SMTP-Session. Im globalen Teil werden die -Einstiegspunkte mit opt:acl_smtp_connect usw. definiert. Im ACL-Abschnitt der +Einstiegspunkte mit o:acl_smtp_connect usw. definiert. Im ACL-Abschnitt der Konfiguration muss dann ein entsprechend genannter Block existieren. Die häufigsten Einstiegspunkte sind @@ -549,78 +572,78 @@ Entscheidung. .Häufige ACL-Bedingungen -opt:hosts:: +o:hosts:: Sender-Host-IP wird geprüft hosts = +trusted_hosts -opt:domains:: +o:domains:: Empfänger-Domain wird geprüft domains = +local_domains -opt:senders:: +o:senders:: Absender-Mailadresse wird geprüft senders = postmaster@example.com : hans@foo.bar -opt:malware:: +o:malware:: Malware-Content-Scan liefert einen Treffer malware = * -opt:spam:: +o:spam:: SPAM-Content-Scan (_SpamAssassin_) spam = nobody/true -opt:verify:: +o:verify:: Empfänger- oder Absenderüberprüfung, eventuell auch mit _callout_. verify = recipient/callout=use_sender,defer_ok -opt:ratelimit:: +o:ratelimit:: Limitierungen aller Art (Menge, Größe, …) ratelimit = 10/1h/$sender_address -opt:condition:: +o:condition:: Sonstige Bedingungen aller Art condition = ${run{perl}{graylist}{$sender_address/$local_part@$domain}} .ACL-Modifier -opt:message:: +o:message:: Der Nachrichtenpuffer wird mit einem Text gefüllt. message = 550 Sorry -opt:log_message:: +o:log_message:: Der Nachritenpuffer für das Protokoll wird mit einem Text gefüllt. Sonst identisch zu +message+. -opt:logwrite:: +o:logwrite:: Sofort einen Log-Eintrag -opt:control:: +o:control:: Steuert das weitere Verhalten der Nachrichtenverarbeitung control = submission -opt:set:: +o:set:: ACL-Variablen setzen set acl_m_domain = $domain set acl_c_host = $sender_host_address -opt:add_header:: +o:add_header:: Header zum Hinzufügen vormerken -opt:remove_header:: +o:remove_header:: Header zum Entfernen vormerken -opt:delay:: +o:delay:: Fügt eine kurze Verarbeitungspause ein Ziel der ACL-Operations sollte es sein, möglichst viele Dinge zur SMTP-Zeit zu @@ -652,6 +675,7 @@ domains = !+local_domains transport = remote_smtp ignore_target_hosts = <; 127.0.0.1 : ::1 + more = no Eine Liste der konfigurierten Router erhält man mit: @@ -664,7 +688,7 @@ bestimmt. .Beispiel - remote_smtp + remote_smtp: driver = smtp command_timeout = 10s @@ -715,7 +739,7 @@ +add+:: Nutzer-Variable inkrementieren. Diese Variablen stehen dann später als - var:$sn1 - var:$sn9 in den Routern und Transports zur Verfügung + i:$sn1 - i:$sn9 in den Routern und Transports zur Verfügung add 27 to to n3