Gönderen Konu: APF (Advanced Policy Firewall) Kurulumu  (Okunma sayısı 3258 defa)

HS-Abdullah

  • Administrator
  • Newbie
  • *****
  • İleti: 45
    • Profili Görüntüle
    • E-Posta
APF (Advanced Policy Firewall) Kurulumu
« : Ocak 10, 2009, 12:37:06 ÖÖ »
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 sahibine bakarak çıkış yapıp yapmamasına izin verebilirsiniz.
  • Genell 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


  • /usr/local/src dizinine geçiyoruz.
cd /usr/local/src


  • Dosyayı sunucuya indiriyoruz
wget http://www.rfxnetworks.com/downloads/apf-current.tar.gz


  • Sıkıştırılmış arşiv dosyasını açıyoruz.
tar -xvzf apf-current.tar.gz


  • Uygulamanın bulunduğu dizine giriyoruz.
cd apf-0.9.5-1/


  • Kurulum scriptini çalıştırıyoruz.
  ./install.sh




Yüklendiğine gösteren 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 dosyasını açıp gerekli düzenlemeleri yapacağız
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:
pico /etc/apf/conf.apf


  • Dosya içinde aşağıdaki değişiklikleri yapıyoruz:
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:

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






  • IG_UDP_CPORTS kısmını buluyoruz, içindeki portları silip aşağıdaki portları eklliyoruz:
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.
  EG_TCP_CPORTS="21,22,25,26,27,37,43,53,80,110,113,443,465,873,2089"


  • EG_UDP_CPORTS kısmını buluyoruz içindeki port listesini temizleyip aşağıdaki portları ekliyoruz.
EG_UDP_CPORTS="20,21,37,53,873"






Ayar dosyası ile işimiz bitti dosyayı kaydedip çıkıyoruz.Diğer kontrol paneli yazılımları


için yapıcağınız değişiklikler de bunlardır.

----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,993,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,8000,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"



Çalıştırma


/usr/local/sbin/apf -s


komutunu uygulayarak 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:

pico /etc/apf/conf.apf

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


/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ı


  • /usr/local/sbin/apf -d ipnumarası
şeklindedir.

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

/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.

 chkconfig --level 2345 apf on




Servera bir nmap çekip açık portlara bakalım:

 






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@yourcom.com"kısmını bulup mail adresinizi yazıyorsunuz.

Dosyayı kaydedip çıktıktan sonra,

crontab -e


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

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


ve contabdan çıkıp

/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.
#!/bin/bash

tail -100 /var/log/apf_log | mail -s "APF Durum Bilgisi" deneme@deneme.com


  • Kaydedip çıkıyoruz ve dosyaya gerekli izini vereceğiz şimdi.
chmod 755 apfdurumbilgisi.sh


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


« Son Düzenleme: Ocak 10, 2009, 12:39:20 ÖÖ Gönderen: HS-Abdullah »

HS-Hamza

  • Administrator
  • Newbie
  • *****
  • İleti: 22
    • Profili Görüntüle
    • E-Posta
Ynt: APF (Advanced Policy Firewall) Kurulumu
« Yanıtla #1 : Ocak 19, 2009, 12:33:59 ÖÖ »
Plesk Panel Veya Virtuzoo Kullanıcıları İçin İlk başta Önerilebilecek Firewall APF Dir Diye Düşünüyorum.Kurulumda Problem Yaşayan Olursa Buradan Yazabilir.

Saygılarımla