Snort ile ilgili kurulum kaynak dosyalarından yapılabildiği gibi RPM paketlerinden de yapılabilir. Snort ile ilgili dosyalar www.snort.org bağlantısından indirilebilir.
yum install snort snort-mysql
Snort uygulaması kurulduktan sonra ayarlamaların yapılması gerekir. Snort ile ilgili ayarlamalar /etc/snort/snort.conf dosyasında yapılmaktadır. Yapılacak bazı temel ayarlar aşağıdaki gibidir;
var HOME_NET 10.1.7.0/24
var EXTERNAL_NET !$HOME_NET
var DNS_SERVERS [10.1.7.10,10.1.7.11]
var SMTP_SERVERS 10.1.7.12
var HTTP_SERVERS 10.1.7.13
...
var RULE_PATH /etc/snort/rules
Snort uygulamasının topladığı kayıtların veri tabanında saklanabilmesi için;
output database: log, mysql, user=snort password=test dbname=snort host=localhost
Kuralların (Rules) Güncellenmesi
Snort ile ilgili kurallar kaynak paketleri ile gelmez. Kuralları RULEs bağlantısından indirilebilir. Kurallar belli dönemlerde güncellenir. Bu güncellemeleri indirebilmek için farklı yöntemler vardır.
1. Profesyonel destek sözleşmesi yapılmalı. Bu yöntemde güncellenen kurallara anında erişebilebilir.
2. Web sayfasına üye olmalı. Bu yöntemde kurallar belli bir zaman (beş gün) sonra indirilebilir.
MySQL Sunucusu
Mysql sunucusu snort’un topladığı uyarıların saklanacağı yer olacaktır. Bu sunucuda gerekli tablolar oluşturulur ve bilgilerin buraya yazılarak erişimin daha kolay olması sağlanır. Öncelikle sunucuya bir root şifresi verilmeli;
# service mysqld start
# mysqladmin -u root -h sensor password 'deneme'
# mysqladmin -u root -p reload
# mysqladmin -u root -p refresh
# service mysqld restart
# mysql -u root -p
# mysql> SET PASSWORD FOR root@localhost=PASSWORD('password');
>Query OK, 0 rows affected (0.25 sec)
# mysql> create database snort;
>Query OK, 1 row affected (0.01 sec)
# mysql> grant INSERT,SELECT on root.* to snort@localhost;
>Query OK, 0 rows affected (0.02 sec)
# mysql> SET PASSWORD FOR snort@localhost=PASSWORD('password_from_snort.conf');
>Query OK, 0 rows affected (0.25 sec)
# mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to snort@localhost;
>Query OK, 0 rows affected (0.02 sec)
# mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to snort;
>Query OK, 0 rows affected (0.02 sec)
# mysql> exit
>Bye
snort kullanıcısı ve snort veritabanı oluşturulduktan sonra, kayıtların saklanabilmesi için gerekli tabloların oluşturulması gerekir. Bunun için daha önceden hazırlanmış şemalar kullanılacaktır. Bu şemaya snort TAR arşivinden yada SRC kaynak paketinden elde edilebilir.
# mysql -u root -p < /tmp/snort-*/schemas/create_mysql snort
# mysql -u snort -p
mysql> use snort;
mysql> show tables;
+------------------+
| Tables_in_snort |
+------------------+
| data |
| detail |
| encoding |
| event |
| icmphdr |
| iphdr |
| opt |
| reference |
| reference_system |
| schema |
| sensor |
| sig_class |
| sig_reference |
| signature |
| tcphdr |
| udphdr |
+------------------+
16 rows in set (0.00 sec)
ADODB Eklentisinin Kurulması
ADOdb eklentisi PHP ve Phyton için bir veritabanı class’ıdır. Bu class aracılığı ile veritabanı üzerinde daha güvenli ve daha verimli yönetim sağlamaktadır. ADOdb bağlantısından indirilebilir.
BASE Uygulamasının Ayarlanması
Base uygulaması snort’un topladığı kayıtları veri tabanından okuyarak, istatistik olarak görüntülemek için kullanılır. Ayrıca bizim belirleyeceğimiz kriterlere uygun olarak sorgular da üretebiliriz. Base için gerekli RPM yada kaynak paketleri BASE bağlantısından indirilebilir. Base ile ilgili RPM kurulumu yapıldıktan sonra;
rpm -Uvh base-*.rpm
veya
tar -xzvf base-.*tar.gz
web tarayıcısı ile bağlantı kurulur ve ilk ayarlar yapılır.
http://sunucu_ip_adresi/base/
Aşağıdaki adımlar takip edilir:
1. Değişikliğin yapılacağı dosyaya web sunucusunun yazma izni olup olmadığı kontrol edilir ve gerekli uyarılar yapılır. İlgili ayarlar /dosya/yolu/base_conf.php dosyasında yapılır.
2. Kullanılacak dil ve adodb yolu belirlenir.
$DBlib_path = '/var/www/adodb';
3. Veri tabanı bağlantısı ile ilgili bilgiler girilir;
- veri tabanı adı
- veri tabanı bulunduğu sunucu
- veri tabanı bağlantı portu
- veri tabanı kullanıcısı
- veri tabanı şifresi
4. Arşiv veri tabanı kullanılıp kullanılmayacağı, eğer kullanılacaksa, arşiv veritabanı için yukarıdaki bilgiler girilmeli.
5. Erişim için yetkilendirme kullanılıp kullanılmayacağı belirlenir. Yönetici kullanıcı adı ve şifresi girilir.
Test
# snort -T -c /etc/snort/snort.conf
# snort-mysql -T -c /etc/snort/snort.conf
Snort yukarıdaki kontrollerden başarı ile geçerse, bir test kuralı oluşturarak kontrol yapılabilir:
# vi /etc/snort/rules/test.rules
alert tcp any any -> any any (msg:"TCP traffic";)
Test kuralı snort.conf dosyasına eklenmeli;
# vi /etc/snort/snort.conf
...
include $RULE_PATH/test.rules
...
Kategori : uygulama_
Hiç yorum yok:
Yorum Gönder