Article View: pl.comp.os.unix
Article #14148Re: Filtrowanie poczty
From: Mariusz Wołek
Date: Thu, 11 Oct 2001 09:04
Date: Thu, 11 Oct 2001 09:04
73 lines
3634 bytes
3634 bytes
Użytkownik "Andrzej Karpiński" <A.Karpinski@impexmetal.com.pl> napisał w
wiadomości news:3BC48034.AAE7D51A@impexmetal.com.pl...
> Witam,
>
> Czy ktokolwiek z kolegów/koleżanek popełnił może funkcjonalny system
> filtrowania
> poczty pod względem atachmentów i wirusów na serwerze *unix*'owym ?
>
Oto rozwiazanie Jarka Rafy sprzed kilku miesiecy. Dotyczylo tylko wirusa
Romeo i Julia, mozesz jednak odpowiednio zmienic wyrazenie regularne w
procmail.rc
A zatem aby podczepic procmaila do sendmaila tak, aby filtrowal CALA
poczte przechodzaca przez serwer, trzeba po pierwsze: miec zdefiniowanego
w pliku sendmail.mc mailera "procmail". To nie jest to samo, co
podczepienie procmaila jako lokalnego MDA, co mi pare osob proponowalo -
to ostatnie robi sie przez wpis "FEATURE(local_procmail)", a to o czym ja
pisze przez "MAILER(procmail)".
Gdy juz mamy tego mailera, to w pliku sendmail.cf trzeba dodac regule
kierujaca do niego cala poczte. W pierwszej linijce reguly 0 dopisujemy:
R$* $: $>99 $1 do procmail checks
i dodajemy regule 99:
###################################################################
### Ruleset 99 -- procmail part of ruleset zero (can be null) ###
###################################################################
S99
R$*<@$+.procmail>$* $@ $1<@$2>$3 # already filtered
R$*<@$+>$* $#procmail $@/etc/mail/procmail.rc $:$1<@$2.procmail>$3
Reguly filtrowania dla procmaila sa w pliku /etc/mail/procmail.rc. Trzeba
pamietac ze ostatnia regula musi miec postac:
:0
! -oi -f "$@"
(ona zwraca wszystkie listy, ktorych procmail nie odfiltrowal, sendmailowi
do dalszej wysylki).
I to tyle... W moim przypadku, konkretna regula filtrujaca wirusa
Romeo&Juliet (bo o to mi chodzilo) wyglada tak (moze sie komus przyda):
:0
* ^Content-type:.*multipart
{
:0 Bh: virus.lock
* window.showHelp.*juliet.chm
* ^Content-type:.*application/x-msdownload
* name=.*romeo.exe
* !^X-Loop: MAILER-DAEMON@wsp.krakow.pl
|
(formail -I"MIME-Version:" -I"Content-type:" -I"X-Priority:" -I"X-MSMail-Pri
ority:" -I"X-MimeOLE:" | \
tee -a /var/log/virus.log | \
formail -r -A"Precedence: junk" \
-I"Subject: wyslales wirusa / you sent a virus" \
-A"X-Loop: MAILER-DAEMON@wsp.krakow.pl" ; \
cat /etc/mail/virus.reply) | $SENDMAIL -t
}
:0
! -oi -f "$@"
W pliku /etc/mail/virus.reply umiescilem standardowa odpowiedz odsylana
nadawcy listu z wirusem ;-). Dodatkowo regula loguje naglowki wszystkich
listow z wirusami (bez nieistotnych pol) do pliku /var/log/virus.log - do
tego sa dwie pierwsze komendy "formail" i "tee" - jezeli nie potrzebujemy
logowania, mozna je pominac.
Technical Details
Message-ID:
<9q3n6r$dkb$1@news.tpi.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!news.icm.edu.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mailReferences:
<3BC48034.AAE7D51A@impexmetal.com.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!news.icm.edu.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mail From: Mariusz Wołek <mariuszw@lexmedia.com.pl> Newsgroups: pl.comp.os.unix Subject: Re: Filtrowanie poczty Date: Thu, 11 Oct 2001 11:04:07 +0200 Organization: tp.internet - http://www.tpi.pl Lines: 75 Message-ID: <9q3n6r$dkb$1@news.tpi.pl> References: <3BC48034.AAE7D51A@impexmetal.com.pl> NNTP-Posting-Host: mariusz.lexmedia.com.pl Mime-Version: 1.0 X-Trace: news.tpi.pl 1002790939 13963 212.244.59.238 (11 Oct 2001 09:02:19 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: 11 Oct 2001 09:02:19 GMT X-Priority: 3 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 X-Newsreader: Microsoft Outlook Express 5.50.4522.1200 X-MSMail-Priority: Normal Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit