{"id":35560,"date":"2025-12-01T04:41:35","date_gmt":"2025-12-01T01:41:35","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=35560"},"modified":"2025-12-01T04:41:35","modified_gmt":"2025-12-01T01:41:35","slug":"sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/","title":{"rendered":"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu"},"content":{"rendered":"<p><body><\/p>\n<h2>Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu<\/h2>\n<p>Modern altyap\u0131larda, sunucular aras\u0131 ileti\u015fim hayati \u00f6neme sahiptir. Mikro hizmet mimarileri, veritaban\u0131 sunucular\u0131, uygulama katmanlar\u0131 ve \u00f6nbellek sistemleri gibi bile\u015fenler s\u00fcrekli olarak birbirleriyle etkile\u015fim halindedir. Bu etkile\u015fimin g\u00fcvenli\u011fini sa\u011flamak, genel sistem g\u00fcvenli\u011finin temel bir par\u00e7as\u0131d\u0131r. Her ne kadar a\u011f d\u00fczeyinde g\u00fcvenlik \u00f6nlemleri al\u0131nsa da, her bir sunucuda bir g\u00fcvenlik duvar\u0131 (firewall) bulundurmak, derinlemesine savunma (defense-in-depth) stratejisinin kritik bir bile\u015fenidir. Bu rehberde, Linux sistemlerinin yerle\u015fik g\u00fcvenlik duvar\u0131 arac\u0131 olan Iptables&#8217;\u0131 kullanarak sunucular\u0131n\u0131z aras\u0131ndaki trafi\u011fi nas\u0131l koruyaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m \u00f6\u011freneceksiniz.<\/p>\n<p>Iptables, Linux \u00e7ekirde\u011finin Netfilter \u00e7er\u00e7evesi i\u00e7in bir kullan\u0131c\u0131 alan\u0131 program\u0131d\u0131r. Paket filtreleme, a\u011f adresi \u00e7evirisi (NAT) ve paket manip\u00fclasyonu gibi i\u015flevleri yerine getirmemizi sa\u011flar. Do\u011fru yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda, Iptables sunucular\u0131n\u0131z\u0131 yetkisiz eri\u015fime kar\u015f\u0131 koruyabilir, istenmeyen trafi\u011fi engelleyebilir ve sadece izin verilen ileti\u015fim kanallar\u0131n\u0131n a\u00e7\u0131k kalmas\u0131n\u0131 sa\u011flayabilir.<\/p>\n<h3>Iptables Temelleri: Netfilter \u00c7er\u00e7evesi ve \u00c7al\u0131\u015fma Prensibi<\/h3>\n<p>Iptables&#8217;\u0131 etkin bir \u015fekilde kullanabilmek i\u00e7in temel kavramlar\u0131n\u0131 anlamak \u00f6nemlidir. Iptables, Linux \u00e7ekirde\u011findeki <strong>Netfilter<\/strong> adl\u0131 bir a\u011f paket filtreleme \u00e7er\u00e7evesiyle etkile\u015fime girer. Netfilter, a\u011f trafi\u011fini belirli noktalarda yakalayarak, Iptables taraf\u0131ndan tan\u0131mlanan kurallara g\u00f6re i\u015flem yap\u0131lmas\u0131na olanak tan\u0131r.<\/p>\n<p>Iptables&#8217;ta \u00fc\u00e7 temel yap\u0131 bulunur:<\/p>\n<ul>\n<li><strong>Tablolar (Tables):<\/strong> Farkl\u0131 i\u015flevlere sahip kural setlerini bar\u0131nd\u0131r\u0131r. En s\u0131k kullan\u0131lan tablolar \u015funlard\u0131r:\n<ul>\n<li><code>filter<\/code>: Paket filtreleme i\u00e7in kullan\u0131l\u0131r (izin verme, engelleme). Bu rehberde a\u011f\u0131rl\u0131kl\u0131 olarak bu tabloya odaklanaca\u011f\u0131z.<\/li>\n<li><code>nat<\/code>: A\u011f Adresi \u00c7evirisi (NAT) i\u00e7in kullan\u0131l\u0131r (\u00f6rne\u011fin, port y\u00f6nlendirme).<\/li>\n<li><code>mangle<\/code>: Paket ba\u015fl\u0131klar\u0131n\u0131 de\u011fi\u015ftirmek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Zincirler (Chains):<\/strong> Tablolar i\u00e7inde yer alan ve paketlerin belirli bir noktada ge\u00e7ti\u011fi kural listeleridir. Her zincir, bir dizi kural i\u00e7erir ve paketler bu kurallarla s\u0131rayla e\u015fle\u015ftirilir. En \u00f6nemli zincirler \u015funlard\u0131r:\n<ul>\n<li><code>INPUT<\/code>: Sunucuya gelen ve sunucunun kendisi i\u00e7in hedeflenen paketler.<\/li>\n<li><code>OUTPUT<\/code>: Sunucudan \u00e7\u0131kan ve ba\u015fka bir hedefe g\u00f6nderilen paketler.<\/li>\n<li><code>FORWARD<\/code>: Sunucu \u00fczerinden ge\u00e7en (y\u00f6nlendirilen) paketler (\u00f6rne\u011fin, sunucu bir router gibi davran\u0131yorsa).<\/li>\n<\/ul>\n<\/li>\n<li><strong>Kurallar (Rules):<\/strong> Bir zincir i\u00e7indeki her kural, belirli e\u015fle\u015fme kriterleri (kaynak IP, hedef IP, port, protokol vb.) ve bir hedef (target) i\u00e7erir. Bir paket bir kural ile e\u015fle\u015fti\u011finde, hedef taraf\u0131ndan belirtilen eylem ger\u00e7ekle\u015ftirilir. Yayg\u0131n hedefler:\n<ul>\n<li><code>ACCEPT<\/code>: Paketin ge\u00e7i\u015fine izin verir.<\/li>\n<li><code>DROP<\/code>: Paketi sessizce d\u00fc\u015f\u00fcr\u00fcr, g\u00f6ndericiye herhangi bir yan\u0131t g\u00f6ndermez.<\/li>\n<li><code>REJECT<\/code>: Paketi d\u00fc\u015f\u00fcr\u00fcr ve g\u00f6ndericiye bir hata mesaj\u0131 (\u00f6rne\u011fin, ICMP port unreachable) g\u00f6nderir.<\/li>\n<li><code>LOG<\/code>: Paketin bilgilerini sistem g\u00fcnl\u00fc\u011f\u00fcne kaydeder, ancak paketin ge\u00e7i\u015fini etkilemez (genellikle di\u011fer hedeflerle birlikte kullan\u0131l\u0131r).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>G\u00fcvenlik Politikalar\u0131 ve Zincirler<\/h3>\n<p>Iptables yap\u0131land\u0131rmas\u0131n\u0131n temelini, her zincir i\u00e7in belirlenen varsay\u0131lan politikalar (default policies) olu\u015fturur. Bu politikalar, hi\u00e7bir kural taraf\u0131ndan e\u015fle\u015ftirilmeyen paketlere ne yap\u0131laca\u011f\u0131n\u0131 belirler. G\u00fcvenlik a\u00e7\u0131s\u0131ndan en iyi uygulama, &#8220;varsay\u0131lan olarak reddet&#8221; (deny by default) yakla\u015f\u0131m\u0131n\u0131 benimsemektir. Bu, t\u00fcm trafi\u011fi varsay\u0131lan olarak engellemek ve yaln\u0131zca a\u00e7\u0131k\u00e7a izin verilen trafi\u011fe ge\u00e7i\u015f izni vermektir.<\/p>\n<p>Varsay\u0131lan politikalar\u0131 ayarlamak i\u00e7in a\u015fa\u011f\u0131daki komutlar\u0131 kullan\u0131r\u0131z:<\/p>\n<pre><code class=\"language-bash\">\n<h2>INPUT zincirindeki t\u00fcm trafi\u011fi varsay\u0131lan olarak engelle<\/h2>\nsudo iptables -P INPUT DROP\n\n<h2>FORWARD zincirindeki t\u00fcm trafi\u011fi varsay\u0131lan olarak engelle (sunucu router de\u011filse)<\/h2>\nsudo iptables -P FORWARD DROP\n\n<h2>OUTPUT zincirindeki t\u00fcm trafi\u011fi varsay\u0131lan olarak engelle (dikkatli olun, sunucu d\u0131\u015far\u0131ya da ba\u011flanamaz)<\/h2>\nsudo iptables -P OUTPUT DROP\n<\/code><\/pre>\n<p><code>OUTPUT<\/code> zinciri i\u00e7in <code>DROP<\/code> politikas\u0131 ba\u015flang\u0131\u00e7ta sorunlara yol a\u00e7abilir, \u00e7\u00fcnk\u00fc sunucunuzun DNS sorgular\u0131 yapmas\u0131, paket g\u00fcncellemesi indirmesi gibi temel i\u015flemler i\u00e7in d\u0131\u015far\u0131ya ba\u011flant\u0131 kurmas\u0131 gerekebilir. Genellikle <code>INPUT<\/code> ve <code>FORWARD<\/code> i\u00e7in <code>DROP<\/code> politikas\u0131 uygulan\u0131rken, <code>OUTPUT<\/code> i\u00e7in daha esnek bir yakla\u015f\u0131m benimsenir ya da \u00e7ok kat\u0131 bir g\u00fcvenlik politikas\u0131 gerekiyorsa, <code>OUTPUT<\/code> i\u00e7in de <code>DROP<\/code> uygulan\u0131r ve gerekli t\u00fcm \u00e7\u0131k\u0131\u015f ba\u011flant\u0131lar\u0131 i\u00e7in kurallar a\u00e7\u0131k\u00e7a tan\u0131mlan\u0131r.<\/p>\n<h3>Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables Kurulumu<\/h3>\n<p>\u015eimdi sunucular\u0131n\u0131z aras\u0131ndaki trafi\u011fi korumak i\u00e7in pratik Iptables kurulum ad\u0131mlar\u0131na ge\u00e7elim. Bu \u00f6rnekte, bir web sunucusu (<code>SERVER_WEB<\/code>) ve bir veritaban\u0131 sunucusu (<code>SERVER_DB<\/code>) oldu\u011funu ve bu iki sunucunun i\u00e7 a\u011fda belirli IP adreslerine sahip oldu\u011funu varsayaca\u011f\u0131z. \u00d6rne\u011fin:<\/p>\n<ul>\n<li><code>SERVER_WEB<\/code>: 192.168.1.10<\/li>\n<li><code>SERVER_DB<\/code>: 192.168.1.20<\/li>\n<li>Y\u00f6netici \u0130\u015f \u0130stasyonu IP: 10.0.0.50 (SSH eri\u015fimi i\u00e7in)<\/li>\n<li>\u0130\u00e7 a\u011f aral\u0131\u011f\u0131: 192.168.1.0\/24<\/li>\n<\/ul>\n<h4>Ba\u015flang\u0131\u00e7 Ayarlar\u0131 ve Varsay\u0131lan Politikalar<\/h4>\n<p>Herhangi bir kural eklemeden \u00f6nce, mevcut Iptables kurallar\u0131n\u0131 temizlemek ve varsay\u0131lan politikalar\u0131 ayarlamak iyi bir uygulamad\u0131r. Bu, yanl\u0131\u015fl\u0131kla kendinizi sunucudan kilitlemenizi \u00f6nlemek i\u00e7in dikkatli yap\u0131lmal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\">\n<h2>Mevcut t\u00fcm kurallar\u0131 temizle<\/h2>\nsudo iptables -F # filter tablosu i\u00e7in t\u00fcm zincirleri temizle\nsudo iptables -X # Kullan\u0131c\u0131 tan\u0131ml\u0131 zincirleri sil\nsudo iptables -Z # Zincir saya\u00e7lar\u0131n\u0131 s\u0131f\u0131rla\n\n<h2>NAT tablosu i\u00e7in de ayn\u0131 i\u015flemi yapabilirsiniz (e\u011fer kullan\u0131l\u0131yorsa)<\/h2>\n<h2>sudo iptables -t nat -F<\/h2>\n<h2>sudo iptables -t nat -X<\/h2>\n\n<h2>Varsay\u0131lan politikalar\u0131 DROP olarak ayarla (g\u00fcvenli bir ba\u015flang\u0131\u00e7 i\u00e7in)<\/h2>\nsudo iptables -P INPUT DROP\nsudo iptables -P FORWARD DROP\nsudo iptables -P OUTPUT DROP # D\u0130KKAT: Bu, sunucunuzun d\u0131\u015far\u0131ya da ba\u011flanmas\u0131n\u0131 engeller!\n\n<h2>Kendi kendini kilitlememek i\u00e7in \u00f6nce SSH ba\u011flant\u0131s\u0131n\u0131 a\u00e7\u0131k tutun (ge\u00e7ici veya belirli bir IP'den)<\/h2>\n<h2>Bu kural\u0131 ekledikten sonra di\u011fer DROP politikalar\u0131n\u0131 uygulay\u0131n.<\/h2>\n<h2>Bu \u00f6rnekte, admin_ip'den SSH eri\u015fimine izin veriyoruz.<\/h2>\nsudo iptables -A INPUT -p tcp --dport 22 -s 10.0.0.50 -j ACCEPT\n\n<h2>Loopback trafi\u011fine izin ver (sunucunun kendi kendine konu\u015fmas\u0131 i\u00e7in kritik)<\/h2>\nsudo iptables -A INPUT -i lo -j ACCEPT\nsudo iptables -A OUTPUT -o lo -j ACCEPT\n\n<h2>Zaten kurulmu\u015f ve ilgili ba\u011flant\u0131lara izin ver<\/h2>\n<h2>Bu kural, mevcut oturumlar\u0131n (SSH, HTTP vb.) devam etmesini sa\u011flar.<\/h2>\nsudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT\nsudo iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT\n<\/code><\/pre>\n<p>Yukar\u0131daki ad\u0131mlar\u0131 her sunucu i\u00e7in uygulay\u0131n. <code>OUTPUT<\/code> zincirini <code>DROP<\/code> olarak ayarlad\u0131ysan\u0131z, sunucunun d\u0131\u015far\u0131ya yapmas\u0131 gereken t\u00fcm ba\u011flant\u0131lar\u0131 (DNS, NTP, paket depolar\u0131 vb.) a\u00e7\u0131k\u00e7a tan\u0131mlaman\u0131z gerekecektir.<\/p>\n<h4>\u0130\u00e7 A\u011f Trafi\u011fi \u0130\u00e7in Kurallar (\u00d6rnek: SERVER_WEB \u00fczerinde)<\/h4>\n<p>\u015eimdi <code>SERVER_WEB<\/code> (192.168.1.10) \u00fczerinde, <code>SERVER_DB<\/code> (192.168.1.20) ile ileti\u015fim kurmas\u0131n\u0131 sa\u011flayacak kurallar\u0131 tan\u0131mlayal\u0131m. <code>SERVER_WEB<\/code>, <code>SERVER_DB<\/code>&#8216;ye MySQL portu (3306) \u00fczerinden ba\u011flanmal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\">\n<h2>SERVER_WEB (192.168.1.10) i\u00e7in kurallar:<\/h2>\n\n<h2>Web sunucusu oldu\u011fu i\u00e7in d\u0131\u015far\u0131dan HTTP\/HTTPS trafi\u011fine izin ver<\/h2>\nsudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT\nsudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT\n\n<h2>SERVER_WEB'in SERVER_DB'ye (192.168.1.20) MySQL (3306) \u00fczerinden ba\u011flanmas\u0131na izin ver<\/h2>\n<h2>Bu, OUTPUT zincirinde tan\u0131mlanmal\u0131d\u0131r, \u00e7\u00fcnk\u00fc SERVER_WEB ba\u011flant\u0131 ba\u015flat\u0131r.<\/h2>\nsudo iptables -A OUTPUT -d 192.168.1.20 -p tcp --dport 3306 -j ACCEPT\n\n<h2>SERVER_DB'den gelen MySQL yan\u0131tlar\u0131na izin vermek ESTABLISHED kural\u0131 ile zaten sa\u011flan\u0131r.<\/h2>\n<h2>Ancak SERVER_DB'nin INPUT zincirinde de bu trafi\u011fe izin vermesi gerekir.<\/h2>\n\n<h2>Kendi i\u00e7 a\u011f\u0131ndaki di\u011fer sunuculara belirli portlardan eri\u015fim (\u00f6rne\u011fin, ba\u015fka bir uygulama sunucusu)<\/h2>\n<h2>sudo iptables -A OUTPUT -d 192.168.1.30 -p tcp --dport 8080 -j ACCEPT<\/h2>\n\n<h2>E\u011fer OUTPUT'u DROP yapt\u0131ysan\u0131z, DNS sorgular\u0131 i\u00e7in izin vermeniz gerekir<\/h2>\nsudo iptables -A OUTPUT -p udp --dport 53 -j ACCEPT # UDP DNS\nsudo iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT # TCP DNS (nadiren de olsa kullan\u0131l\u0131r)\n\n<h2>Gerekirse NTP (zaman senkronizasyonu) i\u00e7in izin ver<\/h2>\nsudo iptables -A OUTPUT -p udp --dport 123 -j ACCEPT\n<\/code><\/pre>\n<h4>\u0130\u00e7 A\u011f Trafi\u011fi \u0130\u00e7in Kurallar (\u00d6rnek: SERVER_DB \u00fczerinde)<\/h4>\n<p>\u015eimdi <code>SERVER_DB<\/code> (192.168.1.20) \u00fczerinde, sadece <code>SERVER_WEB<\/code> (192.168.1.10) ve y\u00f6netici i\u015f istasyonu (10.0.0.50) taraf\u0131ndan eri\u015filmesine izin verecek kurallar\u0131 tan\u0131mlayal\u0131m.<\/p>\n<pre><code class=\"language-bash\">\n<h2>SERVER_DB (192.168.1.20) i\u00e7in kurallar:<\/h2>\n\n<h2>SERVER_WEB'den (192.168.1.10) gelen MySQL (3306) ba\u011flant\u0131lar\u0131na izin ver<\/h2>\nsudo iptables -A INPUT -s 192.168.1.10 -p tcp --dport 3306 -j ACCEPT\n\n<h2>Y\u00f6netici i\u015f istasyonundan (10.0.0.50) gelen SSH (22) ba\u011flant\u0131lar\u0131na izin ver<\/h2>\n<h2>Bu kural\u0131 ba\u015flang\u0131\u00e7 ayarlar\u0131na eklemi\u015f olmal\u0131s\u0131n\u0131z, burada tekrar etmekte fayda var.<\/h2>\nsudo iptables -A INPUT -s 10.0.0.50 -p tcp --dport 22 -j ACCEPT\n\n<h2>Kendi i\u00e7 a\u011f\u0131ndaki di\u011fer sunuculardan gelen \u00f6zel trafi\u011fe izin ver (\u00f6rne\u011fin, bir yedekleme sunucusu)<\/h2>\n<h2>sudo iptables -A INPUT -s 192.168.1.40 -p tcp --dport 873 -j ACCEPT # rsync portu<\/h2>\n<\/code><\/pre>\n<h4>D\u0131\u015f A\u011fdan Gelen Trafi\u011fi Y\u00f6netme<\/h4>\n<p>E\u011fer sunucular\u0131n\u0131z d\u0131\u015f a\u011fa do\u011frudan ba\u011fl\u0131ysa veya d\u0131\u015f d\u00fcnyadan eri\u015filebilir olmas\u0131 gereken hizmetler sunuyorsa, <code>INPUT<\/code> zincirinde bu trafi\u011fe izin vermeniz gerekir. Ancak, sunucular aras\u0131 trafik i\u00e7in genellikle i\u00e7 a\u011f IP&#8217;leri kullan\u0131l\u0131r ve d\u0131\u015far\u0131dan gelen gereksiz t\u00fcm ba\u011flant\u0131lar engellenmelidir.<\/p>\n<p>\u00d6rnek (<code>SERVER_WEB<\/code> \u00fczerinde, d\u0131\u015far\u0131dan HTTP\/HTTPS trafi\u011fine izin vermek i\u00e7in):<\/p>\n<pre><code class=\"language-bash\">\n<h2>Daha \u00f6nce eklemi\u015f olmal\u0131s\u0131n\u0131z:<\/h2>\nsudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT\nsudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT\n\n<h2>D\u0131\u015far\u0131dan gelen herhangi bir SSH ba\u011flant\u0131s\u0131n\u0131 engelle (sadece belirli admin IP'lerinden izin ver)<\/h2>\n<h2>Bu kural, varsay\u0131lan DROP politikas\u0131 ve belirli admin IP'sinden gelen SSH kural\u0131 ile zaten sa\u011flan\u0131r.<\/h2>\n<h2>Ancak a\u00e7\u0131k\u00e7a engellemek isterseniz:<\/h2>\n<h2>sudo iptables -A INPUT -p tcp --dport 22 -j DROP<\/h2>\n<\/code><\/pre>\n<h4>Loglama ve \u0130zleme<\/h4>\n<p>G\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131z\u0131n do\u011fru \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 ve yetkisiz eri\u015fim denemelerini izlemek i\u00e7in loglama kritik \u00f6neme sahiptir. <code>LOG<\/code> hedefi, e\u015fle\u015fen paketlerin bilgilerini sistem g\u00fcnl\u00fc\u011f\u00fcne (genellikle <code>\/var\/log\/syslog<\/code> veya <code>\/var\/log\/kern.log<\/code>) kaydeder.<\/p>\n<p>Engellenen paketleri loglamak i\u00e7in <code>DROP<\/code> kural\u0131ndan hemen \u00f6nce bir <code>LOG<\/code> kural\u0131 ekleyebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">\n<h2>INPUT zincirinde engellenen paketleri logla (log prefix ile)<\/h2>\nsudo iptables -A INPUT -m limit --limit 5\/min -j LOG --log-prefix \"IPTABLES_INPUT_DROP: \" --log-level 7\nsudo iptables -A INPUT -j DROP # Bu, varsay\u0131lan DROP politikas\u0131na ek bir DROP kural\u0131d\u0131r,\n                               # ancak belirli bir zincir sonuna eklenerek loglamay\u0131 garanti eder.\n<\/code><\/pre>\n<p><code>-m limit --limit 5\/min<\/code> se\u00e7ene\u011fi, \u00e7ok say\u0131da log kayd\u0131n\u0131n olu\u015fmas\u0131n\u0131 \u00f6nlemek i\u00e7in dakikada maksimum 5 log giri\u015fi s\u0131n\u0131rlar.<\/p>\n<h4>Kal\u0131c\u0131 Hale Getirme<\/h4>\n<p>Iptables kurallar\u0131 varsay\u0131lan olarak ge\u00e7icidir ve sunucu yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda kaybolur. Kurallar\u0131 kal\u0131c\u0131 hale getirmenin birka\u00e7 yolu vard\u0131r:<\/p>\n<h5>Debian\/Ubuntu Tabanl\u0131 Sistemlerde (<code>iptables-persistent<\/code>)<\/h5>\n<pre><code class=\"language-bash\">\n<h2>Kurulum<\/h2>\nsudo apt update\nsudo apt install iptables-persistent\n\n<h2>Mevcut kurallar\u0131 kaydet<\/h2>\nsudo netfilter-persistent save\n\n<h2>Kurallar\u0131 y\u00fcklemek i\u00e7in (yeniden ba\u015flatmada otomatik yap\u0131l\u0131r)<\/h2>\nsudo netfilter-persistent reload\n<\/code><\/pre>\n<p>Kurallar <code>\/etc\/iptables\/rules.v4<\/code> ve <code>\/etc\/iptables\/rules.v6<\/code> dosyalar\u0131na kaydedilir.<\/p>\n<h5>RHEL\/CentOS Tabanl\u0131 Sistemlerde (<code>iptables-services<\/code>)<\/h5>\n<pre><code class=\"language-bash\">\n<h2>Kurulum<\/h2>\nsudo yum install iptables-services\n\n<h2>Iptables servisini etkinle\u015ftir<\/h2>\nsudo systemctl enable iptables\n\n<h2>Mevcut kurallar\u0131 kaydet<\/h2>\nsudo iptables-save > \/etc\/sysconfig\/iptables\n\n<h2>Kurallar\u0131 yeniden y\u00fcklemek i\u00e7in<\/h2>\nsudo systemctl restart iptables\n<\/code><\/pre>\n<h5>Manuel Kaydetme\/Y\u00fckleme (T\u00fcm Linux Da\u011f\u0131t\u0131mlar\u0131)<\/h5>\n<p>Kurallar\u0131 bir dosyaya kaydedip, sunucu ba\u015flat\u0131ld\u0131\u011f\u0131nda bu dosyay\u0131 bir ba\u015flang\u0131\u00e7 beti\u011fi (\u00f6rne\u011fin, <code>\/etc\/rc.local<\/code> veya systemd service) ile y\u00fckleyebilirsiniz.<\/p>\n<pre><code class=\"language-bash\">\n<h2>Kurallar\u0131 kaydet<\/h2>\nsudo iptables-save > \/etc\/iptables\/rules.v4\n\n<h2>Kurallar\u0131 y\u00fckle<\/h2>\nsudo iptables-restore < \/etc\/iptables\/rules.v4\n<\/code><\/pre>\n<h3>Sonu\u00e7<\/h3>\n<p>Iptables ile sunucular aras\u0131 trafi\u011fi korumak, a\u011f g\u00fcvenli\u011finiz i\u00e7in proaktif ve g\u00fc\u00e7l\u00fc bir ad\u0131md\u0131r. Bu rehberde \u00f6\u011frendi\u011finiz temelleri ve pratik \u00f6rnekleri uygulayarak, sunucular\u0131n\u0131z\u0131n yaln\u0131zca gerekli ve g\u00fcvenilir ileti\u015fim kanallar\u0131n\u0131 kullanmas\u0131n\u0131 sa\u011flayabilirsiniz. Unutmay\u0131n ki g\u00fcvenlik duvar\u0131 kurallar\u0131 \"bir kere ayarla ve unut\" yakla\u015f\u0131m\u0131yla de\u011fil, s\u00fcrekli g\u00f6zden ge\u00e7irilerek ve ihtiya\u00e7lara g\u00f6re g\u00fcncellenerek en etkili \u015fekilde \u00e7al\u0131\u015f\u0131r. Sistemlerinizdeki de\u011fi\u015fiklikleri takip edin, yeni hizmetler eklendi\u011finde veya mevcut hizmetlerin portlar\u0131 de\u011fi\u015fti\u011finde g\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131z\u0131 g\u00fcncellemeyi ihmal etmeyin.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<h4>Iptables ve UFW\/firewalld aras\u0131ndaki fark nedir?<\/h4>\n<p>Iptables, Linux \u00e7ekirde\u011finin Netfilter \u00e7er\u00e7evesiyle do\u011frudan etkile\u015fime giren d\u00fc\u015f\u00fck seviyeli bir ara\u00e7t\u0131r. UFW (Uncomplicated Firewall) ve firewalld ise Iptables'\u0131n \u00fczerinde \u00e7al\u0131\u015fan, kullan\u0131m\u0131 daha kolay aray\u00fczlerdir. UFW genellikle Debian\/Ubuntu tabanl\u0131 sistemlerde, firewalld ise RHEL\/CentOS tabanl\u0131 sistemlerde kullan\u0131l\u0131r. Bu ara\u00e7lar, karma\u015f\u0131k Iptables komutlar\u0131n\u0131 daha basit komutlara veya b\u00f6lgelere d\u00f6n\u00fc\u015ft\u00fcrerek y\u00f6netimi kolayla\u015ft\u0131r\u0131r. Temelde hepsi Iptables'\u0131 kullan\u0131r, ancak farkl\u0131 y\u00f6netim seviyeleri sunarlar. Daha ince ayar ve tam kontrol i\u00e7in Iptables'\u0131 do\u011frudan kullanmak tercih edilebilir.<\/p>\n<h4>Kurallar\u0131m \u00e7al\u0131\u015fm\u0131yor, nas\u0131l hata ay\u0131klayabilirim?<\/h4>\n<p>Hata ay\u0131klama i\u00e7in birka\u00e7 y\u00f6ntem vard\u0131r:<\/p>\n<ol>\n<li><strong><code>iptables -L -n -v<\/code>:<\/strong> Mevcut kurallar\u0131, paket ve bayt say\u0131lar\u0131yla birlikte listeler. Hangi kurallar\u0131n paketlerle e\u015fle\u015fti\u011fini g\u00f6rmenizi sa\u011flar.<\/li>\n<li><strong>Loglama Kurallar\u0131:<\/strong> \u015e\u00fcpheli trafik ak\u0131\u015flar\u0131n\u0131n \u00f6n\u00fcne <code>LOG<\/code> kurallar\u0131 ekleyerek, paketin nereye tak\u0131ld\u0131\u011f\u0131n\u0131 veya hangi kural taraf\u0131ndan engellendi\u011fini g\u00f6rebilirsiniz.<\/li>\n<li><strong>Ge\u00e7ici olarak Kural Kald\u0131rma:<\/strong> Sorunlu olabilece\u011finden \u015f\u00fcphelendi\u011finiz kurallar\u0131 tek tek kald\u0131rarak veya zincir politikalar\u0131n\u0131 ge\u00e7ici olarak <code>ACCEPT<\/code> yaparak sorunun kayna\u011f\u0131n\u0131 daraltabilirsiniz.<\/li>\n<li><strong>A\u011f \u0130zleme Ara\u00e7lar\u0131:<\/strong> <code>tcpdump<\/code> veya <code>wireshark<\/code> gibi ara\u00e7larla a\u011f aray\u00fcz\u00fcndeki trafi\u011fi dinleyerek, paketlerin Iptables'a ula\u015fmadan \u00f6nce veya sonra nas\u0131l davrand\u0131\u011f\u0131n\u0131 g\u00f6zlemleyebilirsiniz.<\/li>\n<\/ol>\n<h4>T\u00fcm Iptables kurallar\u0131n\u0131 nas\u0131l temizlerim?<\/h4>\n<p>T\u00fcm kurallar\u0131 temizlemek ve varsay\u0131lan politikalar\u0131 <code>ACCEPT<\/code> olarak s\u0131f\u0131rlamak i\u00e7in \u015fu komutlar\u0131 kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">\nsudo iptables -P INPUT ACCEPT\nsudo iptables -P FORWARD ACCEPT\nsudo iptables -P OUTPUT ACCEPT\nsudo iptables -F\nsudo iptables -X\nsudo iptables -Z\n<\/code><\/pre>\n<p>Bu komutlar, g\u00fcvenlik duvar\u0131n\u0131 tamamen a\u00e7ar. Bu i\u015flemi sadece hata ay\u0131klama s\u0131ras\u0131nda veya acil durumlarda yapmal\u0131 ve ard\u0131ndan g\u00fcvenli kurallar\u0131n\u0131z\u0131 tekrar y\u00fcklemelisiniz.<\/p>\n<h4>Iptables'\u0131 kapatabilir miyim?<\/h4>\n<p>Iptables, Linux \u00e7ekirde\u011finin bir par\u00e7as\u0131 oldu\u011fu i\u00e7in tamamen \"kapat\u0131lamaz\". Ancak, t\u00fcm zincirlerin varsay\u0131lan politikalar\u0131n\u0131 <code>ACCEPT<\/code> olarak ayarlayarak ve t\u00fcm kurallar\u0131 temizleyerek g\u00fcvenlik duvar\u0131 i\u015flevselli\u011fini etkili bir \u015fekilde devre d\u0131\u015f\u0131 b\u0131rakabilirsiniz. Bu, sunucunuzu t\u00fcm a\u011f trafi\u011fine a\u00e7\u0131k hale getirece\u011fi i\u00e7in kesinlikle \u00f6nerilmez.<\/p>\n<h4>Sunucular aras\u0131 HTTPS trafi\u011fini nas\u0131l korurum?<\/h4>\n<p>Sunucular aras\u0131 HTTPS (port 443) trafi\u011fini korumak i\u00e7in, t\u0131pk\u0131 di\u011fer portlarda oldu\u011fu gibi, kaynak ve hedef IP adreslerini belirterek <code>INPUT<\/code> ve <code>OUTPUT<\/code> zincirlerinde kurallar tan\u0131mlaman\u0131z gerekir. \u00d6rne\u011fin, bir \u00f6n u\u00e7 web sunucunuzun bir arka u\u00e7 API sunucusuna HTTPS \u00fczerinden ba\u011flanmas\u0131na izin vermek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">\n<h2>\u00d6n u\u00e7 web sunucusu (192.168.1.10) \u00fczerinde:<\/h2>\nsudo iptables -A OUTPUT -d 192.168.1.30 -p tcp --dport 443 -j ACCEPT\n\n<h2>Arka u\u00e7 API sunucusu (192.168.1.30) \u00fczerinde:<\/h2>\nsudo iptables -A INPUT -s 192.168.1.10 -p tcp --dport 443 -j ACCEPT\n<\/code><\/pre>\n<p>Bu kurallar, trafi\u011fi \u015fifrelemenin \u00f6tesinde, hangi sunucular\u0131n hangi sunucularla HTTPS \u00fczerinden konu\u015fabilece\u011fini k\u0131s\u0131tlar ve b\u00f6ylece g\u00fcvenlik katman\u0131n\u0131 art\u0131r\u0131r.<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu\nModern altyap\u0131larda, sunucular aras\u0131 ileti\u015fim hayati \u00f6neme sahipti","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-35560","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu\" \/>\n<meta property=\"og:description\" content=\"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu Modern altyap\u0131larda, sunucular aras\u0131 ileti\u015fim hayati \u00f6neme sahipti\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-01T01:41:35+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu\",\"datePublished\":\"2025-12-01T01:41:35+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/\"},\"wordCount\":1669,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/\",\"name\":\"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-12-01T01:41:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/","og_locale":"tr_TR","og_type":"article","og_title":"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu","og_description":"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu Modern altyap\u0131larda, sunucular aras\u0131 ileti\u015fim hayati \u00f6neme sahipti","og_url":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-12-01T01:41:35+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"13 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu","datePublished":"2025-12-01T01:41:35+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/"},"wordCount":1669,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/","url":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/","name":"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-12-01T01:41:35+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/sunucular-arasi-trafigi-korumak-icin-iptables-guvenlik-duvari-kurulumu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Sunucular Aras\u0131 Trafi\u011fi Korumak \u0130\u00e7in Iptables G\u00fcvenlik Duvar\u0131 Kurulumu"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35560","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=35560"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35560\/revisions"}],"predecessor-version":[{"id":35561,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/35560\/revisions\/35561"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=35560"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=35560"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=35560"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}