Postfix auswerten

Screenshot Mailgraph

Die Aufgabe: die Arbeit von einen Postfix grafisch darstellen. Im Intranet sollten entsprechende Graphen abrufbar sein. Als zusätzliche Besonderheit waren die unterschiedlichen Installationsstandorte (Apache und Postfix, beides Fedora Core 5) zu beachten.

Die Lösung: die Log-Dateien vom Postfix werden mit mailgraph und queuegraph überwacht. Beide Werkzeuge schreiben ihre Ergebnisse in eine Round-Robin-Datenbank. Diese wird per NFS für den Webserver lesbar gemacht, so das die dort abgelegten CGI-Skripte die Daten aufbereiten und darstellen können.

Die Installation auf dem Postfix-Server:

Die Archive mailgraph-1.13.tar.gz und queuegraph.tar.gz herunterladen und auspacken.

[code lang=“bash“]mkdir /root/graph
cd /root/graph
wget http://mailgraph.schweikert.ch/pub/mailgraph-1.13.tar.gz
tar xzvf mailgraph-1.13.tar.gz
wget http://www.arschkrebs.de/postfix/queuegraph/queuegraph.tar.gz
tar xzvf queuegraph.tar.gz[/code]

Eventuell fehlende Perl-Pakete nachinstallieren (inkl. der abhängigen Pakete).

[code lang=“bash“]yum install perl-RRD-Simple.noarch
yum install perl-File-Tail.noarch[/code]

Ein Verzeichnis für die Datenbanken anlegen.

[code lang=“bash“]mkdir /var/rrd[/code]

Das Startskript /root/graph/mailgraph-1.13/mailgraph-init anpassen.

[code lang=“bash“]PATH=/bin:/usr/bin
MAILGRAPH_PL=/root/graph/mailgraph-1.13/mailgraph.pl
MAIL_LOG=/var/log/maillog
PID_FILE=/var/run/mailgraph.pid
RRD_DIR=/var/rrd[/code]

Die kontinuierliche Überwachung für mailgraph starten.

[code lang=“bash“]/root/graph/mailgraph-1.13/mailgraph-init start[/code]

Die Konfiguration /root/graph/queuegraph/queuegraph-rrd.sh anpassen.

[code lang=“bash“]RRDFILE=/var/rrd/queuegraph.rrd[/code]

Die kontinuierliche Überwachung für queuegraph in /etc/crontab einrichten.

[code lang=“bash“]* * * * * root /root/graph/queuegraph/queuegraph-rrd.sh[/code]

Die NFS-Freigabe in der /etc/exports hinterlegen. Die Ip-Adresse vom Webserver ist 192.168.0.200 und erhält nur Leserechte.

[code lang=“bash“]/var/rrd 192.168.0.200(ro)[/code]

In der /etc/hosts.deny alles verbieten.

[code lang=“bash“]portmap:ALL
lockd:ALL
mountd:ALL
rquotad:ALL
statd:ALL[/code]

In der den Zugriff für den Webserver freigeben.

[code lang=“bash“]portmap: 192.168.0.200
lockd: 192.168.0.200
rquotad: 192.168.0.200
mountd: 192.168.0.200
statd: 192.168.0.200[/code]

Zum Abschluss den NFS-Server starten.

[code lang=“bash“]/etc/init.d/nfs start[/code]

Die Einrichtung auf dem Apache-Server:

Die CGI-Skripte auf den Webserver kopieren. Die Ip-Adresse vom Postfix-Server ist die: 192.168.0.100

[code lang=“bash“]cd /var/www
scp 192.168.0.100:/root/graph/mailgraph-1.13/mailgraph.cgi cgi-bin/
scp 192.168.0.100:/root/graph/queuegraph.cgi cgi-bin/[/code]

Eventuell fehlende Perl-Pakete nachinstallieren (inkl. der abhängigen Pakete).

[code lang=“bash“]yum install perl-RRD-Simple.noarch
yum install perl-File-Tail.noarch[/code]

Die NFS-Freigabe verbinden.

[code lang=“bash“]mkdir /var/rrd
/etc/init.d/portmap start
mount 192.168.0.100:/var/rrd /var/rrd[/code]

Das Skript /var/www/cgi-bin/mailgraph.cgi anpassen.

[code lang=“bash“]my $rrd = ‚/var/rrd/mailgraph.rrd‘;
my $rrd_virus = ‚/var/rrd/mailgraph_virus.rrd‘;
my $tmp_dir = ‚/tmp‘;[/code]

Das Skript /var/www/cgi-bin/mailgraph.cgi anpassen.

[code lang=“bash“]my $rrd = ‚/var/rrd/queuegraph.rrd‘;
my $tmp_dir = ‚/tmp‘;[/code]

Das war es! Ab sofort können die Adressen http://192.168.0.200/cgi-bin/mailgraph.cgi und http://192.168.0.200/cgi-bin/queuegraph.cgi im Browser aufgerufen werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.