*BSD Sistemlerde PF (Packet Filter) Güvenlik Duvarının Yönetimi

1

Merhabalar

Bu yazıda *BSD sistemlerde varsayılan olarak gelen PF ‘in çalıştırılması, durdurulması ve durumunu kontrol etmek için pfctl aracının kullanımından ve detaylarından bahsedeceğim. PF açık kaynak kodlu güvenlik duvarı yazılımıdır. PF ilk olarak OpenBSD işletim sistemi ile kullanılırken zamanla diğer *BSD sistemlerine uyarlanmıştır.

PF firewall varsayılan olarak kurulu gelmektedir fakat aktif değildir.

FreeBSD sistemlerde her açılışta çalışmasını sağlamak ve aktif etmek için,

[email protected]#: nano /etc/rc.conf
pf_enable="YES"
pf_log="YES"
pf_logfile="/var/log/pflog"
pf_rules="/etc/pf.conf"
pf_flags=""

OpenBSD sistemlerde her açılışta çalışmasını sağlamak ve  aktif etmek için,

[email protected]#: nano /etc/rc.conf.local
pf_enable="YES"
pf_rules="/etc/pf.conf"
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
pflog_flags=""

PF güvenlik duvarını kapatmak isterseniz aşağıdaki komutu kullanabilirsiniz.

[email protected]#: pfctl -d
pfctl disabled

tekrardan PF ‘i aktif etmek isterseniz aşağıdaki komutu kullanabilirsiniz.

[email protected]#: pfctl -e
pfctl enabled

Güvenlik duvarı durum tablosunu (state table) görüntülemek isterseniz aşağıdaki komut kullanılabilir.

[email protected]#: pfctl -ss

Filter istatistiklerini görmek isterseniz aşağıdaki komutu kullanabilirsiniz.

[email protected]#: pfctl -s info
Status: Enabled for 1 days 09:26:06 Debug: Urgent
State Table Total Rate
current entries 0
searches 6364 4.1/s
inserts 0 0.0/s
removals 0 0.0/s
Counters
match 6363 4.1/s
bad-offset 0 0.0/s
fragment 0 0.0/s
short 0 0.0/s
normalize 0 0.0/S
memory 0 0.0/s
bad-timestamp 0 0.0/s
congestion 0 0.0/s
ip-option 0 0.0/s
proto-cksum 0 0.0/s
state-mismatch 0.0/s
state-insert 0 0.0/s
state-limit 0 0.0/s
src-limit
...

NAT kurallarını listelemek isterseniz aşağıdaki komut kullanılabilir.

[email protected]#: pfctl -s nat

Firewall kurallarını listelemek isterseniz aşağıdaki komutu kullanabilirsiniz. Daha ayrıntılı bilgi için -v parametresi eklenebilir.

[email protected]#: pfctl -s rules

[email protected]#: pfctl -s -v rules

Yukarıdaki kullandığımız bütün kurallar hakkında, bütün bir şekilde bilgi almak istersek aşağıdaki komut kullanabilir. Bütün istatistikler komut satırına sığmayacağı için pfctl -s all |less komutu kullanılabilir ve enter tuşuna basarak ilerleyebilir yada boşluk tuşuna basarak komut satırına sığdığı bölüm kadarıyla ilerleyebilirsiniz.

[email protected]#: pfctl -s all

Sadece filter kurallarını yüklemek isterseniz aşağıdaki komut kullanılabilir. Diğer kurallar reddedilecektir sadece filter kuralları yüklenecektir.

[email protected]#: pfctl -Rf /etc/pf.conf

Sadece nat kurallarını yüklemek isterseniz aşağıdaki komut kullanılabilir. Diğer kurallar reddedilecektir sadece nat kuralları yüklenecektir.

[email protected]#: pfctl -Nf /etc/pf.conf

Sadece pf.conf dosyasını okusun ve yeni kuralları yüklemesini istersek aşağıdaki komut kullanılabilir.

[email protected]#: pfctl -f /etc/pf.conf

Güvenlik duvarı nat kurallarını silmek isterseniz aşağıdaki komut kullanılabilir.

[email protected]#: pfctl -F nat

Filter kurallarını silmek isterseniz aşağıdaki komut kullanılabilir. Kurallara bağlı olmayan istatistikler silinecektir.

[email protected]#: pfctl -F rules

Filter bilgilerini silmek isterseniz aşağıdaki komut kullanılabilir. Kurallara bağlı olmayan istatistikler silinecektir.

[email protected]#: pfctl -F info

Aşağıdaki komut yukarıda saydığımız herşeyi siler. Örneğin; filter, nat, state table, vb. istatistikler gibi. Kullanırken dikkat !

[email protected]#: pfctl -F all

*BSD sistemlerde komut satırına düşüp aşağıdaki komutları kullanarak bir kullanıcının veya network aralığına ait hostların durum tablosundaki bağlantılarını öldürebilirsiniz.

[email protected]#: pfctl -k 192.168.1.1  "Bir hostun durum tablosundaki tüm bağlantılarını öldürür."
[email protected]#: pfctl -k 192.168.1.1 -k 192.168.1.2   "İki hostun durum tablosundaki tüm bağlantılarını öldürür."  
[email protected]#: pfctl -k 192.168.1.0/24  "Bir network aralığına ait hostların durum tablosundaki tüm bağlantılarını öldürür." 
[email protected]#: pfctl -k 192.168.1.0/24 -k 172.16.16.0/16  "İki network aralığına ait hostların durum tablosundaki tüm bağlantılarını öldürür."  
[email protected]#: pfctl -k id -k 482950000018  "Bir id numarasının durum tablosundaki tüm bağlantılarını öldürür."

FreeBSD 10 sürümünü ilk kurduğunuz zaman /etc/pf.conf dosyası gelmez ise aşağıdaki komutları kullanarak örnek bir pf.conf dosyasına sahip olabilirsiniz.

[email protected]#: cp /usr/share/examples/pf/pf.conf /etc/pf.conf
[email protected]#: pfctl -e -f /etc/pf.conf
[email protected]#: /etc/rc.d/pf restart

” Online pfSense Firewall & Router Eğitimi | www.udemy.com/pfsense-training “

Tagged with: , , , , , , , , , ,

Leave a Reply

Your email address will not be published. Required fields are marked *

*

13 − 4 =

Archives

Tweets