Bir onceki yazimizda en son pico editorunu kurmustuk. Simdi gelen istek uzerine oncelikle kernelimizi derleyecegiz ve firewall kuracagiz. BSD ve Firewall bu iki kelime yan yana gelince o kadar cok alternatif ortaya cikiyorki insan hangisini kullanacagini sasiriyor. Biz sistemimize sadik kalalim ve oncelikle IPFW kuralim. Belki baska bir yazidada PF, IPF gibi diger firewallari inceleriz.
[root@freebsd /home/.fikri]# cd /usr/src/sys/i386/conf
komutu ile kernel conflarimizin oldugu dizine girelim.
[root@freebsd /usr/src/sys/i386/conf]# uname -a
FreeBSD freebsd.dinopsys.net 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Fri Jan 12 10:40:27 UTC 2007 root@dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386
kernel bilgilerimizi gorduk… GENERIC
[root@freebsd /usr/src/sys/i386/conf]# ls
.cvsignore GENERIC Makefile PAE XBOX
DEFAULTS GENERIC.hints NOTES SMP
[root@freebsd /usr/src/sys/i386/conf]# cp GENERIC dinopsys
GENERIC dosyasini dinopsys olarak kopyaladim.
pico editorum ile dinopsys dosyasini aciyorum ve icerisine firewall ile ilgili kisimlari ekliyorum.
pico dinopsys
[…..]
# Bus support.
device eisa
device pci
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=5
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPDIVERT
options DUMMYNET
# Floppy drives
device fdc
[…..]
options IPFIREWALL
# Bu parametre ile IPFW yi aktif ediyoruz…
options IPFIREWALL_VERBOSE
# Log sistemini aktif ediyoruz.
options IPFIREWALL_VERBOSE_LIMIT=5
# Log sayimizi limitledik.
options IPFIREWALL_DEFAULT_TO_ACCEPT
# bu komutla firewallumuz gelen herseyi kabul edicek..
options IPDIVERT
# Nat/pat ihtiyacimiz var ise…
options DUMMYNET
# limit ihtiyacimiz var ise…
dosyamizi kaydedip cikalim ve yeni kernelimizi derlemeye basliyalim. Nereye ekledigimi anlayabilmeniz icin ustte ve altta birer tane normal conftan parametre kopyaladim.
[root@freebsd /usr/src/sys/i386/conf]# config dinopsys
Kernel build directory is ../compile/dinopsys
Don’t forget to do “make cleandepend; make depend”
[root@freebsd /usr/src/sys/i386/conf]# cd ../compile/dinopsys
[root@freebsd /usr/src/sys/i386/compile/dinopsys]# make cleandepend; make depend
bu komutlar bitince
[root@freebsd /usr/src/sys/i386/compile/dinopsys]# make; make install clean
komutunu calistiralim ve islemin bitmesini bekleyelim hatasiz bir sekilde islem bitince sunucumuza restart atalim.
[root@freebsd /home/.fikri]# uname -a
FreeBSD freebsd.dinopsys.net 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Mon May 28 16:24:08 EEST 2007 fikri@freebsd.dinopsys.net:/usr/src/sys/i386/compile/dinopsys i386
[root@freebsd /home/.fikri]#
Evet yeni kernelimiz hayirli olsun…
Simdi ornek bir firewall hazirlayalim.
pico /etc/rc.local
#!/usr/local/bin/bash
ipfw -f flush
ipfw add deny ip from any to 212.175.22.98 22 via xl0
ipfw add deny ip from 192.168.1.69 to any 80
kaydedip cikalim.
chmod +x rc.local
komutu ile dosyamiza calistirma yetisi verelim.
./rc.local
komutu ile dosyayi calistiralim. Birinci komutta disaridan fw mize gelicek ssh isteklerini reddettik.
Ikinci satirda ise iceride 1.69 nolu ip nin disaridan herhangi bir 80. porta erisimini yasakladik. Geri kalan hersey acik konumda..(kernelda oyle ayarlamistik)
Simdi acilista calismasi icin /etc/rc.conf dosyamiza su satiri ekliyoruz.
pico /etc/rc.conf
[….]
firewall_enable=”YES”
[….]
IPFW ile ilgili detayli bilgi belki bir baska dokumanda yazariz. Yaralanabileceginiz bazi linkler asagidadir.
http://fikridal.com/makale/freebsd-ipfw-2
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/firewalls-ipfw.html
7 Responses
Dostum yazıyı hemen yayınladığın için çok teşekkürler.Verdiğin bilgiler çok yararlı oldu. Mail adresim sitede var şu işi bitireyim sana b, yemek borcum olsun. Msn adresim de aynı eklersen memnun olurum.Takıldığım yerlerde akıl danışmak için. Herşey için teşekkürler.
Daha bitmedi devam edicez daha freebsd mizi stable hale getiricez falan filan bizde fantezi cok. 🙂
Allah razı olsun usta sen olmasan işim çok zordu. Eline koluna sağlık.
Sayende FreeBsd öğrenmeye çalışıyorum 🙂
Teşekkürler,
Devamını bekliyorum
Yardimim dokunuyorsa ne mutlu bana..
siteyi netten buldum gercekten guzel, ama gel gorki bende pico denen sey calismadi 🙂 ben ilk defa freebsd nin firewall ayarlarina giricem ve IP leri giricem hic bilmiyorum.. hangi dosyada o dosya nerede bir bilgim yok 🙂 yardimci olursaniz cok sevinirim.
Arkadaslar,
Uzun bir aradan sonra bu hafta freebsd 7.2 kuruyoruz, ustunede envai cesit firewall ve program kuracagiz. Ilgilenenlere duyrulur.