Teşekkürler. 01 Nisan 2011 13:31 tarihinde emrecan ural <[email protected]> yazdı:
> Ekteki dosya gözümden kaçmış. Aşağıdaki scripti kullanabilirsin. Örnek > olarak bu kodları rc.firewall adlı bir dosyaya yazdıysan; > chmod +x rc.firewall > Başlatmak için: ./rc.firewall start > Durdurmak için: ./rc.firewall stop > Durumu kontrolü: ./rc.firewall status > Restart: ./rc.firewall restart > > Notlar: > - Bunu yazdıktan sonra test etmedim, kullanırken dikkat. > - Bol miktarda log üretecektir, gereksiz olanları normal ACCEPT veya > DROP ile loglamayabilirsin. > > > #!/bin/sh > IPTABLES="/sbin/iptables" > case "$1" in > stop) > echo -ne "Shutting down firewall...\n" > $IPTABLES -F > $IPTABLES -F -t mangle > $IPTABLES -F -t nat > $IPTABLES -X > $IPTABLES -X -t mangle > $IPTABLES -X -t nat > $IPTABLES -P INPUT ACCEPT > $IPTABLES -P OUTPUT ACCEPT > $IPTABLES -P FORWARD ACCEPT > echo -ne "Done!\n\n" > ;; > status) > echo -ne "Firewall Status:\n" > echo -ne $"Table: filter\n" > iptables --list -n > echo -ne $"Table: nat\n" > iptables -t nat --list -n > echo -ne $"Table: mangle\n" > iptables -t mangle --list -n > ;; > restart|reload) > $0 stop > $0 start > ;; > start) > echo -ne "Starting firewall...\n" > > #Paket forwarding icin > echo 1 > /proc/sys/net/ipv4/ip_forward > > $IPTABLES -P INPUT DROP > $IPTABLES -P OUTPUT DROP > $IPTABLES -P FORWARD DROP > > #Bir kural bir chaine atanirsa paketler loglandiktan sonra kabul edilir. > $IPTABLES -N ACCEPTLOG > $IPTABLES -A ACCEPTLOG -j LOG --log-prefix '[IPTABLES ACCEPT] : ' > $IPTABLES -A ACCEPTLOG -j ACCEPT > > #Bir kural bir chaine atanirsa paketler loglandiktan sonra reddedilir. > $IPTABLES -N DROPLOG > $IPTABLES -A DROPLOG -j LOG --log-prefix '[IPTABLES DROP] : ' > $IPTABLES -A DROPLOG -j DROP > > #Lokal interface trafiğini serbest birakalim (Bunlari loglamaya da > gerek yok) > $IPTABLES -A INPUT -i lo -j ACCEPT > $IPTABLES -A OUTPUT -o lo -j ACCEPT > > #INPUT kurallari > $IPTABLES -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPTLOG #Dis > interface SSH erisimi > $IPTABLES -A INPUT -i eth1 -p tcp --dport 22 -j ACCEPTLOG #Ic > interface SSH erisimi > $IPTABLES -A INPUT -m state --state ESTABLISHED -j ACCEPTLOG > #Acilan baglantilarin geri donen cevaplari icin > $IPTABLES -A INPUT -m state --state RELATED -j ACCEPTLOG #Acilan > baglantilarin geri donen cevaplari icin > $IPTABLES -A INPUT -j DROPLOG #Geri kalan hersey icin LOG ve DROP > > #OUTPUT kurallari (Makinanin kendisinin iceriye ve disariya erisimi > icin) > $IPTABLES -A OUTPUT -o eth0 -j ACCEPTLOG > $IPTABLES -A OUTPUT -o eth1 -j ACCEPTLOG > > #FORWARD kurallari > $IPTABLES -A FORWARD -i eth1 -s 192.168.10.10 -o eth0 -d > 192.168.50.2 -p tcp -m multiport --dport 7001,7002 -j ACCEPTLOG > $IPTABLES -A FORWARD -i eth1 -s 192.168.40.20 -o eth0 -d > 192.168.50.2 -p tcp -m multiport --dport 7001,7002 -j ACCEPTLOG > $IPTABLES -A FORWARD -i eth1 -s 192.168.10.10 -j DROPLOG > $IPTABLES -A FORWARD -i eth1 -s 192.168.40.20 -j DROPLOG > $IPTABLES -A FORWARD -i eth1 -s 192.168.10.0/24 -o eth0 -j ACCEPTLOG > $IPTABLES -A FORWARD -i eth0 -o eth1 -d 192.168.10.0/24 -j ACCEPTLOG > $IPTABLES -A FORWARD -i eth0 -o eth1 -d 192.168.40.20 -j ACCEPTLOG > > #Acilan baglantilarin geri donen cevaplari icin > $IPTABLES -A FORWARD -i eth0 -m state --state ESTABLISHED -j ACCEPTLOG > $IPTABLES -A FORWARD -i eth0 -m state --state RELATED -j ACCEPTLOG > $IPTABLES -A FORWARD -i eth1 -m state --state ESTABLISHED -j ACCEPTLOG > $IPTABLES -A FORWARD -i eth1 -m state --state RELATED -j ACCEPTLOG > > $IPTABLES -A FORWARD -j DROPLOG #Geri kalan hersey icin LOG ve DROP > echo -ne "Done!\n\n" > ;; > *) > echo -ne "\nUsage: firewall (start|stop|restart|status)\n\n" > exit 1 > esac > exit 0 > > > > 2011/4/1 yaşar tunçez <[email protected]>: > > Merhaba, > > Ekteki şekilde belirtmiştim ama ; > > linux router üzerindeki interface'ler > > eth0: 10.10.10.1 ---- > dış network > > eth1: 192.168.10.2 ---- > iç network > > 192.168.10.X ---- > bu network dış network'e herhangi bir kurala > takılmadan > > çıkacak, ancak > > 192.168.10.10 --- > ip ve bunun arkasındaki 192.168.40.20 ip'si sadece > dış > > networkteki 192.168.50.2 ip'li sunucunun 7001 ve 7002 portlarına > > erişebilecek. Bunu aslında dış network diye tarbir ettiğim yerde bir fw > > marifetiyle yapmak daha mantıklı ama böyle bir imkan olmadığı için ben > > burada sadece bu istekleri dış networke aktararak sorunu çözmeyi > amaçladım. > > > > 01 Nisan 2011 11:48 tarihinde emrecan ural <[email protected]> > yazdı: > >> > >> Merhaba, > >> > >> Gözüktüğü kadarıyla kurallarda bazı karışıklıklar olabilir. Net bir > >> şekilde durumu anlamak için, Linux sunucu üzerindeki network > >> interfacelerini ve bunların üzerindeki IP adreslerini belirtir misin? > >> Ayrıca hangi network hangi interface arkasında onu da belirtmen > >> gerekiyor. Log için bir logging chaini oluşturup herhangi bir paketi > >> drop veya accept etmeden önce bu chainden geçirmen lazım. Yukarıdaki > >> bilgileriverdikten sonra logging ile ilgili de gerekli satırları > >> yazabilirim. > >> > >> 2011/3/31 yaşar tunçez <[email protected]>: > >> > Merhaba, > >> > > >> > router olarak görev yapan bir linux makinede iptables ile sınırlamalar > >> > yapmak istiyorum. Ekteki şekilde görüldüğü gibi 192.168.10.X ağı > router > >> > olarak görev yapan linux makine üzerinden 192.168.50.2 ve buradaki > diğer > >> > netwoklere erişecek. 192.168.40.20 sunucusu ise örneğin router > >> > 192.168.10.10 > >> > üzerinden router'a router'dan da 192.168.50.2 sunucusunun iki farklı > >> > portuna > >> > (örneğin tcp 7001 ve 7002 olsun) bağlanacak. 192.168.50.2 ve buradaki > >> > network(ler)den 192.168.10.X ve 192.168.40.20 ye erişimde herhangi bir > >> > kısıtlama olmayacak. > >> > > >> > Bununla ilgili kuralları şu şekilde yazdım. Herhangi bir eksiklik ya > da > >> > hata > >> > var mı acaba? > >> > > >> > #!/bin/sh > >> > iptables -t nat -F > >> > iptables -t nat -X > >> > iptables -F > >> > iptables -X > >> > iptables -P FORWARD DROP > >> > iptables -A FORWARD -ieth0 -j ACCEPT > >> > iptables -A FORWARD -i eth1 -s 192.168.10.10 -p tcp -m multiport > --dport > >> > 7001,7002 -o eth0 -j ACCEPT > >> > iptables -A FORWARD -i eth1 -s 192.168.40.20 -p tcp -m multiport > --dport > >> > 7001,7002 -o eth0 -j ACCEPT > >> > iptables -A FORWARD -i eth1 -s !192.168.10.10 -o eth0 -j ACCEPT > >> > iptables -P INPUT DROP > >> > iptables -A INPUT -i lo -j ACCEPT > >> > iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT > >> > > >> > Son olarak kurallara takılan/geçen paketleri nasıl izleyebilirim? > >> > > >> > > >> > _______________________________________________ > >> > Linux-guvenlik mailing list > >> > [email protected] > >> > https://liste.linux.org.tr/mailman/listinfo/linux-guvenlik > >> > Liste kurallari: http://liste.linux.org.tr/kurallar.php > >> > > >> > > >> _______________________________________________ > >> Linux-guvenlik mailing list > >> [email protected] > >> https://liste.linux.org.tr/mailman/listinfo/linux-guvenlik > >> Liste kurallari: http://liste.linux.org.tr/kurallar.php > > > > > > _______________________________________________ > > Linux-guvenlik mailing list > > [email protected] > > https://liste.linux.org.tr/mailman/listinfo/linux-guvenlik > > Liste kurallari: http://liste.linux.org.tr/kurallar.php > > > > > _______________________________________________ > Linux-guvenlik mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-guvenlik > Liste kurallari: http://liste.linux.org.tr/kurallar.php >
_______________________________________________ Linux-guvenlik mailing list [email protected] https://liste.linux.org.tr/mailman/listinfo/linux-guvenlik Liste kurallari: http://liste.linux.org.tr/kurallar.php
