APF Firewall Kurulumu

8 Aralık 2013 Pazar Unknown 0 yorum


APF Nedir ?


APF kural tabanlı bir iptables güvenlik duvarıdır.Ayarlanması ve kullanılması özellikle sunucular için çok kolaydır.


Özellikleri


- Kolay anlaşılan kural tabanlı ayar dosyası.

- Bağımsız giriş ve çıkış filtreleme.

- ID tabanlı çıkış kontrolu bu sayede belirtilen uygulamanın sah***** bakarak çıkış yapıp yapmamasına izin verebilirsiniz.

- Genel tcp/udp port ve icmp tipi ayarlar

- Sistemdeki her ip için özel yapılandırma.

icmp ataklarını önlemek için icmp tabanlı koruma sistemi

antidos yazılımı

- dshield.org engel listesi bu listede aktif olan saldırganlar tüm apf kullanan sunucularda erişim hakları engellenir.

- tcp/ip saldırılarını engelleemk için özel sysctl ayar dosyası

- İstenmiyen trafiği engellemekiçin özel hazırlanabilen kural dizisi

- Kernel seçeneklerini kullanabilme abort_on_overflow ve tcp syncookies gibi.

- Kolay yönetilebilir bir güvenlik duvarı yazılımı.

- Güvenebileceğiniz ve direk olarak engelleyeceğiniz hostları belirtebileceğiniz kural dosyası.

- APF ile uyumlu 3. parti uygulamaları.


Çok etkili bir güvenlik duvarı olmakla beraber sunucuların genelinde bu güvenlik duvarı kullanılmaktadır.Ayar dosyaları ve kurulumu kolaydır ve etkilidir.


KURULUM



PHP Kodu:

- /usr/local/src dizinine geçiyoruz




PHP Kodu:

cd /usr/local/src



- Dosyayı sunucuya indiriyoruz.




PHP Kodu:

wget http://www.rfxnetworks.com/downloads/apf-current.tar.gz




Sıkıştırılmış arşiv dosyasını açıyoruz.


PHP Kodu:

tar -xvzf apf-current.tar.gz




Uygulamanın bulunduğu dizine giriyoruz.



PHP Kodu:

cd apf-0.9.5-1/




Kurulum scriptini çalıştırıyoruz



PHP Kodu:

./install.sh



.: APF installed

Install path: /etc/apf

Config path: /etc/apf/conf.apf

Executable path: /usr/local/sbin/apf

AntiDos install path: /etc/apf/ad/

AntiDos config path: /etc/apf/ad/conf.antidos

DShield Client Parser: /etc/apf/extras/dshield/




- Ayar dosyasını açıp gerekli düzenlemeleri yapacağız


PHP Kodu:

pico /etc/apf/conf.apf





İlk önce değişkenlerin ne olduğunu size açıklayacağım sonra gerekli düzenlemeri yapacağız.


DEVM="1"

Devolopment mod olarak açıklanıyor güvenlik duvarı ilk kurulduğunda standart olarak bu modda siz ayarları yapana kadar her 5 dakikada bir güvenlik duvarı kurallarını temizliyor.Böylece ssh portunu engelleseniz bile 5 dakika içerisinde girebilirsiniz.Herşeyin yolunda gittiğini anladıktan sonra bu değeri 0 olarak ayarlayın ve güvenlik duvarını yeniden başlatın.

LGATE_MAC=""

Yerek ağ mac adresidir.Buraya bir değer girildiği zaman sadece buradan gelen isteklere izin verilicektir.Biz bu değeri boş bırakacağız.

LGATE_LOG="0"

Değeri 1 olarak ayarlarsanız bütün ağ trafiğinin kayıdı tutulucaktır.Biz bu değeride 0 olarak bırakacağız.

EN_VNET="0"

Bu değeri 1 olarak ayarlarsanız sistemdeki tüm ipler için farklı kurallar kurabilirsiniz./etc/apf/vnet/ dizinine bu kuralı yerleştirebilrisiniz gene standart olarak bir template bu dizinde var.

TIF=""

Güvenilen ağlar .

DROP_LOG="1"

Kernel tabanlı loglama.

LRATE="60"

Iptables in dakikada logladığı olay sayısı.

IG_TCP_CPORTS="22"

S istemde içeriye tcp portlarını belirtir.22 yazan yere virgul ile açılıcak portları yazının devamında ekleyeceğiz.

IG_UDP_CPORTS=""

İçeriye açılıcak udp portlarını gösterir.

EGF="0"

Bu değeri 1 olarak açıcağız çıkan paketlerin filtrelenmesi.

EG_TCP_CPORTS="22"

Sitemden dışarıya açılacak tcp portları.

EG_UDP_CPORTS=""

Sistemden dışarıya açılıcak udp portları.

USE_DS="0"

Dshield.org un engellenenler listesine bu seçeneği 1 olarak seçerseniz katkıda bulunursunuz.



Cpanel de Yapılacak değişiklikler


- Ayar dosyamızı açıyoruz:


PHP Kodu:

pico /etc/apf/conf.apf


- Dosya içinde aşağıdaki değişiklikleri yapıyoruz:


Alıntı:

USE_DS="0"

ve 3 satır altındaki


USE_AD="0"

kısımlarını bulup


USE_DS="1"

USE_AD="1"

olarak değiştiriyoruz.


- IG_TCP_CPORTS yazan kısmı buluyoruz


içindeki portları silip aşağıdaki portları ekliyoruz


PHP Kodu:

IG_TCP_CPORTS="20,21,22,25,26,53,80,110,143,443,46 5,993,995,2082, 2083,2086,2087,2095,2096"



- IG_UDP_CPORTS kısmını buluyoruz, içindeki portları silip aşağıdaki portları eklliyoruz:


PHP Kodu:

IG_UDP_CPORTS="21,53,873"



- EFG kısmını buluyoruz EGF="0" olan değeri EGF="1" olarak değiştiriyoruz


EG_TCP_CPORTS kısmını buluyoruz içindeki port listesini temizleyip aşağıdaki portları ekliyoruz.


PHP Kodu:

EG_TCP_CPORTS="21,22,25,26,27,37,43,53,80,110,113, 443,465,873,208 9"



EG_UDP_CPORTS kısmını buluyoruz içindeki port listesini temizleyip aşağıdaki portları ekliyoruz



PHP Kodu:

EG_UDP_CPORTS="20,21,37,53,873"



Çalıştırma


Kod:

/usr/local/sbin/apf -s




komutunu uygula***** güvenlik duvarımızı başlatıyoruz. SSH oturumumuzu kapatıp yeni bir oturum açıp sunucuya girmeye çalışıyoruz. Eğer herhangi bir sorunla karşılaşırda giremezseniz güvenlik duvarı kurallarının 5 dakika içinde silineceğini unutmayın.



Başarılı bir şekilde giriş yaptıysanız editörümüz ile apf nin ayar dosyasını tekrar açıp devolopment moddan çıkartıcaz böylece artık güvenlik duvarı kuralları 5 dakikada bir temizlenmeyecektir:


Kod:

pico /etc/apf/conf.apf

DEVM="1" olan kısımı bulup DEVM="0" değiştiriyorsunuz.




Kod:

/usr/local/sbin/apf -r

komutu ile tekrar başlatıyoruz...

Güvenlik Duvarı ile kullanabileceğiniz parametreler


/usr/local/sbin/apf -s

Güvenlik Duvarını açar.


/usr/local/sbin/apf -r

Güvenlik Duvarını yeniden başlatır.


/usr/local/sbin/apf -st

Güvenlik Duvarının durumunu gösterir.


/usr/local/sbin/apf -f

Güvenlik Duvarını durdurur.


/usr/local/sbin/apf -l

Kuralları listeler.

Bir kullanıcının apf yardımı ile sistemden uzaklaştırılması


Kod:

/usr/local/sbin/apf -d ipnumarası



şeklindedir.


Sistemden uzaklaştırmak istediğiniz ip numarası 81.214.247.127 ise


Kod:

/usr/local/sbin/apf -d 81.214.247.127




yazmanız yeterlidir.

Otomatik çalıştırma


Son olarak apf nin sunucu yeniden başlatıldığında otomatik olarak başlatılmasını sağlamak için aşağıdkai komutu giriyoruz.


Kod:

chkconfig --level 2345 apf on

APF antidos modülünün kurulumu


Antidos modülü bir log analiz modülüdür arka arkaya gelen istekleri değerlendirerek bunu sizin belirlediğiniz değeri aştığında saldırganların sistemden uzaklaştırılmasını sağlamaktadır.



/etc/apf/ad/conf.antidos

yazıp konfigurasyon dosyasını açıyoruz,

LP_KLOG="0" kısmını bulup

LP_KLOG="1" şeklinde değiştiriyoruz

DET_SF="0" kısmını bulup

DET_SF="1" şeklinde değiştiriyoruz

TRIG="12" kısmını bulup

TRIG="10" şeklinde değiştiriyoruz

SF_TRIG="25" kısmını bulup

SF_TRIG="12" şeklinde değiştiriyoruz

DROP_IF="0" kısmını bulup

DROP_IF="1" şeklinde değiştiriyoruz

IPT_BL="0" kısmını bulup

IPT_BL="1" şeklinde değiştiriyoruz

USR_ALERT="0" kısmını bulup,USR_ALERT="1" olarak değiştiriyoruz. DET_SF="0" kısmını bulup, DET_SF="1" olarak değiştiriyoruz. Option: USR="you@yourco.com"kısmını bulup mail adresinizi yazıyorsunuz.


- Dosyayı kaydedip çıktıktan sonra :


Kod:

crontab -e



yazarak crpntab ı açıyoruz buraya aşağıdaki girdiyi yazıyoruz.


Kod:

*/2 * * * * root /etc/apf/ad/antidos -a >> /dev/null 2>&1




ve contabdan çıkıp


Kod:

/usr/local/sbin/apf -r




komutu ile güvenlik duvarını tekrar başlatıyoruz.

APF Güvenlik Duvarının durumunu size mail ile bildirilsin


APF güvenlik duvarının durumunun yani çalışıp çalışmadığının ve loglarının size bildirilmesini istiyorsanız aşağıdaki değişikliği yapın.


- /etc/cron.daily/ klasörüne giriyoruz.


cd /etc/cron.daily



Bilgilendirme dosyasını açıyoruz.


pico apfdurumbilgisi.sh



İçinde aşağıdaki kodu yapıştırıyoruz mail adresinizi değiştirmeyi unutmayın.


Kod:

#!/bin/bash

tail -100 /var/log/apf_log | mail -s "APF Durum Bilgisi" [url=mailto:service@lnwservers.com">service@lnwserv ers.com[/url]




Kaydedip çıkıyoruz ve dosyaya gerekli izini vereceğiz şimdi.



Kod:

chmod 755 apfdurumbilgisi.sh




Artık hergün elinize çalışıp çalışmadığına dair bir rapor gelicektir.

0 yorum: