APF kural tabanli bir iptables guvenlik duvaridir.Ayarlanmasi ve kullanilmasi ozellikle sunucular icin cok kolaydir.
Özellikleri
- Kolay anlasilan kural tabanli ayar dosyasi.
- Bagimsiz giris ve cikis filtreleme.
- ID tabanli cikis kontrolu bu sayede belirtilen uygulamanin sahibine bakarak cikis yapip yapmamasina izin verebilirsiniz.
- Genell tcp/udp port ve icmp tipi ayarlar
- Sistemdeki her ip icin ozel yapilandirma.
- icmp ataklarini onlemek icin icmp tabanli koruma sistemi
- antidos yazilimi
- dshield.org engel listesi bu listede aktif olan saldirganlar tum apf kullanan sunucularda erisim haklari engellenir.
- tcp/ip saldirilarini engelleemk icin ozel sysctl ayar dosyasi
- İstenmiyen trafigi engellemekicin ozel hazirlanabilen kural dizisi
- Kernel seceneklerini kullanabilme abort_on_overflow ve tcp syncookies gibi.
- Kolay yonetilebilir bir guvenlik duvari yazilimi.
- Guvenebileceginiz ve direk olarak engelleyeceginiz hostlari belirtebileceginiz kural dosyasi.
- APF ile uyumlu 3. parti uygulamalari.
Çok etkili bir guvenlik duvari olmakla beraber sunucularin genelinde bu guvenlik duvari kullanilmaktadir.Ayar dosyalari ve kurulumu kolaydir ve etkilidir.
Kurulum
- /usr/local/src dizinine geciyoruz.
cd /usr/local/src
- Dosyayi sunucuya indiriyoruz
wget http://www.rfxnetworks.com/downloads/apf-current.tar.gz
- Sikistirilmis arsiv dosyasini aciyoruz.
tar -xvzf apf-current.tar.gz
- Uygulamanin bulundugu dizine giriyoruz.
cd apf-0.9.5-1/
- Kurulum scriptini calistiriyoruz.
./install.sh
This image has been resized. Click this bar to view the full image. The original image is sized 542×284. |
Yuklendigine gosteren mesaj ekrana geliyor:
.: 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 dosyasini acip gerekli duzenlemeleri yapacagiz
pico /etc/apf/conf.apf
İlk once degiskenlerin ne oldugunu size aciklayacagim sonra gerekli duzenlemeri yapacagiz.
DEVM="1" Devolopment mod olarak aciklaniyor guvenlik duvari ilk kuruldugunda standart olarak
bu modda siz ayarlari yapana kadar her 5 dakikada bir guvenlik duvari kurallarini temizliyor.
Boylece ssh portunu engelleseniz bile 5 dakika icerisinde girebilirsiniz.Herseyin yolunda
gittigini anladiktan sonra bu degeri 0 olarak ayarlayin ve guvenlik duvarini yeniden baslatin. LGATE_MAC="" Yerek ag mac adresidir.Buraya bir deger girildigi zaman sadece buradan gelen isteklere izin verilicektir.
Biz bu degeri bos birakacagiz. LGATE_LOG="0" Degeri 1 olarak ayarlarsaniz butun ag trafiginin kayidi tutulucaktir.Biz bu degeride 0 olarak birakacagiz. EN_VNET="0" Bu degeri 1 olarak ayarlarsaniz sistemdeki tum ipler icin farkli kurallar
kurabilirsiniz./etc/apf/vnet/ dizinine bu kurali yerlestirebilrisiniz gene standart olarak bir template bu dizinde var. TIF="" Guvenilen aglar . DROP_LOG="1" Kernel tabanli loglama. LRATE="60" Iptables in dakikada logladigi olay sayisi. IG_TCP_CPORTS="22" S istemde iceriye tcp portlarini belirtir.22 yazan yere virgul ile acilicak portlari yazinin devaminda ekleyecegiz. IG_UDP_CPORTS="" İceriye acilicak udp portlarini gosterir. EGF="0" Bu degeri 1 olarak acicagiz cikan paketlerin filtrelenmesi. EG_TCP_CPORTS="22" Sitemden disariya acilacak tcp portlari. EG_UDP_CPORTS="" Sistemden disariya acilicak udp portlari. USE_DS="0" Dshield.org un engellenenler listesine bu secenegi 1 olarak secerseniz katkida bulunursunuz.
Cpanel de Yapilacak degisiklikler
- Ayar dosyamizi aciyoruz:
pico /etc/apf/conf.apf
- Dosya icinde asagidaki degisiklikleri yapiyoruz:
USE_DS="0"
ve 3 satir altindaki
USE_AD="0"
kisimlarini bulup
USE_DS="1"
USE_AD="1"
olarak degistiriyoruz.
This image has been resized. Click this bar to view the full image. The original image is sized 576×430. |
- IG_TCP_CPORTS yazan kismi buluyoruz
icindeki portlari silip asagidaki portlari ekliyoruz:
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 kismini buluyoruz, icindeki portlari silip asagidaki portlari eklliyoruz:
IG_UDP_CPORTS="21,53,873"
- EFG kismini buluyoruz EGF="0" olan degeri EGF="1" olarak degistiriyoruz.
- EG_TCP_CPORTS kismini buluyoruz icindeki port listesini temizleyip asagidaki portlari ekliyoruz.
EG_TCP_CPORTS="21,22,25,26,27,37,43,53,80,110,113, 443,465,873,2089"
- EG_UDP_CPORTS kismini buluyoruz icindeki port listesini temizleyip asagidaki portlari ekliyoruz.
EG_UDP_CPORTS="20,21,37,53,873"
This image has been resized. Click this bar to view the full image. The original image is sized 579×223. |
Ayar dosyasi ile isimiz bitti dosyayi kaydedip cikiyoruz.Diger kontrol paneli yazilimlari
icin yapicaginiz degisiklikler de bunlardir.
—-Ensim —–
IG_TCP_CPORTS="21,22,25,53,80,110,143,443,19638"
IG_UDP_CPORTS="53"
EGF="1"
EG_TCP_CPORTS="21,22,25,53,80,110,443"
EG_UDP_CPORTS="20,21,53"
—-Plesk —–
IG_TCP_CPORTS="20,21,22,25,53,80,110,143,443,465,9 93,995,8443"
IG_UDP_CPORTS="37,53,873"
EGF="1"
EG_TCP_CPORTS="20,21,22,25,53,37,43,80,113,443,465 ,873"
EG_UDP_CPORTS="53,873"
—- Direct ADmin —–
IG_TCP_CPORTS="21,22,25,53,80,110,143,443,2222,800 0,8050,8005,3784"
IG_UDP_CPORTS="21,53,8000,8050,8005,3784"
EGF="1"
EG_TCP_CPORTS="21,22,25,37,43,53,80,443,8000,8050, 8005,3784"
EG_UDP_CPORTS="20,21,53,8000,8050,8005,3784"
Çalistirma
/usr/local/sbin/apf -s
komutunu uygulayarak guvenlik duvarimizi baslatiyoruz. SSH oturumumuzu kapatip yeni bir oturum
acip sunucuya girmeye calisiyoruz. Eger herhangi bir sorunla karsilasirda giremezseniz guvenlik
duvari kurallarinin 5 dakika icinde silinecegini unutmayin.
This image has been resized. Click this bar to view the full image. The original image is sized 527×55. |
Basarili bir sekilde giris yaptiysaniz editorumuz ile apf nin ayar dosyasini tekrar acip devolopment
moddan cikarticaz boylece artik guvenlik duvari kurallari 5 dakikada bir temizlenmeyecektir:
pico /etc/apf/conf.apf
DEVM="1" olan kisimi bulup DEVM="0" degistiriyorsunuz.
/usr/local/sbin/apf -r
komutu ile tekrar baslatiyoruz…
Guvenlik Duvari ile kullanabileceginiz parametreler
/usr/local/sbin/apf -s Guvenlik Duvarini acar. /usr/local/sbin/apf -r Guvenlik Duvarini yeniden baslatir. /usr/local/sbin/apf -st Guvenlik Duvarinin durumunu gosterir. /usr/local/sbin/apf -f Guvenlik Duvarini durdurur. /usr/local/sbin/apf -l Kurallari listeler.
Bir kullanicinin apf yardimi ile sistemden uzaklastirilmasi
- /usr/local/sbin/apf -d ipnumarasi
seklindedir.
Sistemden uzaklastirmak istediginiz ip numarasi 81.214.247.127 ise
/usr/local/sbin/apf -d 81.214.247.127
yazmaniz yeterlidir.
Otomatik calistirma
Son olarak apf nin sunucu yeniden baslatildiginda otomatik olarak baslatilmasini saglamak icin
asagidkai komutu giriyoruz.
chkconfig –level 2345 apf on
Servera bir nmap cekip acik portlara bakalim:
APF antidos modulunun kurulumu
Antidos modulu bir log analiz moduludur arka arkaya gelen istekleri degerlendirerek bunu
sizin belirlediginiz degeri astiginda saldirganlarin sistemden uzaklastirilmasini saglamaktadir.
/etc/apf/ad/conf.antidos
yazip konfigurasyon dosyasini aciyoruz,
LP_KLOG="0" kismini bulup
LP_KLOG="1" seklinde degistiriyoruz
DET_SF="0" kismini bulup
DET_SF="1" seklinde degistiriyoruz
TRIG="12" kismini bulup
TRIG="10" seklinde degistiriyoruz
SF_TRIG="25" kismini bulup
SF_TRIG="12" seklinde degistiriyoruz
DROP_IF="0" kismini bulup
DROP_IF="1" seklinde degistiriyoruz
IPT_BL="0" kismini bulup
IPT_BL="1" seklinde degistiriyoruz
This image has been resized. Click this bar to view the full image. The original image is sized 501×534. |
USR_ALERT="0" kismini bulup,USR_ALERT="1" olarak degistiriyoruz. DET_SF="0" kismini bulup, DET_SF="1" olarak degistiriyoruz. Option: USR="you@yourcom.com"kismini bulup mail adresinizi yaziyorsunuz.
Dosyayi kaydedip ciktiktan sonra,
crontab -e
yazarak crpntab i aciyoruz buraya asagidaki girdiyi yaziyoruz
*/2 * * * * root /etc/apf/ad/antidos -a >> /dev/null 2>&1
ve contabdan cikip
/usr/local/sbin/apf -r
komutu ile guvenlik duvarini tekrar baslatiyoruz.
APF Guvenlik Duvarinin durumunu
size mail ile bildirilsin
APF guvenlik duvarinin durumunun yani calisip calismadiginin ve loglarinin size bildirilmesini istiyorsaniz asagidaki degisikligi yapin
- /etc/cron.daily/ klasorune giriyoruz
cd /etc/cron.daily
- Bilgilendirme dosyasini aciyoruz
pico apfdurumbilgisi.sh
- İcinde asagidaki kodu yapistiriyoruz mail adresinizi degistirmeyi unutmayin.
#!/bin/bash
tail -100 /var/log/apf_log | mail -s "APF Durum Bilgisi" deneme@deneme.com
- Kaydedip cikiyoruz ve dosyaya gerekli izini verecegiz simdi.
chmod 755 apfdurumbilgisi.sh
Artik hergun elinize calisip calismadigina dair bir rapor gelicektir.
This image has been resized. Click this bar to view the full image. The original image is sized 504×216. |
__________________