|  |  | 
| EnderUNIX İpucuArkadaşı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 |  |