/etc dizininin altında procmailrc
adında dosyamızı oluşturduk. Bu dosyanın içine aşağıdaki satırları yazın:
# Hata ayıklaması yapacağınız zaman 'yes' yazın.
VERBOSE=no
# Hata ayıklaması yapacağınız zaman ## karakterlerini silin;
# olay kayıtları fazla gelirse 'no' yazın.
## LOGABSTRACT=all
# Kendi dizininizi kullanmak isterseniz $HOME/Msgs yazın
# Mutt ve elm $HOME/Mail kullanır
# Pine $HOME/mail kullanır
# Netscape Messenger $HOME/nsmail kullanır
# Bazı NNTP istemcileri, örneğin slrn ve nn, $HOME/News kullanır
# maildir biçemindekiler çoğunlukla $HOME/Maildir kullanır
MAILDIR=$HOME/mail # Bu dizin mutlaka mevcut olmalı!
# procmail ile ilgili dosyaların saklanacağı dizin
##PMDIR=$HOME/Procmail
PMDIR=/etc/Procmail
# Olay kayıtlarının tutulmamasını istiyorsanız
# LOGFILE satırının başına ## koyunuz (önerilmez)
LOGFILE=$PMDIR/log
INCLUDERC=$PMDIR/Rc/subject.rc
INCLUDERC=$PMDIR/Rc/spamlist.rc
INCLUDERC=$PMDIR/Rc/body.rc
INCLUDERC=$PMDIR/Rc/trailer.rc
Yukarıdaki MAILDIR=$HOME/mail ifadesini ev dizininizde
bulunan posta kutunuzun biçemine göre değiştirin.Örneğin bende
/home/genco dizininde mail adında bir
dizin bulunduğu için bu ifade olduğu gibi kalıyor.
PMDIR değişkenini, procmail'in kullanacağı dosyaların
bulunduğu dizin adına atayalım. Yukarıda bizim tanımımız
PMDIR=/etc/Procmail şeklinde.
INCLUDERC değişkeni, /etc/Procmail/Rc
dizini içindeki süzme işlemini gerçekleştirecek dosyalarımızı gösteriyor.
Her bir kural için ayrı bir dosya oluşturarak sistemimize modüler bir yapı
kazandırıyoruz. Böylece ileride bir kuralı çıkarmak istediğinizde
procmailrc dosyasından bu satırı silmeniz yeterli
olacaktır.
Dizinlerimizi ve dosyalarımızı oluşturalım.
# mkdir /etc/Procmail
# touch /etc/Procmail/log
# mkdir /etc/Procmail/Rc
# touch /etc/Procmail/Rc/subject.rc
# touch /etc/Procmail/Rc/spamlist.rc
# touch /etc/Procmail/Rc/body.rc
# touch /etc/Procmail/Rc/trailer.rc
# mkdir etc/Procmail/Filtered
- /etc/Procmail/Rc/subject.rc
-
:0:
* ^Subject:.*\<I love you\>
/etc/Procmail/Filtered/subject
subject.rc dosyasının içine yukarıda satırları
yazalım. Bu dosya yardımıyla procmail, sisteminize gelen epostaların
başlığındaki subject satırını tarayarak, içinde
"I love you" olan iletileri
/etc/Procmail/Filtered/subject adındaki dosyaya
gönderir.
Örnekler üzerinden gidilip birkaç örnek sonra bu dosyalardaki
sözdizimi ile ilgili açıklama yapılacak.
- /etc/Procmail/Rc/spamlist.rc
-
FROM_=`formail -rt -xTo: \
| expand | sed -e 's/^[ ]*//g' -e 's/[ ]*$//g'`
:0
* $ ? echo ${FROM_} | grep ${FROM_} '/etc/Procmail/black.list'
/etc/Procmail/Filtered/spam
spamlist.rc dosyasına da yukarıdaki satırları
yazalım. Bu satırlar ne anlatıyor?
Gelen iletiden from bilgisi formail
programı ile alınıyor. (Bende formail programı var mı diye şüphe
içerisindeyseniz, düşünmeyin. Procmail programını kurarken aynı zamanda
onu da yüklediniz.) Daha sonra /etc/Procmail/black.list
dosyasında bu from bilgisi var mı yok mu aranıyor.
Eğer bulunursa bu ileti, inbox yerine
/etc/Procmail/Filtered/spam dosyasına yazılıyor.
Bu eposta adresinin spam olduğuna kesin eminseniz
spam dosyası yerine /dev/null'ın
engin derinliğinede gönderebilirsiniz.
/etc/Procmail/black.list dosyasını oluşturup bu dosyanın
içine sisteminizi rahatsız eden eposta adreslerini kayıt edebilirsiniz.
Bu sayede kendi spam listenizi oluşturabilirsiniz.
- /etc/Procmail/Rc/body.rc
-
:0 B:
* I send you this file in order to have your advice
/etc/Procmail/Filtered/dustbin
body.rc dosyasının içine yazacağınız yukarıdaki satırlar,
gelen iletilerin gövdesini tarayarak içinde "I send you this file
in order to have your advice" yazan satırı bulursa
iletiyi /etc/Procmail/Filtered/dustbin adlı dosyaya atacaktır.
Bu satır bildiğiniz gibi geçenlerde birçok kimseyi rahatsız eden virusun
gövdesinde yazıyordu.
Benim dustbin dosyamın boyutu aradabir artıyor :))
- /etc/Procmail/Rc/trailer.rc
-
:0 fb
* ? test -r /etc/trailer.txt
| cat - ; \
sed -e "s/\$//g" \
</etc/trailer.txt
trailer.rc dosyasının içeriğide yukarıdaki gibi.
Peki bu dosya ne yapar? Aslında pek bir şey yapmaz. Gelen her iletinin
en alt kısmına sizin belirlemiş oldugunuz satırları ekler.
Giden iletilere ekleyebilseydi daha iyi olurdu.:)
Bunun çalışması için /etc/trailer.txt dosyasını
oluşturalım ve içine her iletiye eklemek istediğimiz satırları yazalım.