Spam und Virenschutz unter FreeBSD
Hier eine Dokumentation die einem ermoeglichen soll, schnell und kostenlos einen effizienten Viren und Spamschutz mit hilfe von Opensource Software zu erreichen. Das ganze basiert auf FreeBSD mit Amavisd-new sowie dem calmd Virusschutz. (BITTE NUR INSTALLIEREN WENN MAN KEIN n00be MEHR IST !!!)
Software beschaffung
Wir BSDler sind faul.. darum einmal um den amavisd als Schnittstelle zwischen sendmail und den Helferprogrammen zu installieren. Der amavisd-new enthaelt ueberigens schon den spamassassin
- cd /usr/ports/security/amavisd-new
- make install clean
- rehash
das wars ? naja das war part 1. nun muesser wir uns nochmal verausgaben um den Virusfilter zu installieren...
- cd /usr/ports/security/clamav
- make install clean
- rehash
(Das rehashen koennt ihr auch lassen.. aber fragt dann bitte nicht wieso die software bei einem ama\t an der shell nicht zu sehen ist.
make.conf
Nun muesst Ihr dem sendmail am besten folgende flags in die Datei /etc/make.conf eintragen.
SENDMAIL_MC=/etc/mail/hostname.mc SENDMAIL_CFLAGS=-DMILTER
und dannach die Datei /etc/mail/freebsd.mc in /etc/mail/hostname.mc kopieren. Das machen wir damit bei einem Update nicht die Konfiguration verloren geht.
sendmail vorbereiten
Es folgt das neubauen des sendmail.
cd /usr/src/lib/libsm; make obj && make depend && make cd /usr/src/lib/libmilter ; make obj && make depend && make cd /usr/src/lib/libsmutil; make obj && make depend && make cd /usr/src/usr.sbin/sendmail; make obj && make depend && make && make install
hostname.mc
Die Datei muss um folgende Eintraege (die ueber den MAILER Lines sein muessen) erweitert werden.
define(`MILTER', 1) INPUT_MAIL_FILTER(`milter-amavis', `S=local:/var/amavis/amavis-milter.sock, F=T, T=S:10m;R:10m;E:10m')
anschliessend einen make all in /etc/mail ausfuehren.
amavisd.conf
Sooo, zu aller letzt müsst ihr noch die amavisd.conf in eurem /etc/ anlegen. Wichtig in der amavisd.conf ist, dass man im Falle, dass man einen Unix Socket verwendet folgende Zeilen in der Konfig setzt.
$notify_method = undef; $forward_method = undef;
Eine Beispielconfig ist hier amavisd.conf als Attachement angehaengt.