Debian Squeeze - Postfix und Spamassassin

Hallo liebe Experten,

ich habe ein paar Fragen allgemeiner und konkreter Natur. Zunächst sei noch die Anmerkung angebracht, dass ich noch recht neu in der Linux-Welt bin.

Zunächst eine allgemeine zur Frage Logfile-Auswertung:
Wie kann ich ein Log (z.B. syslog) nach Einträgen mit einem bestimmten Zeitstempel durchsuchen (z.B.: zeige mir alle Log-Einträge vom 08. März um 15.15.xx Uhr an)?

Ich habe einen Mailserver - u.a. basierend auf Postfix als MTA und Spamassassin zur Spam-Erkennung und -Behandlung.
Die Dateien /etc/postfix/sender_access und /etc/postfix/client_access dienen ja zum Blacklisten ganzer Mail-Domains. Meine gemachten Eintragung scheinen aber keine Wirkung zu haben. Ich vermute einen Syntax-Fehler, zumal ich in Internet-Quellen verschiedene Erklärung zur Arbeit in diesen Dateien gelesen habe. Ist folgende Schreibweise richtig:

/^.*.domainname.com/ REJECT oder auch
/^.*.domainname.com$/ REJECT

Auf anderen Quellen lese ich zu meiner Verwirrung dann Einträge ohne die Deklarierung der Sonderzeichen:

domainname.com/ REJECT

Ich hoffe, mir kann hierbei jemand helfen. Wie blockiere ich am effektivsten einzelne konkrete Mail-Adressen? Auch in diesen Dateien? Wenn ja, wie ist die Syntax? Oder ist es besser, eine Eintragung in der /etc/spamassasin/local.cf mittels blacklist_from-Befehl vorzunehmen? Was ist der Unterschied?

Der Bayesian classifier ist bei mir in selbiger Config-Datein inaktiv die Zeilen use_bayes 1 und bayes_auto_learn 1 sind auskommentiert). Wo und wie wird dieser konfiguriert? Kann es Konflikte mit anderen Prozessen / Diensten geben, sobald dieser aktiv ist?

Gibt es sonst / zusätzlich eine Möglichkeit, den Spamassassin zu „unterrichten“ / ihn beispielsweise mit von Dritten gepflegten Blacklists zu füttern?

Noch zwei Fragen zu verschiedenen Warnmeldungen im Log und von Cron.

Von Cron erhalte ich immer beim Durchlauf von ntpdate die Meldung

ntpdate: command not found

Dieser Fehler tritt auch beim Nutzen von ntpdate-debian auf.

Vom logrotate-Script bekomme ich die Meldung

[warn] module php5_module is already loaded, skipping

zwei mal zurück. Hierbei soll laut verschiedener Quellen eine Zeile zum Laden dieses Moduls doppelt in der httpd.conf vorkommen. Meine ist aber leer. Auch in der apache2.conf existiert keine solche Zeile (geschweige denn doppelt). In der Datei /etc/apache2/sites-enabled/php5.load taucht eine solche Zeile einmalig auf. Wenn ich diese auskommentiere, schlägt jedoch der Apache-Restart fehl.

Für eure Hilfe bedanke ich mich im Voraus,

Enzo

Willst du nicht auch noch wissen, warum Männer Brustwarzen haben und welchem Autor Nero seine Brandfantasien verdankt? Wenn du völlig verschiedene Fragen zu völlig verschiedenen Themen hast, kannst du daraus natürlich einen Eintopf kochen. Nur wirst du den dann selbst auslöffeln müssen. Andernfalls empfiehlt es sich, Fragen zu Mailservern im Mail-Brett, Fragen zu Apache im Serverbrett und ausschließlich Fragen zu Linux/Unix im Linux/Unix-Brett, jede für sich, zu stellen.

Wie kann ich ein Log (z.B. syslog) nach Einträgen mit einem
bestimmten Zeitstempel durchsuchen

grep

ntpdate: command not found

Wenn du ntpdate installierst, wird’s sicher auch gefunden werden.

[warn] module php5_module is already loaded, skipping

Und welches Problem hast du damit?

HTH

Hallo Enzo,

Wie kann ich ein Log (z.B. syslog) nach Einträgen mit einem
bestimmten Zeitstempel durchsuchen (z.B.: zeige mir alle
Log-Einträge vom 08. März um 15.15.xx Uhr an)?

Da gibt es viele Möglichkeiten. Eine wäre less mit seinen Suchmöglichkeiten zu benutzen, eine andere die Systemprotokollbetrachter, die es für Gnome (Paket gnome-utils) als auch für KDE ksystemlog
http://www.kde.org/applications/system/ksystemlog/
gibt. Beide haben die Möglichkeit, Filter anzulegen, um nur bestimmte Ereignisse zu sehen.
Das kannst Du auch von Hand stricken, indem Du den Befehl logger (s. man logger) mit grep, sed, awk, perl oder was immer Du magst, zu einem Skript verbindest. Ganz simpel würde es mit grep so aussehen:

grep "Mar 08 15:15" /var/log/syslog

wobei es auch darauf ankommt, in welchem Format Du deine syslog ausgegeben wird.
Am anderen Ende der Skala existieren dann schon fertige Sachen wie z.B. logwatch
http://sourceforge.net/projects/logwatch/
die aber deutlich über das blosse Ansehen von Log-Dateien hinausgehen. Für deinen Wunsch würde das grep-Beispiel völlig ausreichen.

/^.*.domainname.com/ REJECT oder auch
/^.*.domainname.com$/ REJECT
Auf anderen Quellen lese ich zu meiner Verwirrung dann
Einträge ohne die Deklarierung der Sonderzeichen:
domainname.com/ REJECT

davon solltest Du dich nicht verwirren lassen.

domainname.com/ REJECT

spricht eben nur bei genau diesem domainname.com an, während die beiden oberen sogenannte reguläre Ausdrücke sind, die mehr abfangen, also z.B. auch
alpha.domainname.com oder beta.domainname.com
Um das zu verstehen, empfehle ich dir, etwas über reguläre Ausdrücke zu lesen:
http://de.wikipedia.org/wiki/Regul%C3%A4rer_Ausdruck
ist z.B. auch für grep nützlich.

Wie blockiere ich
am effektivsten einzelne konkrete Mail-Adressen?

Wird z.B. hier ganz gut erklärt:
http://chems-chaos.de/2010/04/07/selektiv-e-mail-adr…

Der Bayesian classifier ist bei mir in selbiger Config-Datein
inaktiv die Zeilen use_bayes 1 und bayes_auto_learn 1 sind
auskommentiert). Wo und wie wird dieser konfiguriert?

Erste Ermüdungserscheinungen bei mir :wink: Ich verstehe nicht ganz, was genau Du wissen willst? Die Antwort hast Du doch schon selbst gegeben, SpamAssassin erwartet seine Konfiguration im Verzeichnis /etc/spamassassin/, speziell in der Datei local.cf
http://www.postfix-howto.de/konfiguration/spamassass…

Kann es
Konflikte mit anderen Prozessen / Diensten geben, sobald
dieser aktiv ist?

Keine Ahnung, aber Ball zurück, welche Konflikte sollte es denn geben, bzw. welche befürchtest Du denn?

Gibt es sonst / zusätzlich eine Möglichkeit, den Spamassassin
zu „unterrichten“ / ihn beispielsweise mit von Dritten
gepflegten Blacklists zu füttern?

Ja, z.B. hier gibt es eine Liste von Blacklists, die als cf-Files in /etc/mail/spamassassin eingefügt werden können:
http://wiki.apache.org/spamassassin/CustomRulesets

Von Cron erhalte ich immer beim Durchlauf von ntpdate die
Meldung
ntpdate: command not found

Vollen Pfad im cron-Skript angegeben?

[warn] module php5_module is already loaded, skipping

Startet dein Apache eventuell zweimal?

Für eure Hilfe bedanke ich mich im Voraus,

Bitte sehr.
Aber für das nächste Mal sei mir der kleine Hinweis erlaubt, es erhöht die Bereitwilligkeit zum Antworten enorm, wenn Du deine Fragen etwas aufteilst, also lieber mehrere Anfragen in verschiedenen Threads, als viele, viele kleine Anfragen in eine einzige verpackt.
Macht sich auch bei eventuellen Rückfragen besser. Gefühlte zehn Anfragen in einem Posting sind etwas unübersichtlich und auch anstrengend.

Viele Grüße
Marvin

spricht eben nur bei genau diesem domainname.com an, während
die beiden oberen sogenannte reguläre Ausdrücke sind, die mehr
abfangen,

Der Unterschied ist schon ein bisschen größer. Wenn die Datei reguläre Ausdrücke enthält, ansonsten aber als Textdatei abgelegt wird, ist sie in der main.cf mit dem Attribut pcre: anzusprechen, andernfalls als hash:.

Wird die Datei jedoch, was im vorliegenden Fall einschlägig sein dürfte, in der main.cf gar nicht erst eingebunden, wird sie auch nie ausgewertet.

Gruß

Hallo Herrmann,

Der Unterschied ist schon ein bisschen größer. Wenn die Datei
reguläre Ausdrücke enthält, ansonsten aber als Textdatei
abgelegt wird, ist sie in der main.cf mit dem Attribut pcre:
anzusprechen, andernfalls als hash:.

Danke für den Hinweis. Solche wichtigen Details hatte ich bei dieser Riesenanfragen jetzt auch nicht mehr im Kopf. Aber die Schreibweisen sind wohl beide ok.

Viele Grüße
Marvin

Willst du nicht auch noch wissen, warum Männer Brustwarzen
haben und welchem Autor Nero seine Brandfantasien verdankt?
Wenn du völlig verschiedene Fragen zu völlig verschiedenen
Themen hast, kannst du daraus natürlich einen Eintopf kochen.
Nur wirst du den dann selbst auslöffeln müssen. Andernfalls
empfiehlt es sich, Fragen zu Mailservern im Mail-Brett, Fragen
zu Apache im Serverbrett und ausschließlich Fragen zu
Linux/Unix im Linux/Unix-Brett, jede für sich, zu stellen.

Also für diesen Umstand entschuldige ich mich. In der Forum-Übersicht (oben links) konnte ich aber im Bereich „Computer“ keine Mail-Brett und auch keine Server-Brett finden.

ntpdate: command not found

Wenn du ntpdate installierst, wird’s sicher auch gefunden
werden.

ntpdate ist aber schon installiert! Das war auch meine erste Vermutung. Habe auch ein apt-get install --reinstall durchgeführt, es brachte aber auch keine Besserung. :confused:

[warn] module php5_module is already loaded, skipping

Und welches Problem hast du damit?

HTH

Problem? Nun, ich bin lediglich bestrebt, die Konfiguration des Servers zu verbessern bzw. „ordentlich“ (ich weiß, was heisst das schon) zu halten. Eine Warnung ist zwar nicht gleich ein Error, aber theoretisch haben da auch nichts verloren. Und wie bereits erwähnt bin ich noch recht neu in der Linux-Welt und ich sehe das hier auch als Lernhilfe an…

Ein ps -aux wirft mir 10 Instanzen von

www-data {…} /usr/sbin/apache2 -k start

aus. Ist das plausibel?

grep „Mar 08 15:15“ /var/log/syslog

Danke! Funktioniert genau nach dem Schema.

Der Bayesian classifier ist bei mir in selbiger Config-Datein
inaktiv die Zeilen use_bayes 1 und bayes_auto_learn 1 sind
auskommentiert). Wo und wie wird dieser konfiguriert?

Erste Ermüdungserscheinungen bei mir :wink: Ich verstehe nicht
ganz, was genau Du wissen willst? Die Antwort hast Du doch
schon selbst gegeben, SpamAssassin erwartet seine
Konfiguration im Verzeichnis /etc/spamassassin/, speziell in
der Datei local.cf
http://www.postfix-howto.de/konfiguration/spamassass…

Kann es
Konflikte mit anderen Prozessen / Diensten geben, sobald
dieser aktiv ist?

Keine Ahnung, aber Ball zurück, welche Konflikte sollte es
denn geben, bzw. welche befürchtest Du denn?

Nunja. Ich dachte, da ist irgendwo noch mehr zu konfigurieren, als nur diese beiden Zeilen zu aktivieren (# entfernen). Warum ist der nicht von Werk ab aktiviert?

Gibt es sonst / zusätzlich eine Möglichkeit, den Spamassassin
zu „unterrichten“ / ihn beispielsweise mit von Dritten
gepflegten Blacklists zu füttern?

Ja, z.B. hier gibt es eine Liste von Blacklists, die als
cf-Files in /etc/mail/spamassassin eingefügt werden können:
http://wiki.apache.org/spamassassin/CustomRulesets

Von Cron erhalte ich immer beim Durchlauf von ntpdate die
Meldung
ntpdate: command not found

Vollen Pfad im cron-Skript angegeben?

Hab ich jetzt mal gemacht.

[warn] module php5_module is already loaded, skipping

Startet dein Apache eventuell zweimal?

Ein ps -aux zeigt mir kein apache2, dafür aber 10 Instanzen von

www-datea {…} /usr/sbin/apache2 -k start

Ist das plausibel?

Hallo Enzo,

Nunja. Ich dachte, da ist irgendwo noch mehr zu konfigurieren,
als nur diese beiden Zeilen zu aktivieren (# entfernen). Warum
ist der nicht von Werk ab aktiviert?

Keine Ahnung. Frag mal die, die das programmiert haben. Aber vielleicht nach dem Motto: „Bei Linux ist jeder Admin selbst verantwortlich für seine Einstellungen. Du kannst alles tun, solltest aber wissen, was Du machst“ :wink:

ntpdate: command not found

Vollen Pfad im cron-Skript angegeben?

Hab ich jetzt mal gemacht.

Und, hat es was gebracht?

10 Instanzen
von
www-datea {…} /usr/sbin/apache2 -k start
Ist das plausibel?

Plausibel schon, aber bisschen viel. Was steht denn in deiner apache2.conf bei StartServers?
http://httpd.apache.org/docs/2.2/de/mod/mpm_common.h…
Bei mir steht da 5 und ich habe auch nur 5. Wenn bei dir eben 10 steht, ist es ja gut, wenn nicht, dann ist es schon weniger plausibel.
Sieh doch mal in den /var/log/apache2/error*-log nach, ob da was hilfreiches steht.
Kannst den Apache ja auch mal von Hand mit

apache2ctl stop

anhalten und wieder starten

apache2ctl start

und nachsehen, was mit den Prozessen und Fehlermeldungen passiert.
Mehr fällt mir im Moment auch nicht ein, außer der Nachfrage, ob Du irgendwas beim Apache von Hand verändert hast.

Viele Grüße
Marvin

ntpdate ist aber schon installiert! Das war auch meine erste
Vermutung. Habe auch ein apt-get install --reinstall
durchgeführt, es brachte aber auch keine Besserung. :confused:

Kann es sein, dass der aufrufende Job unter einer anderen Benutzerkennung als root startet? ntpdate liegt unter Debian in /usr/sbin, und dieses Verzeichnis liegt für normale Benutzer üblicherweise nicht im Pfad. Das führt schnurstracks zu der von dir beschriebenen Fehlermeldung.

Gruß

Hallo, ja kann durchaus sein. Wie finde ich das raus und wie ändere ich das? Die Eingabe des kompletten Pfades von ntpdate in crontab -e hat zumindest den Fehler „command not found“ behoben. Nun berichtet der Cron Job aber jeden Tag per Mail, dass ntpdate-debian ein Offset von mindestens 4 bis 5 Sekunden hat (jeden Tag). Wie kann das sein? Kann ich die Cron-Meldung / Mail-Benachrichtung für einzelne Scripte / Dienste (wie eben beispielsweise ntpdate) abstellen? Wie?

Gruß und danke erneut,

Enzo

Hallo, ja kann durchaus sein. Wie finde ich das raus und wie
ändere ich das? Die Eingabe des kompletten Pfades von ntpdate
in crontab -e hat zumindest den Fehler „command not found“
behoben.

Dinge wie ntpdate gehören m. E. eigentlich in die System-Crontab. Mit dem Befehl crontab -e edtierst du jedoch grundsätzlich die User-Crontab desjenigen Benutzers, unter dessen Anmeldung du den Befehl aufgerufen hast. Die System-Crontab liegt unter /etc/crontab, und die editierst du, indem du die Datei, als root angemeldet, wie andere Textdateien auch mit einem beliebigen Editor öffnest.

Nun berichtet der Cron Job aber jeden Tag per Mail,
dass ntpdate-debian ein Offset von mindestens 4 bis 5 Sekunden
hat (jeden Tag). Wie kann das sein?

Wenn die PC-Uhr etwas ungenau ist, kommt eine solche Zeitdifferenz leicht zustande.

Kann ich die Cron-Meldung
/ Mail-Benachrichtung für einzelne Scripte / Dienste (wie eben
beispielsweise ntpdate) abstellen? Wie?

Indem du bei Befehlsaufruf mitteilst, dass Ausgaben und Fehlermeldungen unterdrückt werden sollen:

\*/30 \* \* \* \* root /usr/sbin/ntpdate ptbtime1.ptb.de \> /dev/null 2\>&1;

HTH

Hallo,

Nun berichtet der Cron Job aber jeden Tag per Mail,
dass ntpdate-debian ein Offset von mindestens 4 bis 5 Sekunden
hat (jeden Tag). Wie kann das sein?

Wenn die PC-Uhr etwas ungenau ist, kommt eine solche
Zeitdifferenz leicht zustande.

Ich hatte bestimmt schon erwähnt, daß ich chrony für viele Zwecke sehr gut geeignet halte?

Kann man gut unter Debian installieren, ist sinnvoll vorkonfiguriert. ntpdate habe ich garnicht mehr …

Sebastian