spamdyke bekommt MySQL-Support

Code:
CREATE TABLE `spamdyke_log_table` (
      `id` bigint(7) NOT NULL auto_increment,
      `time` timestamp NOT NULL default CURRENT_TIMESTAMP,
      `reason` varchar(20) character set utf8 NOT NULL,
      `from` varchar(50) character set utf8 NOT NULL,
      `to` varchar(50) character set utf8 NOT NULL,
      `ip` varchar(15) character set utf8 NOT NULL,
      `rdns` varchar(50) character set utf8 NOT NULL,
      `auth` varchar(25) character set utf8 NOT NULL,
      PRIMARY KEY  (`id`),
      KEY `time` (`time`),
      KEY `reason` (`reason`,`from`,`to`,`ip`,`rdns`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=uft8;
MOD: Bitte Code-Tags verwenden.

Ich glaube es sollte utf heißen oder?
In den öffentlich zugängigen sources die du erstellt hast.
 
Last edited by a moderator:
spamdyke 4.0.7-mysql

UPDATE, spamdyke 4.0.7-mysql
(Tabellen und spamdyke.conf brauchen NICHT geändert zu werden!!)

Hier nun doch die Sourcen für etwaige andere Tester:

http://www.haggybear.de/download/spamdyke-4.0.7-mysql.tgz

Hallo zusammen,
hier nochmal die Hinweise zu Nutzung des MySQL-Loggens
mit spamdyke-4.0.7-mysql.

Die Installation des Pakets ist genauso wie die des normalen spamdykes. Mit einer Ausnahme, die MySQL-Header müssen am Start sein. Ggf. das mysql-devel Paket nachinstallieren.

Wenn spamdyke installiert ist und dann das zusätzliche Loggen ist eine MySQL-Datenbank aktiviert werden soll:

1) Wähle oder erstelle eine beliebige MySQL-Datenbank

2) In dieser DB eine Tabelle erstellen:
PHP:
        CREATE TABLE `spamdyke_log_table` (
      `id` bigint(7) NOT NULL auto_increment,
      `time` timestamp NOT NULL default CURRENT_TIMESTAMP,
      `reason` varchar(20) character set utf8 NOT NULL,
      `from` varchar(50) character set utf8 NOT NULL,
      `to` varchar(50) character set utf8 NOT NULL,
      `ip` varchar(15) character set utf8 NOT NULL,
      `rdns` varchar(50) character set utf8 NOT NULL,
      `auth` varchar(25) character set utf8 NOT NULL,
      PRIMARY KEY  (`id`),
      KEY `time` (`time`),
      KEY `reason` (`reason`,`from`,`to`,`ip`,`rdns`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
In der spamdyke.conf folgende Parameter hinzufügen(erst wenn alle drei da sind, wird in die Tabelle geloggt.

PHP:
config-mysql-database=<DB-NAME>
config-mysql-username=<DB-USER>
config-mysql-password=<DB-PASS>
Desweiteren aus dem Ordner /cron das Script spamdyke-mysql-cleanup bitte in /etc/cron.daily kopieren, ausführbar machen und anpassen. Damit die DB nicht zu voll läuft.

Gruß
Haggy
 
Ich habe das spamdyke noch ein wenig umgebaut, hinsichtlich des configure.

Hier wird jetzt gepüft ob a) mysql am start ist und b) ob das mysql-devel Paket da ist. Beim ./configure sollten die folgende Ausgaben drin sein:

Code:
checking for MySQL (for MySQL-Logging support)... yes
checking for MySQL includes (for MySQL-Logging support)...yes
Sollte das nicht der Fall sein, so wird beim nachfolgenden make, das normale Spamdyke gebaut.

Nachdem make && make install mit spamdyke -v überprüfen ob das Spamdyke mit MySQL gebaut wurde.

Code:
india121:~/src/spamdyke/spamdyke-4.0.7-mysql/spamdyke# spamdyke -v
spamdyke 4.0.7+TLS+CONFIGTEST+DEBUG[COLOR=Red][B]+MYSQL[haggybear.de][/B][/COLOR] (C)2008 Sam Clippinger, samc (at) silence (dot) org
http://www.spamdyke.org/

Use -h for an option summary or see README.html for complete option details.
Gruß
Haggy
 
@haggybear

Auch das mini update hat ohne Porbs. funktioniert.

Code:
checking for library containing SSL_library_init... none required
checking for OpenSSL libraries (for TLS support)... yes
checking for MySQL (for MySQL-Logging support)... yes
checking for MySQL includes (for MySQL-Logging support)...yes
checking for library containing inet_aton... none required

Gruß
Harpi
 
Fehlt mir da was ?

Hi,

wenn ich das Cleanup für die DB laufen lasse bekomme ich folgende FM:

Can't modify constant item in scalar assignment at ./spamdyke-mysql-cleanup line 4, near "'DBI:mysql:spamdyke:localhost:3306';"
BEGIN not safe after errors--compilation aborted at ./spamdyke-mysql-cleanup line 4.

Fehlt mir da was auf dem Server ??
 
komische einträge in der DB

Hallo,

das Logging etc funzt super aber ich habe bei jedem 2 Eintrag so was wie:

Reason: /var/qmail/spamdyke/
from:No such file or directory
to: Hhø¿0óЖ
ip:‹Eð‹]ô‹uø‹}ü‰ì]
rdns: páÚ·páÚ·

der nachfolgende Eintrag ist wieder OK.

Hat jemand eine Idee dazu, denn das bläst die DB ja schon auf...
 
Fehler im SQL-Log?

Hallo,

bin ich der einzige, der es schafft, aus einer Mail 2 Zeilen im SQL-SCP zu bekommen? Scheint am Spamdyke Log-Level "verbose" zu hängen. Aber wäre es nicht möglich die "falsche" Zeile einfach nur zu ignorieren?


Die Einträge im Maillog (Eingehende Mail + ein wenig "x" zur Sicherheit):
Oct 29 08:03:07 xxx spamdyke[4088]: FILTER_GRAYLISTED sender: dwrifondazionem@rifondazione.it recipient: hoteln@hotelxxx.de path: /var/qmail/spamdyke/greylist/hotelxxx.de/hoteln/rifondazione.it/dwrifondazionem

+

Oct 29 08:03:07 xxx spamdyke[4088]: DENIED_GRAYLISTED from: dwrifondazionem@rifondazione.it to: hoteln@hotelxxx.de origin_ip: 89.178.231.157 origin_rdns: 89-178-231-157.broadband.corbina.ru auth: (unknown)



Daraus werden im SCP:
Richtung | Absender | Empfänger | Bewertung | Absende IP | Reverse DNS
ausg. | hoteln@hotelxxx.de | /var/qmail/spamdyke/greylist/h... | dwrifondazionem@rifo | dwrifondazionem | (null)

+

eing. | dwrifondazionem@rifondazione.i... | hoteln@hotelxxx.de | DENIED_GRAYLISTED | 89.178.231.157 | 89-178-231-157.broadband.corbi...


Nur zur Info: Mein System ist Plesk 8.6 auf einem Debian Etch. Beides inkl. aller offiziellen Patches. Ich nutze die Spamdyke-Version 4.0.7.
 
Schon passiert .. auf Level "info" ist alles bestens.
Nur fand ich immer die angaben beginnend mit "FILTER_" sehr aufschlussreich wenn man mal was nachverfolgen wollte.

Ausserdem kann ich bestätigen, dass nun auch bei bisher 38.000 Einträge pro Domain und Tag alles angezeigt wird und es keinen Absturz gibt. :p

Zeit bis die Maske aufgeht ca 6. Sekunden. Einfach TOP :)


Und hier wieder kein Meckern, sondern nur was mir noch auffiel:
Wenn man sich gerade den Vortag ansieht und dann auf die Gesamtübersicht klickt, kommt eine Gesamtübersicht für den aktuellen Tag. Ist das Absicht?

Auch scheint die Anzahl der aktiven Spamdykeprozesse immer um 1 zu hoch zu sein (verglichen mit der "top" Auswertung auf Linuxebene).

Und dann noch:
Bei einem kleineren Account lese ich z.B.
Abgelehnte Mails : 19
Greylisting : 6
andere Variante : 13
5 dieser Greylisted Mails wurden aber dann im 2.ten Anlauf akzeptiert. Wahrscheinlich nicht leicht rauszufiltern, sorgt aber für eine leichte Verfälschung der Statistik, da ja damit auch der Wert für "alle Anfragen" um diese 5 überhöht ist.


Ansonsten muss ich es einfach immer wieder sagen: Vielen Dank für dieses tolle Tool ... Immer wieder praktisch und leicht zu bedienen. Danke dafür und für die ganze Zeit, die du dafür investiest.
 
Wenn man sich gerade den Vortag ansieht und dann auf die Gesamtübersicht klickt, kommt eine Gesamtübersicht für den aktuellen Tag. Ist das Absicht?
Ja und nein, ursprünglich war das mal so angedacht, das beim Wechseln in die Gesamtübersicht immer der aktuelle Tag rangezogen wird. Mittlerweise nervt mich das aber auch und daher werde ich das mittelfristig umbauen.

Auch scheint die Anzahl der aktiven Spamdykeprozesse immer um 1 zu hoch zu sein (verglichen mit der "top" Auswertung auf Linuxebene).
Stimmt, weil ich die Prozesse mittels "ps -ef | grep spamdyke" ermittle. Und dabei zählt er sein eigenes "grep" mit. Sollte auch mal geändert werden.

5 dieser Greylisted Mails wurden aber dann im 2.ten Anlauf akzeptiert. Wahrscheinlich nicht leicht rauszufiltern, sorgt aber für eine leichte Verfälschung der Statistik, da ja damit auch der Wert für "alle Anfragen" um diese 5 überhöht ist.
Jap, das ist aber Absicht. Er erneuter - verfrühter - Zustellversucht bleibt im Greylisting hängen und wird auch als solcher gewertet. Wer gegen die Regeln verstößt wird auch so gelistet, denn faktisch ist das ein "Spamversuch". Aber vllt. sollten wir darüber Abstimmen, ich finde das jedenfalls gut ;-)

Gruß
Haggy
 
J

Jap, das ist aber Absicht. Er erneuter - verfrühter - Zustellversucht bleibt im Greylisting hängen und wird auch als solcher gewertet. Wer gegen die Regeln verstößt wird auch so gelistet, denn faktisch ist das ein "Spamversuch". Aber vllt. sollten wir darüber Abstimmen, ich finde das jedenfalls gut ;-)

Ok, kann man auch so sehen und geht auch in Ordnung. Evtl. sollte sich aber das Pärchen (1 Greylisteintrag und die Akzeptierung) "gegenseitig Aufheben" und zu nur einem "akzeptiert" werden .. Alle Greylists dazwischen dann zählen. Aber ist wirklich Geschmackssache.

Zwischenstand: 70.000 Einträge pro Tag und Domain ohne Probleme. Bin fasziniert :)

p.s. hab schon wieder was gefunden: In der SQL-Edition ist die Sortierung der Logs nicht per Datum. Somit kommt man immer wieder in SCP rein und steht nicht auf dem aktuellen Tag (z.B. Freitag der 31.10.08 steht über Sonntag dem 2.11.08 und nach dem Start steht man erstmal auf Freitag). Sieht ein wenig so aus, als wäre die Sortierung nach "normalem" Datum und nicht nach einem "gedrehten" Datum
 
Last edited by a moderator:
Evtl. sollte sich aber das Pärchen (1 Greylisteintrag und die Akzeptierung) "gegenseitig Aufheben" und zu nur einem "akzeptiert" werden .. Alle Greylists dazwischen dann zählen. Aber ist wirklich Geschmackssache.
Genauso wird es doch gemacht!

In der SQL-Edition ist die Sortierung der Logs nicht per Datum. Somit kommt man immer wieder in SCP rein und steht nicht auf dem aktuellen Tag (z.B. Freitag der 31.10.08 steht über Sonntag dem 2.11.08 und nach dem Start steht man erstmal auf Freitag). Sieht ein wenig so aus, als wäre die Sortierung nach "normalem" Datum und nicht nach einem "gedrehten" Datum
Das sollte nicht passieren, bei mir ist das nämlich richtig sortiert, kannste mir mal nen Screenshot senden?

Gruß
Haggy
 
Genauso wird es doch gemacht!

Da hast du Recht. Ich hab falsch geschaut und das Ganze erst verstanden, als ich mir die Greylisting-Paare hab anzeigen lassen .... Sorry, mein Fehler.

Screenshot ist auf dem Weg.
Ist auf einem Plesk 8.6. Das PHP ist 5.2.6, aber nicht das Originale von Plesk, sondern eine hardend Version von dotdeb.org. Evtl. kann es ja daran liegen.
 
Last edited by a moderator:
Wenn Du schon Spamdyke im Betrieb hast?
Dann einfach die Tabelle einrichten, Source kompilieren und in xinetd einsetzten.

huschi.
 
Back
Top