SPAM vameidn mit qmail
SPAM. Olle hassn eam, koaner kann eam (ernsthaft) vameidn. Um die Inbox aber einigermaßen aufgräumt zu hoitn, gibt's a recht komfortable Lösung: Temporäre E-Mail-Adressen! temp-mail.org, tempmail.com, tempmailaddress.com, bytom.de... die Liste is long. Leider hot mi an dera Lösung imma gstört, dass i erst auf die Seitn vom Anbieter muass, die Adresse generiern, wartn bis die Mail ankummt (wos unter Umständen a amoi a Zeit long dauern kann) und nicht zuletzt hot da Anbieter Zugriff auf olle E-Mails, wos aus Sicherheitsgründen scho a bissl gruselig is. Si mal temporär bei Facebook, Twitter oda ähnlichem anzumöldn is damit sicher ka so guate Empfehlung. Und wer si in verschiedenen Foren anmöldn wü, nur um kurz a Frog zu stöin oda a Antwort anzuschaun, kann ganz schö schnö gnervt wern, wenn ma dauernd neiche Temp-Mailadressen generiern muass oda - no schlimmer - ma wart auf die Bestätigungsmail, aber sie kummt ned, weil da Tempmailanbieter vom Forenbetreiber gsperrt wird. Wos also tun? De Lösung: A Kombination aus .qmail-Datei, BASH-Skript und Cronjob. Des Ergebnis soit so ausschaun, dass mia jeden Tag um 24:00 a neiche E-Mail-Adresse im Format dd.mm.YYYY@domain.com erstöin, de eingehende Mails an unsere primäre Mailadresse weiterleitet, und die oide Mailadresse löschn lossn.
De qMail-Datei
Fangen mia mit dem ersten Schritt o: Qmail. Qmail is a Mailserver für Unix-Systeme. Er wurde 2007 entwickelt, weil sendmail relativ vül sicherheitskritische Bugs aufgwiesn hot und sonst koa ernstzunehmende Alternative verfügbar woar. Da Vorteil von qmail is in unserem Foi, dass mia E-Mail-Weiterleitungen komfortabel über qmail-Dateien festlegn kinnan. Soitast du ned bei uberspace.de hostn, so wia i, is es zuerst notwendig, qmail ois Mailserver zu installiern und einzurichtn, so wia auf da qmail-Webseitn beschriebn. Leider kann i dazu ned vül schreibn, weil i den Schritt ned machn hob miassn. Mia kinnan jetzt in unserem Benutzerverzeichnis (im Regelfoi unter dem Pfad "~" zu finden) .qmail-Dateien anlegn, de vom Mailserver automatisch ausglesn wern. Zum Test kannst ja amoi a .qmail-Datei (mia nennen's einfach amoi .qmail-hallo) in deim Home-Verzeichnis anlegn und mit deiner (korrekten) Email-Adresse füttern. Beachte, dass du - damit deine Mails weitergleitet wern - a "&" vor deine Mailadresse setzn muasst, also zum Beispiel &adresse@example.com
Wennst jetzt a E-Mail an hallo@deinedomain.com schickst, wird de, sofern du olles richtig gmacht host, automatisch an adresse@example.com weitergleitet. Des Ganze wolln mia jetzt natürlich automatisiern, damit mia ned jeden Tag erneut die Datei erstöin miassn. Dazu hob i ma a klans Bash-Skript gschriebn, des folgendermaßen ausschaut:
#!/bin/sh
DATE=`date +%d.%m.%Y`
YESTERDAY=`TZ=GMT+24 date +%d.%m.%Y`
rm ~/.qmail-$YESTERDAY
cat <<EOF > ~/.qmail-$DATE
&meineechtemailadresse@devdave.de
EOF
Wos mocht des jetzt?
#!/bin/sh
Soit kloar sei - da Shebang sogt da Konsole, dass mia jetzt a Bash-Skript starten.
DATE=`date +%d.%m.%Y`
Speichert in da Variable "DATE" des aktuelle Datum im Format Tag.Monat.Jahr. Brauchn mia, um die Datei später korrekt zu benennen.
YESTERDAY=`TZ=GMT+24 date +%d.%m.%Y`
De Variable "YESTERDAY" enthoit des Datum vo gestern, ebenfalls im Format Tag.Monat.Jahr
rm ~/.qmail-$YESTERDAY
Da Befehl rm löscht a Datei, in unserem Foi die .qmail-Datei von gestern, und zwoar aus unserem Home-Verzeichnis. Möglicherweise akzeptiert dei Cronjob koane relativen Pfade bzw. kann die Tilde ned richtig auflösn - dann miasstats einfach den absoluten Pfad, zum Beispiel /home/username/, dazu angebn.
cat <<EOF > ~/.qmail-$DATE
&mail@example.com
EOF
CAT schreibt den Inhalt in a Datei, und zwoar in die .qmail-Datei von heit. Do muasst natürlich mail@example.com durch deine primäre Mailadresse ersetzn. Im Ergebnis erstöin mia also jedes Moi, wenn des Skript ausgführt wird, a neiche .qmail-Datei im Format Tag.Monat.Jahr und löschn die oide .qmail-Datei von gestern. Skript amoi ausführn (gegebenenfalls mit chmod +x noch Ausführrechte gebn) und es soit a .qmail-Datei erstöt wern. De Fehlermeldung kannst ignoriern, de sogt uns einfach nur, dass koa Datei von gestern glöscht wern konnt.
Cronjob
Ois letzten Schritt automatisiern mia des Ganze durch unsere crontab.
crontab -e
eingebn und folgende Zeiln hinzufügn:
@daily PFAD_ZUM_SHELL_SKRIPT
(Wobei PFAD_ZUM_SHELL_SKRIPT mit deim - wer hätt's gedacht - Pfad zum Shellskript ersetzt wern muass). Cronjob speichern, wos im besten Foi mit am
crontab: installing new crontab
quittiert wird. Wos passiert jetzt? Imma um 24:00 wird da Cronjob dein Shell-Skript starten, des deine oide .qmail-Datei löscht (mit dem Datum von gestern) und a neiche .qmail-Datei erstöt. E-Mails, de jetzt an die Adresse mit dem gestrigen Datum gehn, wern ned weitergleitet, und E-Mails, de du an die Adresse mit dem aktuellen Datum schickn losst, wern dir entspannt in dein primäres Mailpostfach weitergleitet. Bevor also wer auf die Idee kummt, deine Mailadresse zu valkaufn, is sie scho wieda glöscht :-)
TL;DR
- Qmail installiern, wenn ned scho installiert
- Bash-Skript von oben erstöin, anpassn und mit chmod +x gegebenenfalls ausführbar machn
- crontab -e
- @daily PFAD_ZUM_SKRIPT
PS: Weil i qmail ned söba installiern hob miassn, kann i dazu leider nix sogn. Mi tat aber interessiern, ob euch die Installation leicht gfoin is oda ob's do no wos zu beachtn gibt? Ihr kinnts eure Meinungen dazu gern in den Kommentaren hinterlossn.