EnderUNIX Team.


EnderUNIX İpucu

Arkadaşıma gönder , Ana Sayfa

[ qmail ]

"Clamav ile dosya tipine göre virüs taraması yapmak" - Devrim Sipahi - (2005-06-30 10:33:37)   [989]

Virus taramasını kuyruk aşamasında (qmail-queue) değil, kullanıcının postalarının toplandığı dizine (Maildir) kopyalama aşamasında (qmail-local) yaparak sistem yükünü hafifletmek mümkündür.
E-posta ile gelen bazı dosya tipleri (exe, pif, scr, com ...) çoğunlukla virüs içermektedir.
Bazı dosya tipleri (jpeg, mp3, avi, pdf ...) ise düşük olasılıkla virüs içermektedir. Clamav programına sadece taraması gereken dosya tiplerini (zip, rar, tgz, bz2, arj ...) belirterek sistem yükü önemli miktarda hafifletilir.

Clamav kurulumu yapıldıktan sonra clamd programı çalıştırılır.
Virus taraması yapılması istenen alan adı için .qmail-default, kişi için .qmail satırının başına eklencekler:


# Virus bulunma olasılığı yüksek dosyalar taramaya sokulmadan reddedilir.
|/usr/local/bin/checkattach
# Taranması gereken dosyalar belirlenir.
|/usr/local/bin/checkzip
# Belirlenen dosyalar virüs taramasından geçirilir.
|/usr/local/bin/checkvirus
# Bundan sonra diğer satırlar bulunur.

checkattach dosyası içeriği: http://www.fehcom.de/qmail/checkattach

#!/bin/sh
#
printmsg () {
echo "Gonderilen dosya tipi: $ATTYPE"
}

#
checktype () {
case $ATTYPE in
VBS | VBE | JSE | EXE | DOT | HLP | PAK | DAT | PCX | PPS | COM | BAT | CMD | MOV | RAM | OCX | CAB | SHS | CLA | DLL)
printmsg $ATTYPE
exit 99;;
*)
;;
esac
}

ATTACHTYPE=`grep "name=" - | gawk 'BEGIN {FS="."}; {print toupper($NF)}' | cut -c -3`
for ATTYPE in $ATTACHTYPE
do
checktype $ATTYPE
done

exit 0
#dosya sonu

#########################


checkzip dosyası içeriği:

#!/bin/sh

printmsg () {
echo "--- Dosya tipi $ATTYPE"
}

checktype () {
case $ATTYPE in
RAR | ZIP | BZ2| TGZ | ARJ)
printmsg $ATTYPE
/usr/bin/touch ./tara ;;
*)
;;
esac
}

ATTACHTYPE=`grep "[Nn]ame[ =]" | awk 'BEGIN {FS="."}; {print toupper($NF)}' | cut -c -3`
for ATTYPE in $ATTACHTYPE
do
checktype $ATTYPE
done

exit 0
# dosya sonu
###################
checkvirus dosyası içeriği:

#!/bin/sh

# postada arsiv dosya ekli ise "tara" isimli dosya vardir
if [ -r ./tara ]; then
rm ./tara
(/usr/local/clamav/bin/clamdscan -) || exit 99
fi
#Dosya sonu

Sonuç:
Tüm dosyaların taranmasındaki sistem yükü:
11.41, 12.05, 11.57 iken,
Sadece sıkıştırılmış dosyaların taranması durumunda:
1.26, 1.16, 1.25
olmuştur.


Devrim Sipahi
devrim (at) tasarruf.net


Arkadaşıma gönder , Ana Sayfa