17 Ocak 2011 Pazartesi

Dansguardian - ClamAV Entegrasyonu

Dansguardian, hemen her türlü ihtiyaca uyabilecek esenkliğe sahip içerik filitreleme hizmetidir.
Standart olarak web sayfasının içeriğini denetleyebildiği gibi istendeğinde web sayfalarını virüs taramasından da geçirebilir.

Virüs tarama işlevi dansguardian'ın kendisi tarafından sağlanmaz, tarama işlevi için sistemde yüklü olan AV kullanılır.

Burada, virüs tarama hizmeti olarak ClamAV'ı kullanılarak Dansguardian kurulumunun nasıl yapılacağı anlatılacaktır.

Kurlumu CentOS 5.5 üzerine yapacağım, Dansguardian kurulumunu yapabilmek için sistemde bir Proxy hizmetinin yüklü olması gerekiyor. Prozy hizmeti olarak CentOS'un RPM deposunda bulunan Squid kullanacağım.
[root@centos5 ~]# yum install squid
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package squid.i386 7:2.6.STABLE21-6.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved
=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 squid                   i386       7:2.6.STABLE21-6.el5  base              1.3 M

Transaction Summary
=============================================================================
Install      1 Package(s)
Update       0 Package(s)
Remove       0 Package(s)

Total download size: 1.3 M
Is this ok [y/N]: y
Downloading Packages:
(1/1): squid-2.6.STABLE21 100% |=========================| 1.3 MB    00:13
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: squid                        ######################### [1/1]

Installed: squid.i386 7:2.6.STABLE21-6.el5
Complete!
[root@centos5 ~]#
İkinci adımda virüs tarama işlemi için kullanacağım ClamAV'ı kuracağım. ClamAV'nin güncel sürümüne ait RPM'leri çektikten sonra kurulumu yapacağım. Güncel sürümü rpmfind.net sitesinden yada benzer sitelerden bulabilirsiniz. Bu yazıyı yazadığımda en güncel sürüm 0.96.5-1'di. ClamAV kurulumu için dört adet rpm dosyasına ihtiyaç var bunları aşağıda görebilrsiniz.
 [root@centos5 clamAV]# ls -l
 total 28360
-rw-r--r-- 1 root root  2301656 Dec 20 12:28 clamav-0.96.5-1.el5.rf.i386.rpm
-rw-r--r-- 1 root root 26446135 Dec 20 12:41 clamav-db-0.96.5-1.el5.rf.i386.rpm
-rw-r--r-- 1 root root     8002 Dec 20 12:30 clamav-devel-0.96.5-1.el5.rf.i386.rpm
-rw-r--r-- 1 root root   241636 Dec 20 12:31 clamd-0.96.5-1.el5.rf.i386.rpm

Bu dosyaları indirdikten sonra, aşağıdaki komutla yükleme işlemini tamamlayalım.
[root@centos5 clamAV]# rpm -Uvh clam*
warning: clamav-0.96.5-1.el5.rf.i386.rpm: Header V3 DSA signature: NOKEY, key ID 6b8d79e6
Preparing...                ########################################### [100%]
   1:clamav-db            ########################################### [ 25%]
   2:clamav                 ########################################### [ 50%]
   3:clamav-devel        ########################################### [ 75%]
   4:clamd                  ########################################### [100%]
[root@centos5 clamAV]#
Dansguardian'ın virüs tarama desteği bulunan sürümünü rpm dosyası olarak bulamadığım için kurulumu kaynak kodu kullanarak yapacağım. Dansguardian'ın en güncel sürümüne 
http://dansguardian.org/downloads/2/Stable/ bağlantısından ulaşabilirsiniz. Bu yazı yazılırken en güncel sürümü
2.10.0.3'dü.

İndirdiğimiz arşiv dosyasını tar komutuyla açıp kurulum işlemine başlayalım.
[root@centos5 src]# tar xzf dansguardian-2.10.0.3.tar.gz
Kuruluma devam etmeden önce Dansguardian'ı deamon olarak çalıştıracak kullanıcı ve kullanıcı grubunu oluşturalım.
[root@centos5 src]# useradd dansguardian -s /bin/false -c "DansGuardian" -d /etc/dansguardian
Kuruluma devam edelim.
[root@centos5 src]# cd dansguardian-2.10.0.3
[root@centos5 dansguardian-2.10.0.3]# ./configure --enable-clamd=yes --with-proxyuser=dansguardian --with-proxygroup=dansguardian --prefix=
Dansguardian'ın kurulumu için kullanacağımız parametreler ve ne amaçla kullanıldıklarını aşağıda görebilirsiniz.

--enable-clamd=yes : Dansguardian'ı clamd hizmetini kullanacak şekilde ayarla
--with-proxyuser=dansguardian : Dansguardian'i dansguardian isimli kullanıcı hesabıyla çalıştır.
--prefix= : Kurulumu `/` klasörünü referans alarak yap


Dansguardian'ın kurulumu için kullanabileceğiniz tüm parametrelerle ilgili bilgiye, INSTALL dosyası içinden yada ./configure --help komutunu çalıştırdığınızda alacağınız ekran çıktısından ulaşabilirsiniz.

configure scripti hatasız olarak sonlandıktan sonra sırasıyla make ve make install komutlarını çalıştırarak kurulum işlemini tamamlayacağız.
[root@centos5 dansguardian-2.10.0.3]# make
.
.
.
[root@centos5 dansguardian-2.10.0.3]# make install
.
.
.
Dansguardian'ın log bırakacağı klasörün sahiplik bilgilerini aşağıdaki komutu kullanarak değiştirelim.
[root@centos5 dansguardian-2.10.0.3]# chown dansguardian.dansguardian /var/log/dansguardian -R
Dansguardian'ın başlayabilmesi için proxy hizmetinin başlamış olması gerekmektedir. Bu nedenle önce squid'i başlatalım
[root@centos5 dansguardian-2.10.0.3]# /etc/init.d/squid start
Starting squid: .                                          [  OK  ]
Dansguardian ile ClamAV hizmetlerini çalıştıran kullanıcı hesapları farklı olduğundan, dosya sistemi üzerindeki haklardan doğabilecek sıkıntıları önlemek için ClamAV hizmetini çalıştıran clamav kullanıcısını dansguardian grubuna ekliyeceğiz.
[root@centos5 dansguardian-2.10.0.3]# usermod -G dansguardian clamav
[root@centos5 dansguardian-2.10.0.3]# /etc/init.d/clamd start
Starting Clam AntiVirus Daemon:                            [  OK  ]
Dansguardian'ın virüs taraması yapması için gerekli ayarı /etc/dansguardian/dansguardian.conf dosyasını düzenleyerek yapacağız.

Bu dosya içinde yer alan #contentscanner = '/etc/dansguardian/contentscanners/clamdscan.conf'
satırının başında yer alan # işaretini kaldırmamız yeterli olacak.

Dansguardian hizmetini başlatmak için kullanacağımız script'i ilgili yere kopyalayalım.
[root@centos5 dansguardian-2.10.0.3]# cp  data/scripts/systemv-init /etc/init.d/dansguardian
[root@centos5 dansguardian-2.10.0.3]# /etc/init.d/dansguardian start
Starting dansguardian:                                     [ OK ]

Aşağıdaki komutları kullanarak, squid, clamd ve dansguardian servislerinin sistemin her açılışında otomatik olarak başlamasını sağlayalım.
[root@centos5 dansguardian-2.10.0.3]# chkconfig squid on
[root@centos5 dansguardian-2.10.0.3]# chkconfig clamd on
[root@centos5 dansguardian-2.10.0.3]# chkconfig dansguardian on

Kurulum işlemi tamamlandı, istemcilerinizin proxy ayarlarını ağınıza göre ayarlayarak içerik filitreleme hizmetinden yararlanmalarını sağlayabilirsiniz.