🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.os.unix
Article #14148

Re: Filtrowanie poczty

#14148
From: Mariusz Wołek
Date: Thu, 11 Oct 2001 09:04
73 lines
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-mail
References: <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