hallo,
ich habe ein debian woody und mein mta ist postfix.
alle emails lasse ich durch header und body filter laufen um spam und viren etc. zu filtern was auch bestends funzt. bisher habe ich logwatch 5.1 benutzt um mir ein überblick über die vorgänge zu verschaffen aber es gibt ein problem:
- da logwatch eine mail generiert die eben auch reject-hinweise beinhaltet kommt die mail nicht bei mir an, da postfix diese mails auch prüft und ein versenden unterbindet.
gibt es ein proggy oder ein tipp wie ich eventl. den content dieser dateien mit tar o.ä. vorher packen kann oder noch besser mit pgp verschlüssele so das die mail raus geht ohne selbst geblockt zu werden.
der inhalt muss eben dahingehend 'verschlüsselt' werden das check_header/check_body nichts mehr erkennt.
logcheck/-watch lösung gesucht
logcheck/-watch lösung gesucht
Mit Postfix selbst macht man doch in aller Regel "nur" einen Sender/Recipient check, evtl. mit einem Spam-RBL. Davon sollte Dein logwatch doch nicht betroffen sein, da dieser seine eMails mit einem gueltigen Account versendet (?)
Gleiches gilt auch fuer einen evtl. Virenschutz wie z.Bsp. amavis, der vorm MTA angesetzt ist.
Die eigentlichen Filter wie z.Bsp. Mailfilter, Sieve, ... , in denen Du nach Deinen Kriterien schaltest und waltest, befindet sich zwischen dem MTA und dem MDA, dort findet auch das eigentliche Spamfiltern (in aller Regel) statt.
Meines Wissens wird bei Postfix in aller Regel nur ein header_check (evtl. mit RBL) durchgefuehrt, alles weitere erfolgt ueber die Mailfilter.
Einen Tip zum Logwatch habe ich also nicht, aber Du hast immer noch die Moeglichkeit, Deinen MTA/MDA entsprechend zu konfigurieren.
Gleiches gilt auch fuer einen evtl. Virenschutz wie z.Bsp. amavis, der vorm MTA angesetzt ist.
Die eigentlichen Filter wie z.Bsp. Mailfilter, Sieve, ... , in denen Du nach Deinen Kriterien schaltest und waltest, befindet sich zwischen dem MTA und dem MDA, dort findet auch das eigentliche Spamfiltern (in aller Regel) statt.
Meines Wissens wird bei Postfix in aller Regel nur ein header_check (evtl. mit RBL) durchgefuehrt, alles weitere erfolgt ueber die Mailfilter.
Einen Tip zum Logwatch habe ich also nicht, aber Du hast immer noch die Moeglichkeit, Deinen MTA/MDA entsprechend zu konfigurieren.
Re: logcheck/-watch lösung gesucht
nun ich mach z.b. folgendes:RHase hat geschrieben:Mit Postfix selbst macht man doch in aller Regel "nur" einen Sender/Recipient check, evtl. mit einem Spam-RBL.
# steht in meiner check_body
/Wet And Horny/ REJECT SPAM-Content detected.
postfix such nach bestimmten suchmustern und rejected die falls gefunden.
dann steht im mail.log:
reject: body [und die ausgabe]
und logwatch übernimmt ja textpassagen aus den logfiles und demzufolge steht das in der mail die ich mir zusenden lasse und die wird dann komplett 'rejected'
eben und alle accounts werden geprüft. du kannst dem postfix nicht sagen, prüfe die und die, entweder alle oder keine (meines wissens nach).Davon sollte Dein logwatch doch nicht betroffen sein, da dieser seine eMails mit einem gueltigen Account versendet (?)
in meiner main.cf steht u.a noch:Meines Wissens wird bei Postfix in aller Regel nur ein header_check (evtl. mit RBL) durchgefuehrt, alles weitere erfolgt ueber die Mailfilter.
header_checks = regexp:/etc/postfix/check_header.regexp
body_checks = regexp:/etc/postfix/check_body.regexp
postfix bietet sehr viele möglichkeiten zum prüfen aber leider sind genau diese checks eben nur global an oder aus.
cu bon
... schon klar gewesen, was Du machst.
Ich meinte aber, das in aller Regel mit Postfix keine body_checks durchgefuehrt werden, sondern "nur " header_checks, evtl. mit RBL's.
Die regexp sind zwar ganz gut, aber deren Grenzen hast Du ja selber gemerkt.
Deshalb meinte ich, den body_check in den Mailfilter (zwischen MTA und MDA) zu verlegen, wodurch Du mehr Flexibilitaet erreichst. Dann haette sich Dein logwatch Problem erledigt.
Die Filtermethode, die ich also vorschlage, erfolgt in zwei Schritten:
cu,
RHase
Ich meinte aber, das in aller Regel mit Postfix keine body_checks durchgefuehrt werden, sondern "nur " header_checks, evtl. mit RBL's.
Die regexp sind zwar ganz gut, aber deren Grenzen hast Du ja selber gemerkt.
Deshalb meinte ich, den body_check in den Mailfilter (zwischen MTA und MDA) zu verlegen, wodurch Du mehr Flexibilitaet erreichst. Dann haette sich Dein logwatch Problem erledigt.
Die Filtermethode, die ich also vorschlage, erfolgt in zwei Schritten:
- Postfix: header_check (evtl. mit RBL's) = bekannte Spam-Adressen / unerwuenschte Adressen ausfiltern.
Mailfilter: body_check / benutzerdefinierte Filter
- Maildrop
Procmail
Sieve
cu,
RHase
ah, ok. also ist es so das ich die body_checks komplett aus postfix rausnehmen muss und z.b. durch 'maildrop/procmail/sieve, etc.' durchführen lassen soll, da diese mailfilter in der lage sind bestimmte adressen ohne filterung durchzulassen, richtig?
dann noch die frage. meine body_check ist ca. 50 kb gross also da ist schon ne masse drin, muss ich die komplett neuschreiben oder ist der syntax bei irgendeinem mailfilter identisch? ich habe bis dato eben keine erfahrung mit diesen mailfiltern ist quasi neuland für mich. sicher muss ich die filter auch noch irgendwie in postfix einbauen (master.cf?) damit das funzt.
kennst jemand ne gute anlaufstelle, howto etc für mailfilter um sich einen überblick zu verschaffen, bin für alle tipps dankbar.
dann noch die frage. meine body_check ist ca. 50 kb gross also da ist schon ne masse drin, muss ich die komplett neuschreiben oder ist der syntax bei irgendeinem mailfilter identisch? ich habe bis dato eben keine erfahrung mit diesen mailfiltern ist quasi neuland für mich. sicher muss ich die filter auch noch irgendwie in postfix einbauen (master.cf?) damit das funzt.
kennst jemand ne gute anlaufstelle, howto etc für mailfilter um sich einen überblick zu verschaffen, bin für alle tipps dankbar.
cu bon
Korrekt. Im eigentlichen Sinne sind (zumindest) maildrop/procmail MDA's mit Filterfunktionalitaet....also ist es so das ich die body_checks komplett aus postfix rausnehmen muss und z.b. durch 'maildrop/procmail/sieve, etc.' durchführen lassen soll, da diese mailfilter in der lage sind bestimmte adressen ohne filterung durchzulassen, richtig?
No pains no gains. Ja, so schaut's wohl aus....meine body_check ist ca. 50 kb gross also da ist schon ne masse drin, muss ich die komplett neuschreiben oder ist der syntax bei irgendeinem mailfilter identisch?
Procmail wird nachgesagt, das es das komplizierteste, aber leistungsfaehigste ist,
Maildrop ist so'n mittelding,
Sieve recht simple/einfach.
Ein Maildrop-Beispiel:
main.cf
Code: Alles auswählen
# mailbox_command = procmail -a "$EXTENSION"
mailbox_command = /usr/bin/maildrop
Code: Alles auswählen
maildrop unix - n n - - pipe
flags=R user=vmail:vmail argv=/usr/bin/maildrop -d ${recipient}
Beispiel:
.mailfilter
Code: Alles auswählen
# Maildrop Logfile
logfile "/var/log/mailfilter.log"
# Mailadresse in Kleinbuchstaben (ala "roger.rabbit@bugs-bunny.net")
LOGNAME=tolower($LOGNAME)
# lokale Systemzeit
Date=`date`
if ( $LOGNAME =~ /.*!@!.*/ )
{
# Domain Name ermitteln (ala "bugs-bunny.net")
Domain=$MATCH3
# Empfaenger ermitteln (ala "roger.rabbit")
Userpath=$MATCH
# externer Programmaufruf in "/home/vmail"
RET=`$HOME/check4dir.pl $HOME/$Domain/$Userpath`
if ( $RET eq OKAY )
{
# externes Programm war Ok, einbinden des persoenlichen Mailfilters
include "$HOME/$Domain/$Userpath/.mailfilter"
}
else
{
# externer Programmfehler loggen
log "ERROR $Date: Address=$LOGNAME homedir=$HOME/$Domain/$Userpath RET=$RET"
}
}
viel Spass + Erfolg,
RHase