Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Was fehlt?

Es liegt in der Natur der Sache: Ein Wiki ist niemals fertig. Wir geben uns große Mühe, mit der Entwicklung Schritt zu halten; lassen Supportanfragen direkt in neue Artikel einfließen … aber auch wir sind nicht perfekt. Wenn du hier nicht fündig wirst: Nicht schmollen - Bescheid sagen! Unter hallo@uberspace.de steht dir unser Team gerne bereit. Hand drauf!

mail:dotqmail

.qmail-Dateien

.qmail-Dateien (sprich: „dot qmail“) sind ein Feature des von uns eingesetzten netqmail-Mailservers. Sie ermöglichen, dass du innerhalb deines Uberspaces mit minimalem Aufwand Weiterleitungen, Mailinglisten, Filterregeln, Scripts und alles Mögliche realisieren kannst. An dieser Stelle schildern wir dir das Grundprinzip von .qmail-Dateien. Zum Thema „Mailinglisten“ kannst du dich in der Dokumentation zu ezmlm-idx weitergehend informieren; zum Thema „Filterregeln“ in der Dokumentation zu maildrop. Doch zunächst erstmal zum „großen Ganzen“.

.qmail-Dateien legst du direkt in deinem Home-Verzeichnis ab. Es handelt sich dabei um einfache Textdateien, die eine oder mehrere Zustellungsanweisungen beinhalten. Nehmen wir exemplarisch einmal an, du hast den Uberspace melanie auf unserem Server xenon - dann hast du, wie auch aus deinem Datenblatt (Login erforderlich) ersichtlich, standardmäßig die E-Mail-Adresse melanie@xenon.uberspace.de als primäre Adresse.

Ein Hinweis gleich zu Beginn: Wenn du mit Namensräumen arbeitest, musst du das Namensschema anpassen.
Wie .qmail-Dateien und vmailmgr zusammenhängen, erläutern wir hier.

Deine primäre Adresse

E-Mails an deine primäre Adresse landen standardmäßig in deinem Maildir /home/melanie/Maildir/, auf das du via POP und IMAP zugreifen kannst - die Zugangsdaten dafür erfährst du in deinem Datenblatt (Login erforderlich). Du kannst jedoch auch eine Datei mit dem Namen .qmail in deinem Home-Verzeichnis anlegen und so die Mails an eine andere Adresse umleiten. Es handelt sich also um eine einfache Textdatei mit einer Zeile pro Empfänger, z.B. so:

die-liebe-melanie@t-offline.xx

Mit dem Befehl cat .qmail kannst du dir den Inhalt der Datei auf der Shell ausgeben lassen:

[melanie@xenon ~]$ cat .qmail
die-liebe-melanie@t-offline.xx

Was du sonst noch so mit einer .qmail-Datei machen kannst, dazu kommen wir gleich.

Weitere Adressen

Du bist nicht auf die Nutzung einer einzelnen .qmail-Datei begrenzt, sondern kannst beliebig viele weitere sogenannte „Erweiterungsadressen“ anlegen. Hierbei dient ein Minuszeichen als Trennzeichen zwischen deiner primären Adresse und einer entsprechenden Erweiterung. Legst du also eine Datei .qmail-irgendwas mit Zustellregeln an, so entspricht diese der E-Mail-Adresse melanie-irgendwas@xenon.uberspace.de bzw. irgendwas@melanie.xenon.uberspace.de. Praktische Einsatzmöglichkeiten wären zum Beispiel, dass du separate E-Mail-Adressen für private Mails, für die Teilnahme an Mailinglisten und für die Teilnahme an Gewinnspielen verwendest. Vor allem bei letzteren gilt: Wenn du den Spam, den du dir mit Gewinnspiel-Teilnahmen an Land ziehst, leid bist - lösche einfach deine .qmail-gewinnspiel, und die Adresse ist abgeklemmt.

Bitte beachte bei der Benennung zwei Dinge:

  1. .qmail-Dateien müssen immer mit Kleinbuchstaben benannt werden, da netqmail bei der lokalen Zustellung alle Zeichen in Kleinbuchstaben konvertiert. Eine .qmail-info empfängt insofern nicht nur info@…, sondern auch INFO@…, iNfO@… und so weiter.
  2. Verwendest du Adressen mit Punkten im Namen? netqmail lässt in der Benennung aus Sicherheitsgründen keine Punkte zu, sondern konvertiert alle Punkte in Doppelpunkte. Möchtest du also die Adresse hue.hott@melanie.xenon.uberspace.de anlegen, so musst du deine .qmail-Datei .qmail-hue:hott nennen, damit sie funktioniert!

Nutzung mit eigener Domain

Hast du eine eigene Domain, so wird diese Domain als Alias deines Uberspace-Hostnamens user.host.uberspace.de geschaltet, mit der Folge, dass alle Adressen, die du als .qmail-Dateien anlegst, automatisch auch unter deiner Domain funktionieren. Du hast die Domain tolledomain.xx auf deinen Uberspace aufgeschaltet? Leg die Datei .qmail-hallo an, so entspricht diese nicht nur der Adresse melanie-hallo@xenon.uberspace.de, sondern auch der Adresse hallo@tolledomain.xx!

Sammeladressen

Dieser Mechanismus ist das, was gelegentlich auch als address tags bezeichnet wird. Das Trennzeichen, das den Mailboxnamen von eventuellen Erweiterungen trennt, ist dabei nicht standardisiert: Einige Provider verwenden hierbei ein '+' als Trennzeichen, andere ein '='; bei dem von uns eingesetzten netqmail ist es '-'.

Es gibt eine spezielle Erweiterung namens default, die auf sämtliche möglichen Erweiterungen passt. Legst du dir also eine .qmail-newsletter-default an, so landen dort alle Mails an melanie-newsletter-firma1@xenon.uberspace.de, melanie-newsletter-firma2@xenon.uberspace.de etc. - bzw. bei Nutzung einer eigenen Domain (siehe vorheriger Abschnitt) alle Mails an newsletter-firma1@tolledomain.xx, newsletter-firma2@tolledomain.xx, etc.

„Konkrete“ Adressen haben jedoch immer Vorrang. Erhältst du also eine Mail an du-bist-toll@tolledomain.xx, so wird in deinem Home-Verzeichnis der Reihe nach nach folgenden Dateien gesucht (sprich, wenn nichts Passendes gefunden wird, werden die Erweiterungen nach und nach weggekürzt):

  1. .qmail-du-bist-toll
  2. .qmail-du-bist-default
  3. .qmail-du-default
  4. .qmail-default

Sonderfall Catchall

Aus der letzten Option kann man sich recht einfach ein Catchall-Szenario basteln. Wenn du dir folgende .qmail-default anlegst…

[melanie@xenon ~]$ cat .qmail-default
# alle Mails an meinen T-Offline-Account weiterleiten
die-liebe-melanie@t-offline.xx

… werden alle Mails, die nicht vorher durch eine andere ''.qmail''-Datei abgefangen wurden an die Adresse die-liebe-melanie@t-offline.xx weitergeleitet.

Möglichkeiten mit .qmail-Dateien

In .qmail-Dateien kannst du eine oder auch mehrere Zustellregeln angeben, und zwar jeweils eine Regel pro Zeile. Es gibt dabei fünf Typen von Zustellregeln, deren Originaldokumentation du mit man dot-qmail auf deiner Shell einsehen kannst. Es handelt sich um diese hier:

  1. Zeilen, die mit # beginnen, sind Kommentarzeilen, die ignoriert werden
  2. Zeilen, die mit | beginnen, sind Programmaufrufe, das heißt, die vollständige E-Mail wird über eine Pipe an das hier angegebene Programm durchgereicht
  3. Zeilen, die mit & beginnen, sind Weiterleitungen an andere Adressen (wenn diese mit einem Buchstaben oder eine Zahl beginnen, kannst du das & auch weglassen)
  4. Zeilen, die mit . oder /, also einer relativen oder absoluten Pfadangabe beginnen, und nicht auf einen / enden, sind Zustellungen in eine Mailbox-Datei (nicht empfohlen; benutze lieber Maildir wie im nächsten Punkt beschrieben)
  5. Zeilen, die mit . oder /, also einer relativen oder absoluten Pfadangabe beginnen, und auf einen / enden, sind Zustellungen in ein Maildir

Eine gültige .qmail-Datei könnte also so aussehen (der Befehl cat .qmail-hallo gibt den Inhalt der Datei .qmail-hallo aus, der dann ab der Zeile darunter angezeigt wird, das heißt, die Zeile mit der # am Anfang ist die erste Zeile der .qmail-Datei):

[melanie@xenon ~]$ cat .qmail-hallo
# alle Mails zur Sicherheit an meinen T-Offline-Account weiterleiten
die-liebe-melanie@t-offline.xx
# aber ich will ich sie trotzdem noch in meinem Maildir haben
./Maildir/

Praktisch ist insbesondere auch die Nutzung mit IMAP: Hier werden ja auch deine Ordnerstrukturen nicht in deinem Mailclient, sondern serverseitig verwaltet. Insofern könntest du es praktisch finden, einige Adressen anzulegen, die eingehende Mails direkt in einen bestimmten IMAP-Ordner sortieren. Praktischerweise sind IMAP-Ordner technisch gesehen genauso ein Maildir (mit dem IMAP-Ordnernamen und einem . vorweg); du kannst also entsprechend Möglichkeit 5 verfahren (der Befehl cat .qmail-firma gibt den Inhalt der Datei .qmail-firma aus, der dann ab der Zeile darunter angezeigt wird, das heißt, die Zeile mit der # am Anfang ist die erste Zeile der .qmail-Datei)

[melanie@xenon ~]$ cat .qmail-firma
# Mails an melanie-firma will ich einem separaten IMAP-Ordner
./Maildir/.Firma/

Auf der Community-Website qmail.org findest du einen Abschnitt mit Tips, die dir einige interessantere und komplexere Beispiele liefern.

Mails zurückgehen lassen (bouncen)

Es ist möglich alle Mails die an eine bestimmte Adresse gehen automatisch zurückzuschicken:

$ echo "|exit 100" > .qmail-noreply

Die Instruktion |exit 100 weist qmail an, die Mail sofort zu bouncen.

Das ist aber nicht unbedingt eine gute Idee!

Spezialfall "Schwarzes Loch"

Hin und wieder kommt die Frage auf, ob E-Mails an eine bestimmte Adresse einfach direkt gelöscht werden können, etwa durch eine Weiterleitung nach /dev/null. Nun, mit /dev/null geht es nicht, aber auf lifewithqmail.org gibt es die Antwort:

Eine dot-qmail-Datei die gar keine Zustell-Instruktion enthält sondern lediglich einen Kommentar (den qmail ohnehin nicht lesen kann) veranlaßt qmail die Mail zu verwerfen und keinen Fehler zu melden. Hier ist ein Beispiel, wie man das machen kann:

$ echo "# don't deliver mail, just delete it" > ~/.qmail-noreply

Achtung: Wenn Du das so machst, sind die Mails danach wirklich unwiederbringlich weg. Es gibt kein Backup oder ähnliches. Überlege Dir gut, was Du tust.

mail/dotqmail.txt · Zuletzt geändert: 2015/04/13 20:20 von uber