{"id":3642,"date":"2013-05-25T15:07:11","date_gmt":"2013-05-25T12:07:11","guid":{"rendered":"http:\/\/www.koraykey.com\/?p=3642"},"modified":"2013-06-24T16:10:39","modified_gmt":"2013-06-24T13:10:39","slug":"linux-isletim-sistemlerinde-firewall-yapilandirmasi","status":"publish","type":"post","link":"https:\/\/www.koraykey.com\/?p=3642","title":{"rendered":"Linux \u0130\u015fletim Sistemlerinde Firewall Yap\u0131land\u0131rmas\u0131 (Iptables)"},"content":{"rendered":"<p style=\"text-align: justify;\"><a href=\"http:\/\/www.koraykey.com\/wp-content\/uploads\/LinuxFirewall.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-3643\" alt=\"LinuxFirewall\" src=\"http:\/\/www.koraykey.com\/wp-content\/uploads\/LinuxFirewall.jpg\" width=\"250\" height=\"275\" \/><\/a><span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Bu makalemizde Linux i\u015fletim sistemleri ile entegre gelen iki g\u00fcvenlik eklentisi olan &#8220;Linux Firewall (Iptables)&#8221; yaz\u0131l\u0131m\u0131n\u0131 inceleyece\u011fiz.<\/span><\/p>\n<p style=\"text-align: justify;\"><strong><span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Linux Firewall (Iptables) Nedir ?<\/span><\/strong><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Iptables netfilter tak\u0131m\u0131 ve bir\u00e7ok destekleyici taraf\u0131ndan geli\u015ftirilen g\u00fcvelik duvar\u0131 yaz\u0131l\u0131m\u0131d\u0131r. Linux \u00e7ekirde\u011fiyle konu\u015farak paket s\u00fczme kurallar\u0131n\u0131 belirler. Iptables, Linux i\u015fletim sisteminin varsay\u0131lan g\u00fcvenlik duvar\u0131d\u0131r. Bu g\u00fcvenlik duvar\u0131 servislerin \u00e7al\u0131\u015ft\u0131\u011f\u0131 portlardan ge\u00e7en trafi\u011fi engelleyebilir, ba\u015fka bir porta y\u00f6nlendirme yapabilir.<\/span><\/p>\n<p style=\"text-align: justify;\">1. <span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Sunucumuzda kurulu de\u011filse Firewall (iptables) yaz\u0131l\u0131m\u0131n\u0131 kuruyoruz. Red Hat ve t\u00fcrevi i\u015fletim sistemlerinde &#8220;iptables&#8221; varsay\u0131lan olarak kurulu halde geliyor.<\/span><\/p>\n<pre class=\"brush: bash; gutter: false; first-line: 1\"><span style=\"font-family: courier new,courier; font-size: 12px;\">-- IPv4 i\u00e7in iptables kurulumu a\u015fa\u011f\u0131daki gibi yap\u0131labilir.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># yum install iptables<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- IPv6 i\u00e7in iptables kurulumu a\u015fa\u011f\u0131daki gibi yap\u0131labilir.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># yum install iptables-ipv6<\/span><\/pre>\n<p style=\"text-align: justify;\">2. <span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Sunucumuzda firewall servisimizi kapal\u0131ysa ba\u015flat\u0131yoruz ve sunucumuz a\u00e7\u0131ld\u0131\u011f\u0131nda otomatik ba\u015flamas\u0131 i\u00e7in gerekli ayarlar\u0131 yap\u0131yoruz.<\/span><\/p>\n<pre class=\"brush: bash; gutter: false; first-line: 1\"><span style=\"font-family: courier new,courier; font-size: 12px;\">-- Firewall servisimizi ba\u015flatmak i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># service iptables start<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Firewall servisimizin sunucumuz a\u00e7\u0131ld\u0131\u011f\u0131nda otomatik ba\u015flamas\u0131 i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># chkconfig --level 345 iptables on\r\n\r\n-- Firewall servisimizi durdurmak i\u00e7in\r\n\r\n# service iptables stop\r\n\r\n-- Firewall servisimizi sunucumuz a\u00e7\u0131ld\u0131\u011f\u0131nda ba\u015flamamas\u0131 i\u00e7in\r\n\r\n# chkconfig iptables off<\/span><\/pre>\n<p style=\"text-align: justify;\">3. <span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Sunucumuzda firewall servisinin mevcut durumunu sorgulamak i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabiliriz.<\/span><\/p>\n<pre class=\"brush: bash; gutter: false; first-line: 1\"><span style=\"font-family: courier new,courier; font-size: 12px;\"># service iptables status<\/span><span style=\"font-family: courier new,courier; font-size: 12px;\">\r\n\r\nTable: filter\r\nChain INPUT (policy ACCEPT)\r\nnum\u00a0 target\u00a0\u00a0\u00a0\u00a0 prot opt source\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 destination\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\r\n1\u00a0\u00a0\u00a0 ACCEPT\u00a0\u00a0\u00a0\u00a0 all\u00a0 --\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0.0.0.0\/0\u00a0\u00a0 state RELATED,ESTABLISHED \r\n2\u00a0\u00a0\u00a0 ACCEPT\u00a0\u00a0\u00a0\u00a0 icmp --\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\r\n3\u00a0\u00a0\u00a0 ACCEPT\u00a0\u00a0\u00a0\u00a0 all\u00a0 --\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\r\n4\u00a0\u00a0\u00a0 ACCEPT\u00a0\u00a0\u00a0\u00a0 tcp\u00a0 --\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0.0.0.0\/0\u00a0\u00a0 state NEW tcp dpt:22 \r\n5\u00a0\u00a0\u00a0 REJECT\u00a0\u00a0\u00a0\u00a0 all\u00a0 --\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0.0.0.0\/0\u00a0\u00a0 reject-with icmp-host\r\n\r\nChain FORWARD (policy ACCEPT)\r\nnum\u00a0 target\u00a0\u00a0\u00a0\u00a0 prot opt source\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 destination\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\r\n1\u00a0\u00a0\u00a0 REJECT\u00a0\u00a0\u00a0\u00a0 all\u00a0 --\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0.0.0.0\/0\u00a0\u00a0 reject-with icmp-host\r\n\r\nChain OUTPUT (policy ACCEPT)\r\nnum\u00a0 target\u00a0\u00a0\u00a0\u00a0 prot opt source\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 destination\u00a0\u00a0\u00a0\u00a0\u00a0 <\/span><\/pre>\n<p style=\"text-align: justify;\">4. <span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Sunucumuzda grafik aray\u00fczden firewall y\u00f6netim paneline eri\u015fmek i\u00e7in &#8220;System Administration&gt;Firewall&#8221; yolunu izlemeliyiz.<\/span><\/p>\n<p style=\"text-align: justify;\"><a href=\"http:\/\/www.koraykey.com\/wp-content\/uploads\/LinuxFirewall1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-3666\" alt=\"LinuxFirewall\" src=\"http:\/\/www.koraykey.com\/wp-content\/uploads\/LinuxFirewall1.jpg\" width=\"640\" height=\"451\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">5. <span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Sunucumuzda izinleri verebilmek ve gerekli yap\u0131land\u0131rmam\u0131z\u0131 yapabilmek i\u00e7in &#8220;iptables&#8221; komutunu kullan\u0131yoruz. Bununla ilgili bilgileri inceleyelim.<\/span><\/p>\n<pre class=\"brush: bash; gutter: false; first-line: 1\"><span style=\"font-family: courier new,courier; font-size: 12px;\">-- Iptables Hedefleri<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">ACCEPT \tPaketlerin ge\u00e7isine izin verilir.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">DROP \tPaketlerin ge\u00e7i\u015fine izin verilmez.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">REJECT \tPaketlerin eri\u015fimi reddedilir ve g\u00f6nderen bilgilendirilir.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">RETURN \tZincirin sonuna g\u00f6nderilir.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">QUEUE \tPaketler kullan\u0131c\u0131 alan\u0131na g\u00f6nderilir.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Iptables Parametreleri<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-A Z\u0130NC\u0130R \tZincire kural ekler.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-E Z\u0130NC\u0130R \tZinciri yeniden adland\u0131r\u0131r.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-D Z\u0130NC\u0130R \tZincirden bir kural siler.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-D Z\u0130NC\u0130R \tZincirden belirtilen numaradaki kurali siler.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-L Z\u0130NC\u0130R \tBelirtilen zincirdeki kurallari g\u00f6sterir.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-E Z\u0130NC\u0130R \tZinciri yeniden adlandirir.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-l Z\u0130NC\u0130R \tZincirde belirtilen numaral\u0131 alana kural\u0131 ekler.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-R Z\u0130NC\u0130R \tZincirde kural\u0131n yerine ba\u015fkas\u0131n\u0131 koyar.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-R Z\u0130NC\u0130R \tZincirde belirtilen numaral\u0131 alana bir ba\u015fkas\u0131n\u0131 koyar.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-N Z\u0130NC\u0130R \tYeni bir zincir olu\u015fturur.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-X Z\u0130NC\u0130R \tKullan\u0131c\u0131n\u0131n ekledi\u011fi bir zinciri siler.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-F Z\u0130NC\u0130R \tZincirdeki kurallar\u0131n t\u00fcm\u00fcn\u00fc siler.<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-P Z\u0130NC\u0130R \tZincire genel politika ekler.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Zincirler ( INPUT,OUTPUT,FORWARD ve POSTROUTING PREROUTING ) b\u00fcy\u00fck harflerle\r\nyaz\u0131l\u0131r.<\/span><\/pre>\n<p style=\"text-align: justify;\">6. <span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Yukar\u0131daki &#8220;iptables&#8221; komut ve parametrelerini \u00f6rneklerle a\u00e7\u0131klayal\u0131m.<\/span><\/p>\n<pre class=\"brush: bash; gutter: false; first-line: 1\"><span style=\"font-family: courier new,courier; font-size: 12px;\">-A \u2013append : Belirli bir zincirin sonuna bir kural eklemek i\u00e7in;<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT CHAIN_NAME<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT CHAIN_NAME<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-D \u2013delete : Zinciri silmek i\u00e7in kullan\u0131lan komut; Silme i\u015flemi i\u00e7in ya zincir\r\nnumaras\u0131 belirtilir ya da kural\u0131n kendisi.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -D INPUT 1<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -D INPUT --dport 80 -j DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-R \u2013replace : Mevcut zinciri de\u011fi\u015ftirmek i\u00e7in;<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -R INPUT 1 -s 192.168.0.1 -j DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-I \u2014 insert : Genel zincir i\u00e7inde belirlenmi\u015f bir alana bir zincir daha eklemek\r\ni\u00e7in;<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -I INPUT 1 --dport 80 -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-L \u2013list : Kurallar\u0131 listeler;<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Zincirdeki t\u00fcm kurallar\u0131 listelemek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -L<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Sadece INPUT kurallar\u0131n\u0131 listelemek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -L INPUT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-F \u2013flush : Zincirdeki t\u00fcm kurallar\u0131 siler;<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- INPUT zincirindeki t\u00fcm kurallar\u0131 silmek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -F INPUT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- T\u00fcm kurallar\u0131 silmek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -F<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-N \u2013new-chain : Yeni bir zincir olu\u015fturur<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -N CHAIN_NAME<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-X \u2013delete-chain : Bir zinciri siler.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Belli bir zinciri silmek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -X CHAIN_NAME<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- T\u00fcm zincirleri silmek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -X<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-P \u2013policy : Kernelin bir zincirdeki kurala kar\u015f\u0131l\u0131k hangi hareket tarz\u0131n\u0131\r\ng\u00f6stermesi gerekti\u011fini s\u00f6yler ACCEPT, REJECT, DROP ...<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -P INPUT DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- ! karakteri ile belirli bir kural i\u00e7erinde ayr\u0131cal\u0131k olu\u015fturabilir;\r\n\u00d6rne\u011fin t\u00fcm gelen tcp ba\u011flant\u0131lar\u0131n\u0131 engellemek ama 192.168.2.130 numaral\u0131\r\nIP\u2019ye ayr\u0131cal\u0131k tan\u0131mak istiyoruz<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -p tcp --source ! 192.168.2.130 -j DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-p \u2013protocol : Kuralda kullan\u0131lacak protokol tipini belirtir: tcp, udp, icmp, all\r\n\u00d6rne\u011fin t\u00fcm icmp trafi\u011fini engellemek i\u00e7in.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -p icmp -j DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-s \u2013source : Kaynak adresini belirtmek i\u00e7in kullan\u0131l\u0131r.\r\n\u00d6rne\u011fin 192.168.2.130 numaral\u0131 ipden gelen t\u00fcm tcp trafi\u011fini kabul etmek i\u00e7in.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A INPUT -p tcp -s 192.168.2.130 -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-d \u2013destination : Var\u0131\u015f adresini belirler.\r\n\u00d6rne\u011fin 192.168.2.130 numaral\u0131 ipye tcp trafi\u011fi i\u00e7in port y\u00f6nlendirmesi yap\u0131lacaksa<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A FORWARD -p tcp -d 192.168.2.130 -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-i \u2013in-interface : Belirli bir a\u011f aray\u00fcz\u00fcn\u00fcn gelen ba\u011flant\u0131lar\u0131 i\u00e7in belirli bir\r\nkural\u0131 uygulama (Sadece INPUT, FORWARD ve PREROUTING). \u00d6rne\u011fin eth0 ayg\u0131t\u0131nda t\u00fcm\r\ngelen icmp trafi\u011fini engellemek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -p icmp -i eth0 -j DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-o \u2013out-interface : Belirli bir a\u011f aray\u00fcz\u00fcn\u00fcn giden ba\u011flant\u0131lar\u0131 i\u00e7in belirli\r\nbir kural\u0131 uygulama (Sadece OUTPUT, FORWARD ve PREROUTING). \u00d6rne\u011fin eth0 ayg\u0131t\u0131nda\r\nt\u00fcm giden icmp trafi\u011fini engellemek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT -p icmp -o eth0 -j DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">\u2013sport \u2013source-port : Kaynak portu ya da s\u0131ra halindeki portlar\u0131 [1024:2042]\r\nbelirlemek i\u00e7in kullan\u0131l\u0131r. Birden fazla port belirtilcekse -m multiport parametresi\r\nkullan\u0131l\u0131r.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -p tcp --sport 80 -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -p udp --sport 80 -j DROP<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -p tcp -m multiport --sport 3128,21,1000 -j DROP<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -p tcp --sport 1024:2042 -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">\u2013dport \u2013destination-port : S\u0131ra halindeki var\u0131\u015f portlar\u0131n\u0131 belirtmek i\u00e7in kullan\u0131l\u0131r.\r\nBirden fazla port belirtilcekse -m multiport parametresi kullan\u0131l\u0131r.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUPUT -p tcp --dport 110 -j DROP<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUPUT -p udp --dport 110 -j DROP<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUPUT -p tcp -m multiport --dport 110,4242,119 -j DROP<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUPUT -p tcp --dport 4925:4633 -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">\u2013mac-source : MAC adresini belirtmek i\u00e7in kullan\u0131l\u0131r.\r\n\u00d6rne\u011fin 35:26:AA:35:26:AA MACadresinden gelen t\u00fcm trafi\u011fi engellemek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT --mac-source 35:26:AA:35:26:AA -j DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">\u2013state : Belirli bir paket durumunun kar\u015f\u0131la\u015ft\u0131rmas\u0131 i\u00e7in kullan\u0131l\u0131r.\r\n(ESTABLISHED, NEW, INVALID, RELATED)<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -i eth0 -p tcp --sport 80 -m state <span style=\"font-size: 10px;\">--state NEW,ESTABLISHED -j ACCEPT<\/span><\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT -o eth0 -p tcp --dport 80 -m state <span style=\"font-size: 10px;\">--state ESTABLISHED -j ACCEPT<\/span><\/span><\/pre>\n<p style=\"text-align: justify;\">7. <span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Sunucumuzda a\u00e7\u0131klad\u0131\u011f\u0131m\u0131z firewall ayaralar\u0131 ile ilgili \u00f6rnek yap\u0131land\u0131rmalar yapal\u0131m.<\/span><\/p>\n<pre class=\"brush: bash; gutter: false; first-line: 1\"><span style=\"font-family: courier new,courier; font-size: 12px;\">-- \u00d6n ayarl\u0131 kurallar\u0131n y\u00fcklenmesi (T\u00fcm a\u011f trafi\u011fini engeller)<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -P INPUT DROP<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -P OUTPUT DROP<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -P FORWARD DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Loopback Adapter i\u00e7in izin ver<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -i lo -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT -o lo -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Web trafi\u011fine izin ver<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -i eth0 -p tcp -m tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT -o eth0 -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- DNS sunucu hizmetine izin ver:<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -i eth0 -p udp -m udp --sport 53 -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -i eth0 -p tcp -m tcp --sport 53 -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT -o eth0 -p tcp -m tcp --dport 53 -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- FTP sunucu hizmetine izin ver<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -i eth0 -p tcp -m tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -i eth0 -p tcp -m tcp --sport 20 -m state --state ESTABLISHED,RELATED -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT -o eth0 -p tcp -m tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT -o eth0 -p tcp -m tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A OUTPUT -o eth0 -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Belirli bir ip i\u00e7in izin ver veya engelle:<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- \u0130zin vermek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -s 192.168.2.130 -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Engellemek i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># iptables -A INPUT -s 10.123.452.36 -j DROP\r\n\r\n-- \u00d6zetle TCP Portu a\u00e7mak i\u00e7in\r\n\r\n# iptables -A TRUSTED -i eth0 -p tcp -m tcp --dport port_numaras\u0131 -j ACCEPT\r\n\r\n-- \u00d6zetle UDP Portu a\u00e7mak i\u00e7in\r\n\r\n# iptables -A TRUSTED -i eth0 -p udp -m udp --dport port_numaras\u0131 -j ACCEPT<\/span><\/pre>\n<p style=\"text-align: justify;\">8. <span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Sunucular\u0131m\u0131z i\u00e7in bir firewall standart\u0131 olu\u015fturmak istiyorsak bunu bir script haline getirebilir ve sunucular\u0131m\u0131zda \u00e7al\u0131\u015ft\u0131rabiliriz. Olu\u015fturaca\u011f\u0131m\u0131z script ile firewall ayarlar\u0131m\u0131z\u0131 d\u00fczenleyebiliriz.<\/span><\/p>\n<pre class=\"brush: bash; gutter: false; first-line: 1\"><span style=\"font-family: courier new,courier; font-size: 12px;\">-- Firewall scriptimizi olu\u015fturuyoruz ve a\u015fa\u011f\u0131daki i\u00e7eri\u011fi yaz\u0131yoruz.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># vim \/tmp\/firewall_config.sh<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Script \u0130\u00e7eri\u011fimiz<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">#!\/bin\/bash<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># A\u011f Segmentimiz<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">LAN=192.168.2.1\/24<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># IP Adresimiz<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">OWNIP=192.168.1.2<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># T\u00fcm firewall ayarlar\u0131n\u0131 sil<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -F<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -X<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># \u00d6n tan\u0131ml\u0131 ayarlar\u0131 geri y\u00fckle. T\u00fcm ba\u011flant\u0131lar\u0131 kabul et<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -P INPUT ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -P OUTPUT ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -P FORWARD ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># Yeni iki zincir olu\u015ftur<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -N FIREWALL<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -N TRUSTED<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># ESTABLISHED ve RELATED gelen ba\u011flant\u0131lara izin ver<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A FIREWALL -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># Loopback trafi\u011fine izin ver<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A FIREWALL -i lo -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># G\u00f6nderilen t\u00fcm paketleri TRUSTED zincirine yolla<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A FIREWALL -j TRUSTED<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># Di\u011fer t\u00fcm paketleri engelle<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A FIREWALL -j DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># T\u00fcm gelen INPUT paketleri FIREWALL zincirine yolla<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A INPUT -j FIREWALL<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># T\u00fcm forward edilmi\u015f paketleri engelle<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A FORWARD -j DROP<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># samba (Netbios'suz)<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A TRUSTED -i eth1 -p tcp -m tcp -s $LAN --dport 445 -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># Samba (Netbios)<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A TRUSTED -i eth1 -p udp -m udp -s $LAN --dport 137:139 -j ACCEPT<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">iptables -A TRUSTED -i eth1 -p udp -m udp --sport 137:138 -j ACCEPT<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># Sonu\u00e7 mesaj\u0131<\/span>\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">echo \" [Iptables kurallar\u0131 uyguland\u0131] \"<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Script dosyam\u0131z\u0131n \u00e7al\u0131\u015fma izinlerini d\u00fczenliyoruz.<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># chmod u+x \/tmp\/firewall_config.sh<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\">-- Scriptimizi \u00e7al\u0131\u015ft\u0131rmak i\u00e7in<\/span>\r\n\r\n<span style=\"font-family: courier new,courier; font-size: 12px;\"># \/tmp\/firewall_config.sh<\/span><\/pre>\n<p style=\"text-align: justify;\"><span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Linux Firewall (iptables) ile ilgili inceleyceklerimiz bu kadar genelde s\u0131k kullan\u0131lan yap\u0131land\u0131rmalar\u0131 inceledik. Yukar\u0131daki \u00f6rneklerle kendi sunucu ve a\u011f yap\u0131m\u0131za g\u00f6re firewall yap\u0131land\u0131rmam\u0131z\u0131 yapabiliriz. Sunucular\u0131m\u0131zda Oracle Veritaban\u0131 Y\u00f6netim Sistemi kullanacaksak Oracle varsay\u0131lan olarak firewall servisinin sorun \u00e7\u0131kmamas\u0131 a\u00e7\u0131s\u0131ndan &#8220;disabled&#8221; durumda olmas\u0131n\u0131 \u00f6nermektedir. Yukar\u0131daki i\u015flemler &#8220;Red Hat Enterprise Linux 6.x&#8221; i\u015fletim sisteminde test edilmi\u015ftir. Oracle Enterprise Linux 6.x ve CentOS 6.x gibi Red Hat t\u00fcrevi i\u015fletim sistemlerinde yap\u0131land\u0131rmalar\u0131m\u0131z benzerdir.<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-family: arial,helvetica,sans-serif; font-size: 12px;\">Ba\u015fka bir makalede g\u00f6r\u00fc\u015fmek \u00fczere\u2026<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bu makalemizde Linux i\u015fletim sistemleri ile entegre gelen iki g\u00fcvenlik eklentisi olan &#8220;Linux Firewall (Iptables)&#8221; yaz\u0131l\u0131m\u0131n\u0131 inceleyece\u011fiz. Linux Firewall (Iptables) Nedir ? Iptables netfilter tak\u0131m\u0131 ve bir\u00e7ok destekleyici taraf\u0131ndan geli\u015ftirilen g\u00fcvelik duvar\u0131 yaz\u0131l\u0131m\u0131d\u0131r. Linux \u00e7ekirde\u011fiyle konu\u015farak paket s\u00fczme kurallar\u0131n\u0131 belirler. &hellip; <a href=\"https:\/\/www.koraykey.com\/?p=3642\">Okumaya devam et <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[21,290,20,19,409,410,400,398,411,412,519],"class_list":["post-3642","post","type-post","status-publish","format-standard","hentry","category-unix-linux","tag-h-koray-gunduz","tag-halil-koray-gunduz","tag-koray-gunduz","tag-koraykey","tag-linux-firewall-ayarlari","tag-linux-firewall-kullanimi","tag-linux-firewall-kurulumu","tag-linux-iptables","tag-linux-iptables-ayarlari","tag-linux-iptables-kullanimi","tag-linux-iptables-kurulumu"],"_links":{"self":[{"href":"https:\/\/www.koraykey.com\/index.php?rest_route=\/wp\/v2\/posts\/3642","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.koraykey.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.koraykey.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.koraykey.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.koraykey.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3642"}],"version-history":[{"count":0,"href":"https:\/\/www.koraykey.com\/index.php?rest_route=\/wp\/v2\/posts\/3642\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.koraykey.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3642"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.koraykey.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3642"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.koraykey.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3642"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}