Fetchmail
Dieser Artikel beschreibt die Einrichtung von Fetchmail in Zusammenhang mit Postfixadmin. Im Postfixadmin kann im Administratorbereich ein eMail-Fetcher eingerichtet werden, welcher die eMails von einem anderen Server jeweils zum eingestellten Intervall abholt.
Dieser Artikel setzt ein funktionierendes und fertig eingerichtetes Postfixadmin voraus. Die Einrichtung wird im Artikel Mailserver_Basic behandelt.
Fetchmail
Fetchmail aus den Repositories installieren (Ubuntu):
root@localhost:~# apt-get update && apt-get install fetchmail
Datei /etc/default/fetchmail
öffnen und den Wert auf no ändern
root@localhost:~# START_DAEMON=no
Anschließend fetchmail beenden
root@localhost:~# /etc/init.d/fetchmail stop
Postfixadmin
Jetzt geht es weiter mit der Konfiguration des Plugins im Postfixadmin. Hierzu die Datei /var/www/postfixadmin/ADDITIONS/fetchmail.pl
öffnen und folgende Werte entsprechend der Umgebung setzen:
(...) # database settings # database backend - uncomment one of these our $db_type = 'mysql'; #my $db_type = 'mysql'; # host name our $db_host="localhost"; # database name our $db_name="postfix"; # database username our $db_username="postfix"; # database password our $db_password="secret"; (...)
Damit Fetchmail in der Weboberfläche sichtbar wird, muss noch folgender Wert in der config.inc.php
geändert werden:
(...) // Fetchmail // If you don't want fetchmail tab set this to 'NO'; $CONF['fetchmail'] = 'YES'; (...)
System
Es empfiehlt sich für den Fetchmail einen User mit eingeschränkten Rechten zu verwenden. Legen wir den User fetchmailuser an:
root@localhost:~# mkdir /home/fetchmailuser
root@localhost:~# useradd fetchmailuser -d /home/fetchmailuser/
root@localhost:~# chown fetchmailuser: /home/fetchmailuser -R
Anschließend muss das /var/run/fetchmail
Verzeichnis angelegt werden:
root@localhost:~# mkdir /var/run/fetchmail
Jetzt noch die Rechte auf den fetchmailuser anpassen:
root@localhost:~# chown fetchmailuser: /var/run/fetchmail
root@localhost:~# chmod 755 /var/www/postfixadmin/ADDITIONS/fetchmail.pl
Last but not Least wird noch der Crontab eingerichtet:
root@localhost:~# crontab -e
# m h dom mon dow command */1 * * * * sudo -H -u fetchmailuser /var/www/postfixadmin/ADDITIONS/fetchmail.pl > /dev/null 2&>1
Hinweis: Wird der Crontab auf lediglich 5 Minuten gesetzt, ist das kleinste Intervall 5 Minuten, obwohl im Postfixadmin ein niedrigerer Wert eingestellt werden kann.