Sendmail / Fetchmail / sonstiges (fuer Mails)


Automatisch eine Datei als Mail verschicken

Mail nur holen, wenn Verbindung da ist 1.

Mail nur holen, wenn Verbindung da ist 2.

Via E-Mail aktionen ausloesen

keine popper-Meldungen ins syslog schreiben

Wie aktiviere ich eine geaenderte genericstable?

Alte Mailfolder neu sortieren

Wie trenne ich Anhaenge von E-Mails ab?

Wie filtere ich Mailinglisten?

Weitere nuetzliche procmail-Filter

Links zum Thema


Automatisch eine Datei als Mail verschicken

alle27.09.1999
Viele Ereignisse moechte ich nicht sofort gemeldet bekommen, sondern nur ein Mal pro Woche oder Monat. Dazu gehoeren z. B. nicht bekannte Telefonnummern, die meinem Log-Script nicht bekannt sind. Daher habe ich die Meldungen auf eine Datei geleitet, die ich einmal pro Woche per E-Mail an mich schicke und danach loesche.

Hier das dazu notwendige Script:

 
#!/bin/sh
# Datei als E-Mail verschicken ...
# @ Rainer Lischke
mail -s "unbekannte Anrufe" rainer@Rainer.Lischke < /var/log/telefon.unbekannt
echo "telefon.unbekannt ist bisher noch leer" >/var/log/telefon.unbekannt

Anfang
Inhaltsverzeichnis Linux Tips


Mail nur holen, wenn Verbindung da ist

alle28.09.1999
Wenn man laenger Online ist, ist es durchaus sinnvoll, in gewissen intervallen fetchmail nach neuer Post suchen zu lassen. Idealerweise kann man das automatisiert machen, dann funktioniert das auch, wenn keiner an der Kiste sitzt.

Dazu sind mir zwei Loesungen eingefallen, die Erste funktioniert ueber einen Cron-Eintrag, nachfolgendes Script lauft bei mir alle 10 Minuten:

 
#! /bin/sh
# @ Rainer Lischke
# testen, ob Internet-Zugang aktiv ist, wegen mail abholen ...
if [ `imontty | grep -c Out` == 1 ]
then
   /usr/bin/fetchmail -a -v >>/var/log/fetchmail 2>&1 
fi
Noch besser geht es mit nachfolgendem Script, das aus der IP-UP aufgerufen werden sollte und sich alle 10 Minuten neu aufruft und die Post holt, solange man Online ist:
 
#! /bin/sh
# @ Rainer Lischke
# testen, ob Internet-Zugang aktiv ist, wegen mail abholen ...
if [ `imontty | grep -c Out` == 1 ]
then
   /usr/bin/fetchmail -a -v >>/var/log/fetchmail 2>&1 
   sleep 10Min
   get-mail&
fi

Anfang
Inhaltsverzeichnis Linux Tips


Mail nur holen, wenn Verbindung da ist 2.

alle29.09.1999
Hier noch eine Variante fuer das Mail-Abholen-Problem, einfach in IP-UP fetchmail als Daemon starten, mit dem passenden Intervall. In IP-DOWN wird der Daemon dann wieder gestoppt.

fetchmail -d 300 startet den daemon mit einem Intervall von 300 Sekunden, also alle 5 Minuten.

fetchmail -q beendet den Daemon wieder.

Anfang
Inhaltsverzeichnis Linux Tips


Via E-Mail Aktionen ausloesen

alle28.09.1999
Um aufgrund von E-Mails Aktionen auszuloesen, genuegt ein einfacher Eintrag in der .procmailrc:
 
:0:
* ^From: .*mir@persoenlich.de
* ^Subject: Mach Kaffee
| /usr/local/sbin/SchalteKaffeemaschineAn
Hoffentlich schmeckt der Kaffee ... ;-)))

Anfang
Inhaltsverzeichnis Linux Tips


keine popper-Meldungen ins syslog schreiben

alle26.11.1999
Es handelt sich hierbei um tcpd logs und _nicht wirklich_ um popper logs. Und wenn man den "popper" ohne den "tcpd" in die "inetd.conf" schreibt, gibt es keine Eintraege in der /var/log/messages. Allerdings greifen dann natuerlich die Rules in hosts.deny und hosts.allow auch nicht mehr. Ob das ganze aus Sicherheitsgruenden sinnvoll ist, ist natuerlich eine andere Frage.

Aber die Log-Eintraege in /var/log/messages werden tatsaechlich vom "tcpd" verursacht und nicht vom "popper" selber. Man kann es eigentlich auch daran erkennen, dass bei allen Services, die ueber den "tcpd" gestartet werden, die Eintraege in der /var/log/messages immer genau gleich aussehen (nur der Name des Services ist natuerlich geaendert).

Noch eine Variante, in der syslog.conf ;local6.none in die Zeile schreiben in der der Eintrag fuer die /var/log/messages steht.

Oder: mail.* |/var/log/mail
sollte im syslog.conf helfen...

Anfang
Inhaltsverzeichnis Linux Tips


Wie aktiviere ich eine geaenderte genericstable?

alle21.01.2000
Wenn man in der /etc/mail/genericstable Aenderungen gemacht hat, muessen diese mit den Befehl:
makemap hash /etc/mail/genericstable.db < /etc/mail/genericstable
in die Datenbank eingetragen werden. Diese wird automatisch neu eingelesen.

Anfang
Inhaltsverzeichnis Linux Tips


Alte Mailfolder neu sortieren

alle20.06.2000
Um alte Mailfolder (z. B. Netscape-Format oder sonstwie "vernuenftig") neu zu sortieren, bzw. in verschiedene Ordner einzusortieren kann man formail verwenden:

formail -s procmail old-mbox

Damit wird jede einzelne Mail aus der Datei durch procmail geschoben, und procmail verwendet dabei die Einstellungen aus ~/.procmailrc. Achte darauf, daß old-mbox keine der Dateien ist, in denen Mails beim Sortieren gespeichert werden.

Anfang
Inhaltsverzeichnis Linux Tips


Wie trenne ich Anhaenge von E-Mails ab?

alle11.07.2000
Dazu gibt es ein Perl-Script unattach.pl, welches diese Arbeit wunderbar uebernehmen kann. Geschrieben wurde es von 1997 Kawasaki Yuusuke.

Zuerst sortiert man sich alle Mails mit Anhang per procmail in eine Datei, aus der man dann den Anhang extrahieren kann.

Anfang
Inhaltsverzeichnis Linux Tips


Wie filtere ich Mailinglisten?

alle18.07.2000
Mit folgendem Rezept werden alle Mails an den Empfaenger suse-linux gefiltert und in den ordner suse-linux-inbox verschoben.
# Filter, um alle E-Mails an den Empfaenger suse-linux in einen 
# eigenen Mailfolder zu verschieben.
:0
   * (TO.*suse-linux)
   suse-linux-inbox
Sicherer ist jedoch die Variante, die einige Mailiunglisten (darunter auch die SuSE-Listen) bieten. Es gibt den Eintrag X-Mailinglist, nach dem man treffsicher filtern kann:
:0
   * ^X-Mailinglist.*suse-linux
   suse-linux-inbox
Anstelle des Mail-Folders kann natuerlich auch ein beliebiger anderer Benutzer stehen, der dann die Mails in sein Postfach bekommt und wiederum ueber procmail filtern kann. Dabei sollte man Loop's vermeiden, sonst kreisen die Mails bis in alle Ewigkeit ... ;-)))

Anfang
Inhaltsverzeichnis Linux Tips


Weitere nuetzliche procmail-Filter

alle19.07.2000
Hier stelle ich noch ein paar nuetzliche procmail-Regeln hin, wer geschickte oder komplizierte Regeln hat die funktionieren, darf mir diese gerne zusenden. Damit kann ich die Liste hier erweitern.

# Alles was an suse-linux geht und im Subject test hat soll 
# geloescht werden (VORSICHT, das Zeug ist definitiv weg)
:0
   * (TO.*suse-linux)
   * ^Subject:.*test
   /dev/null
# Alles was an suse-linux geht soll als Reply-To - Adresse 
# die Liste bekommen
   :0fhw
   * 1^0 ^X-Mailinglist:.*suse-linux
   * 1^0 ^TO.*suse-linux@suse\.(com|de)
   formail -i "Reply-To: suse-linux@suse.com"

Anfang
Inhaltsverzeichnis Linux Tips


Links zum Thema

Links zu procmail

Universitaet Innsbruck
TU Wien
Uni Giessen
eine priv. Seite


Falls sie Anregungen, Beschwerden oder sich einfach nur so zu dieser Homepage aeussern wollen, kein Problem. Unser Webmaster kümmert sich darum.
If you had any suggestions, or hints, please contact our Webmaster. Thank You.

Letzte Aktualisierung / Last update: