Dies ist eine alte Version des Dokuments!
Konfigurationsdatei: /etc/benno/benno.xml
Container der die in diesem Benno System konfigurierten Archive enthält.
Einfaches Archiv ohne Container.
Name des Archivs zur Verwaltung
OR-Verknüpfung verschiedener Kriterien.
Alle nicht gesetzten Attribute sind per Default auf true gesetzt.
<conditions> <not> <address sender="true" recipient="true" from="true" to="true" cc="true">blockme@hansen-und-meyer.de</address> </not> </conditions>
Hier wird jede E-Mail, die die Adresse blockme@hansen-und-meyer.de in einem der Sender- oder Empfänger Header enthält nicht archiviert! Dieses ist unabhängig davon, ob die E-Mail per CC an eine Adresse geschickt wurde, die archiviert werden soll.
Die überprüften Adress-Header werden die eigentlichen Adressen (der Form „personal@domain“) extrahiert. Nur dieser String wird mit der konfigurierten Adresse verglichen. Vor dem Vergleich werden die „<“ und „>“ ebenfalls entfernt. Bei der Prüfung wird die Groß- und Kleinschreibung nicht beachtet.
Alle E-Mails der Inbox werden gelöscht! Dieses betrifft auch E-Mails, auf die keines der Kriterien zutrifft.
Jede E-Mail durchläuft alle konfigurierten Archive und Container. Sobald ein Kriterium zutrifft, wird die jeweilige E-Mail indexiert und im entsprechenden Repository gespeichert.
Nach Durchlauf aller konfigurierten Komponenten wird die E-Mail gelöscht.
Archiv ist abgeschlossen.
Überwachung eines Verzeichnisses zum Mailimport.
<directorywatcher directory="/srv/benno/inbox" pattern=".*"> <mailfile>...</mailfile> </directorywatcher>
Parser für Standard Mailfiles, eventuell mit zusätzlichen Headern.
<mailfile> <senderheaders> <name>X-REAL-MAILFROM</name> </senderheaders> <recipientheaders> <name>X-REAL-RCPTTO</name> </recipientheaders> <secretheaders> <name>X-REAL-MAILFROM</name> <name>X-REAL-RCPTTO</name> <name>BCC</name> </secretheaders> </mailfile>
Die Zuordnung von Sender- und Empfängerdaten erfolgt innerhalb der Tags <senderheaders /> bzw. recipientheaders />.
Alle Header, die im Tag <secretheaders /> aufgeführt sind, werden vor dem Speichern aus der E-Mail entfernt. Diese Informationen sind ausschließlich im Index vorhanden.
Parser für Bennomailfiles (Mit Envelope Informationenen im zusätzlichen Header und Checksumme)
<bennomailfile> <senderheaders> <name>X-REAL-MAILFROM</name> </senderheaders> <recipientheaders> <name>X-REAL-RCPTTO</name> </recipientheaders> <secretheaders> <name>X-REAL-MAILFROM</name> <name>X-REAL-RCPTTO</name> <name>BCC</name> </secretheaders> </bennomailfile>
Die secretheaders werden vor der Indexierung und Archivierung aus der eigentlichen E-Mail entfernt.
<luceneindex version=“LUCENE_36“> <directory>/srv/mailarchive/default/index</directory> </luceneindex>
Eine einzelne Box wird konfiguriert und verwendet.
<singlefsbox> <fshexbennobox> <monthlyfsjournal/> <directory>/srv/benno/archive/repo</directory> <subdirs>3</subdirs> <dirlength>2</dirlength> <compression>gzip</compression> </fshexbennobox> </singlefsbox>
Konfiguration für wöchentliche Boxerstellung. Der Grundpfad wird in der Beispielkonfiguration der Box angegeben, für die echten Boxen wird jeweils eine Konfiguration mit dem erweiterten Pfad „…/2011w07/“ erstellt. Damit befinden sich die eigentlichen Boxen in Unterverzeichnissen des in der Beispielkonfiguration angegebenen Pfads.
<weeklyfsbox> <Box /> </weeklyfsbox>
Konfiguration für monatliche Boxerstellung. Der Grundpfad wird in der Beispielkonfiguration der Box angegeben, für die echten Boxen wird jeweils eine Konfiguration mit dem erweiterten Pfad „…/201103/“ erstellt. Damit befinden sich die eigentlichen Boxen in Unterverzeichnissen des in der Beispielkonfiguration angegebenen Pfads.
<monthlyfsbox> <Box /> </monthlyfsbox>
Konfiguration für quartalsweise Boxerstellung. Der Grundpfad wird in der Beispielkonfiguration der Box angegeben, für die echten Boxen wird jeweils eine Konfiguration mit dem erweiterten Pfad „…/2011q2/“ erstellt. Damit befinden sich die eigentlichen Boxen in Unterverzeichnissen des in der Beispielkonfiguration angegebenen Pfads.
<quarterlyfsbox> <Box /> </quarterlyfsbox>
Konfiguration für jährliche Boxerstellung. Der Grundpfad wird in der Beispielkonfiguration der Box angegeben, für die echten Boxen wird jeweils eine Konfiguration mit dem erweiterten Pfad „…/2011/“ erstellt. Damit befinden sich die eigentlichen Boxen in Unterverzeichnissen des in der Beispielkonfiguration angegebenen Pfads.
<yearlyfsbox> <Box /> </yearlyfsbox>
Box in der die Nachrichten im Bennomailformat (Mail mit vorangestellten zusätzlichen Headern mit Envelope Informationen und Checksumme) abgelegt werden. Der Pfad wird aus der Hex Darstellung des Hashwertes generiert, pro Unterverzeichnisebene werden jeweils „dirlength“ Zeichen verwendet, es gibt „subdirs“ Unterverzeichnisebenen.
<fshexbennobox> <Journal /> // Journal dieser Box. Es wird im Unterverzeichnis „.../journal“ angelegt. <id>boxname</id> // Name der Box, wird bei generierten Boxen meist automatisch vergeben. <compression>none</compression> // Kompression der Mails in der Box. // Unterstützt werden „none“, „gzip“ und „bzip2“ <directory>/srv/mailarchive/box</directory> // Verzeichnis in dem die Box ihre Dateien ablegt <subdirs>3</subdirs> // Anzahl der Unterverzeichnisebenen bis zur Maildatei <dirlength>2</dirlength> // Anzahl der Zeichen, die eine Unterverzeichnisebene bilden </fshexbennobox>
Relativer Pfad: …/repo/2012/14/F9/66/4704AB5AA55D479A1EAFEB65FDCF58587DE609D316D08152AEE2B1DAC100.gz
Sender: j.elixmann@hansen-und-meyer.de Recipient: j.kohning@hansen-und-meyer.de Size: 895 Date: 2012-06-21 09:01:08 UTC ===== Hash: 14F9664704AB5AA55D479A1EAFEB65FDCF58587DE609D316D08152AEE2B1DAC1 Message-ID: <4AC1H8JKNSKJKHKH787876E624.5000408@web.de> Date: Thu, 21 Jun 2012 11:01:08 +0200 From: j.elixmann@hansen-und-meyer.de User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20090706) MIME-Version: 1.0 To: j.kohning@hansen-und-meyer.de Subject: Termin kommende Woche Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit ...
Box in der die Nachrichten „roh“ im eml-Format abgelegt werden. Die Metadaten werden in einer zusätzlichen Datei abgelegt. Der Pfad wird aus der Hex Darstellung des Hashwertes generiert, pro Unterverzeichnisebene werden jeweils „dirlength“ Zeichen verwendet, es gibt „subdirs“ Unterverzeichnisebenen.
<fshexmailbox> <Journal /> // Journal dieser Box. Es wird im Unterverzeichnis „.../journal“ angelegt. <id>boxname</id> // Name der Box, wird bei generierten Boxen meist automatisch vergeben. <compression>none</compression> // Kompression der Mails in der Box. // Unterstützt werden „none“, „gzip“ und „bzip2“ <directory>/srv/mailarchive/box</directory> // Verzeichnis in dem die Box ihre Dateien ablegt <subdirs>3</subdirs> // Anzahl der Unterverzeichnisebenen bis zur Maildatei <dirlength>2</dirlength> // Anzahl der Zeichen, die eine Unterverzeichnisebene bilden </fshexmailbox>
<benno management="2555"> <configuredarchives> <!-- ARCHIV1 --> <containerarchive> <identifier>LWsystems</identifier> <conditions> <domain sender="true" recipient="true" from="true" to="true" cc="true">lw-systems.de</domain> </conditions> <readonly>true</readonly> <directorywatcher directory="/srv/benno/inbox" pattern=".*"> <!-- Parser der Eingangsdokumente (mailfile|bennomailfile) --> <mailfile> <senderheaders> <!-- Header, die den Sender-Envelope enthalten --> <name>X-REAL-MAILFROM</name> <name>RECIPIENT-FROM</name> </senderheaders> <recipientheaders> <!-- Header, die den Empfänger-Envelope enthalten --> <name>X-REAL-RCPTTO</name> <name>RECIPIENT-TO</name> <name>BCC</name> </recipientheaders> <secretheaders> <!-- Diese (Envelope-) Header werden aus dem Kopf der Mail entfernt --> <name>X-REAL-MAILFROM</name> <name>RECIPIENT-FROM</name> <name>X-REAL-RCPTTO</name> <name>RECIPIENT-TO</name> <name>BCC</name> </secretheaders> </mailfile> </directorywatcher> <!-- Container innerhalb des Archivs --> <configuredcontainers> <simplecontainer> <identifier>LWsystems</identifier> <conditions> <!-- welche Mails werden diesem Container zugeordnet --> <!-- Angabe, welche Kriterien (sender, recipient, ...) zur Zuordnung überprüft werden. --> <domain sender="true" recipient="true" from="true" to="true" cc="true">lw-systems.de</domain> </conditions> <readonly>true</readonly> <luceneindex version="LUCENE_33"> <directory>/srv/benno/archives/lw-systems.de/index</directory> </luceneindex> <singlefsbox> <fshexbennobox> <singlejournal/> <compression>gzip</compression> <directory>/srv/benno/archives/lw-systems.de/repo</directory> <subdirs>3</subdirs> <dirlength>2</dirlength> </fshexbennobox> </singlefsbox> </simplecontainer> </configuredcontainers> </containerarchive> </configuredarchives> </benno>