{"id":41158,"date":"2026-03-04T00:40:39","date_gmt":"2026-03-03T21:40:39","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=41158"},"modified":"2026-03-04T00:40:39","modified_gmt":"2026-03-03T21:40:39","slug":"centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/","title":{"rendered":"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131"},"content":{"rendered":"<p><body><\/p>\n<h2>CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131<\/h2>\n<p>Da\u011f\u0131t\u0131k sistemler ve konteyner teknolojileri g\u00fcn\u00fcm\u00fcz\u00fcn modern uygulama mimarilerinin temel ta\u015flar\u0131ndan biri haline gelmi\u015ftir. Docker Swarm, bu teknolojilerin en pop\u00fcler orkestrasyon ara\u00e7lar\u0131ndan biridir ve birden fazla sunucu \u00fczerinde konteynerize edilmi\u015f uygulamalar\u0131n da\u011f\u0131t\u0131m\u0131n\u0131, \u00f6l\u00e7eklendirilmesini ve y\u00f6netimini kolayla\u015ft\u0131r\u0131r. Ancak, bu t\u00fcr da\u011f\u0131t\u0131k sistemlerin g\u00fcvende olmas\u0131, \u00f6zellikle d\u0131\u015f d\u00fcnyaya a\u00e7\u0131k portlar\u0131n ve a\u011f trafi\u011finin do\u011fru bir \u015fekilde y\u00f6netilmesiyle m\u00fcmk\u00fcnd\u00fcr. CentOS 7 i\u015fletim sistemi, varsay\u0131lan olarak <code>firewalld<\/code> ad\u0131nda g\u00fc\u00e7l\u00fc bir g\u00fcvenlik duvar\u0131 servisi ile gelir. Bu makalede, CentOS 7 \u00fczerinde \u00e7al\u0131\u015fan bir Docker Swarm k\u00fcmesi i\u00e7in <code>firewalld<\/code>&#8216;\u0131 nas\u0131l yap\u0131land\u0131raca\u011f\u0131m\u0131z\u0131, gerekli portlar\u0131 nas\u0131l a\u00e7aca\u011f\u0131m\u0131z\u0131 ve g\u00fcvenlik en iyi uygulamalar\u0131n\u0131 nas\u0131l uygulayaca\u011f\u0131m\u0131z\u0131 detayl\u0131 bir \u015fekilde inceleyece\u011fiz.<\/p>\n<h3>Docker Swarm Temelleri ve A\u011f Mimarisi<\/h3>\n<p>Docker Swarm, Docker motorlar\u0131n\u0131n yerel k\u00fcmeleme \u00f6zelli\u011fidir. Bir Swarm k\u00fcmesi, y\u00f6netici (manager) ve \u00e7al\u0131\u015fan (worker) d\u00fc\u011f\u00fcmlerden olu\u015fur. Y\u00f6netici d\u00fc\u011f\u00fcmler, k\u00fcmenin durumunu korur, g\u00f6revleri planlar ve worker d\u00fc\u011f\u00fcmlerin sa\u011fl\u0131kl\u0131 \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar. Worker d\u00fc\u011f\u00fcmler ise uygulamalar\u0131n \u00e7al\u0131\u015ft\u0131r\u0131ld\u0131\u011f\u0131 yerlerdir. Swarm&#8217;\u0131n d\u00fczg\u00fcn \u00e7al\u0131\u015fabilmesi i\u00e7in d\u00fc\u011f\u00fcmler aras\u0131nda belirli portlar \u00fczerinden ileti\u015fim kurulmas\u0131 gerekmektedir.<\/p>\n<h4>Swarm K\u00fcmesi Bile\u015fenleri ve \u0130leti\u015fim Portlar\u0131<\/h4>\n<p>Swarm k\u00fcmesindeki d\u00fc\u011f\u00fcmler, kendi aralar\u0131nda g\u00fcvenli ve verimli bir \u015fekilde ileti\u015fim kurmak i\u00e7in belirli portlar\u0131 kullan\u0131r:<\/p>\n<p>*   <strong>TCP 2377 (Swarm Y\u00f6netim Portu):<\/strong> Swarm y\u00f6neticisi d\u00fc\u011f\u00fcmlerinin birbirleriyle ileti\u015fim kurdu\u011fu ve Swarm CLI komutlar\u0131n\u0131n y\u00f6netici d\u00fc\u011f\u00fcmlerine g\u00f6nderildi\u011fi porttur. Bu port, yaln\u0131zca y\u00f6netici d\u00fc\u011f\u00fcmler aras\u0131nda ve Swarm CLI&#8217;y\u0131 \u00e7al\u0131\u015ft\u0131ran g\u00fcvenilir makinelerden eri\u015filebilir olmal\u0131d\u0131r.<br \/>\n*   <strong>TCP 7946 ve UDP 7946 (Kapsay\u0131c\u0131 A\u011f Ke\u015ffi):<\/strong> T\u00fcm Swarm d\u00fc\u011f\u00fcmleri (hem y\u00f6netici hem de \u00e7al\u0131\u015fan) bu portlar\u0131, di\u011fer d\u00fc\u011f\u00fcmlerin IP adreslerini ve durumlar\u0131n\u0131 ke\u015ffetmek i\u00e7in kullan\u0131r. Bu portlar, Swarm k\u00fcmesindeki t\u00fcm d\u00fc\u011f\u00fcmler aras\u0131nda a\u00e7\u0131k olmal\u0131d\u0131r.<br \/>\n*   <strong>UDP 4789 (Overlay A\u011f Veri Yolu &#8211; VXLAN):<\/strong> Docker&#8217;\u0131n overlay a\u011f s\u00fcr\u00fcc\u00fcs\u00fc taraf\u0131ndan kullan\u0131lan porttur. Bu, konteynerler aras\u0131nda a\u011f trafi\u011finin ta\u015f\u0131nmas\u0131n\u0131 sa\u011flar ve servislerin k\u00fcme genelinde ileti\u015fim kurmas\u0131na olanak tan\u0131r. Bu port da t\u00fcm Swarm d\u00fc\u011f\u00fcmleri aras\u0131nda a\u00e7\u0131k olmal\u0131d\u0131r.<\/p>\n<p>Bu temel portlara ek olarak, Docker uygulamalar\u0131n\u0131z\u0131n d\u0131\u015f d\u00fcnyaya a\u00e7\u0131lmas\u0131 gereken portlar da olacakt\u0131r (\u00f6rne\u011fin, bir web sunucusu i\u00e7in 80\/TCP ve 443\/TCP). Bu portlar, uygulaman\u0131z\u0131n t\u00fcr\u00fcne ve gereksinimlerine g\u00f6re de\u011fi\u015fir.<\/p>\n<h3>CentOS 7 ve Firewalld&#8217;a Genel Bak\u0131\u015f<\/h3>\n<p>CentOS 7, varsay\u0131lan g\u00fcvenlik duvar\u0131 olarak <code>firewalld<\/code> servisini kullan\u0131r. <code>firewalld<\/code>, <code>iptables<\/code>&#8216;\u0131n bir soyutlama katman\u0131 olup, dinamik bir g\u00fcvenlik duvar\u0131 y\u00f6netimi sa\u011flar. Bu, kurallar\u0131 yeniden y\u00fcklemek i\u00e7in g\u00fcvenlik duvar\u0131n\u0131 tamamen kapat\u0131p a\u00e7maya gerek kalmadan de\u011fi\u015fiklik yapabilece\u011finiz anlam\u0131na gelir. <code>firewalld<\/code>, &#8220;b\u00f6lgeler&#8221; (zones) kavram\u0131n\u0131 kullanarak a\u011f aray\u00fczlerini ve kaynak IP&#8217;leri farkl\u0131 g\u00fcvenlik seviyelerine ay\u0131rman\u0131za olanak tan\u0131r.<\/p>\n<h4>Firewalld B\u00f6lgeleri ve Servisleri<\/h4>\n<p>*   <strong>B\u00f6lgeler (Zones):<\/strong> <code>firewalld<\/code>, farkl\u0131 g\u00fcven seviyelerini temsil eden \u00f6nceden tan\u0131mlanm\u0131\u015f b\u00f6lgelere sahiptir (\u00f6rn. <code>public<\/code>, <code>home<\/code>, <code>internal<\/code>, <code>trusted<\/code>, <code>drop<\/code>). Her b\u00f6lge, belirli bir a\u011f aray\u00fcz\u00fcne veya kaynak IP adresine atanabilir ve kendi kurallar k\u00fcmesine sahip olabilir. Varsay\u0131lan olarak, \u00e7o\u011fu d\u0131\u015fa d\u00f6n\u00fck aray\u00fcz <code>public<\/code> b\u00f6lgesine atan\u0131r.<br \/>\n*   <strong>Servisler (Services):<\/strong> <code>firewalld<\/code>, HTTP, HTTPS, SSH gibi yayg\u0131n servisler i\u00e7in \u00f6nceden tan\u0131mlanm\u0131\u015f kurallar i\u00e7erir. Bu servisleri kullanarak port numaralar\u0131n\u0131 ezberlemek yerine isimleriyle g\u00fcvenlik duvar\u0131 kurallar\u0131 ekleyebilirsiniz.<br \/>\n*   <strong>Portlar (Ports):<\/strong> Belirli TCP veya UDP portlar\u0131n\u0131 do\u011frudan a\u00e7abilirsiniz.<br \/>\n*   <strong>Zengin Kurallar (Rich Rules):<\/strong> Daha karma\u015f\u0131k senaryolar i\u00e7in, kaynak IP k\u0131s\u0131tlamalar\u0131, g\u00fcnl\u00fck kayd\u0131 veya port y\u00f6nlendirme gibi geli\u015fmi\u015f \u00f6zellikler sa\u011flayan &#8220;zengin kurallar&#8221; kullanabilirsiniz.<\/p>\n<h4>Firewalld Komutlar\u0131n\u0131n Temelleri<\/h4>\n<p><code>firewall-cmd<\/code> komutu, <code>firewalld<\/code> ile etkile\u015fim kurmak i\u00e7in kullan\u0131lan ana ara\u00e7t\u0131r.<\/p>\n<p>*   <code>firewall-cmd --get-active-zones<\/code>: Hangi b\u00f6lgelerin aktif oldu\u011funu g\u00f6sterir.<br \/>\n*   <code>firewall-cmd --list-all --zone=public<\/code>: <code>public<\/code> b\u00f6lgesindeki t\u00fcm kurallar\u0131 listeler.<br \/>\n*   <code>firewall-cmd --add-port=PORT\/protocol --permanent<\/code>: Belirli bir portu kal\u0131c\u0131 olarak a\u00e7ar.<br \/>\n*   <code>firewall-cmd --add-service=SERVICE --permanent<\/code>: Belirli bir servisi kal\u0131c\u0131 olarak a\u00e7ar.<br \/>\n*   <code>firewall-cmd --reload<\/code>: Kal\u0131c\u0131 kurallar\u0131 y\u00fckler ve g\u00fcvenlik duvar\u0131n\u0131 yeniden yap\u0131land\u0131r\u0131r.<br \/>\n*   <code>firewall-cmd --permanent --remove-port=PORT\/protocol<\/code>: Kal\u0131c\u0131 bir port kural\u0131n\u0131 kald\u0131r\u0131r.<\/p>\n<p>Unutmay\u0131n, <code>firewall-cmd<\/code> komutlar\u0131yla yap\u0131lan de\u011fi\u015fikliklerin kal\u0131c\u0131 olmas\u0131 i\u00e7in <code>--permanent<\/code> bayra\u011f\u0131n\u0131 kullanmal\u0131 ve ard\u0131ndan <code>firewall-cmd --reload<\/code> komutunu \u00e7al\u0131\u015ft\u0131rmal\u0131s\u0131n\u0131z. <code>--permanent<\/code> bayra\u011f\u0131 kullan\u0131lmazsa, kurallar yaln\u0131zca bir sonraki <code>firewalld<\/code> yeniden ba\u015flat\u0131lmas\u0131na veya sistemin yeniden ba\u015flat\u0131lmas\u0131na kadar ge\u00e7erli olur.<\/p>\n<h3>G\u00fcvenlik \u0130lkeleri ve En \u0130yi Uygulamalar<\/h3>\n<p>Bir Docker Swarm k\u00fcmesini g\u00fcvence alt\u0131na al\u0131rken dikkate alman\u0131z gereken baz\u0131 temel g\u00fcvenlik ilkeleri ve en iyi uygulamalar \u015funlard\u0131r:<\/p>\n<p>*   <strong>En Az Ayr\u0131cal\u0131k Prensibi:<\/strong> Yaln\u0131zca kesinlikle gerekli olan portlar\u0131 a\u00e7\u0131n. Her a\u00e7\u0131k port, potansiyel bir g\u00fcvenlik a\u00e7\u0131\u011f\u0131d\u0131r.<br \/>\n*   <strong>\u0130\u00e7 ve D\u0131\u015f A\u011f Ayr\u0131m\u0131:<\/strong> Swarm k\u00fcmenizin d\u00fc\u011f\u00fcmleri aras\u0131ndaki ileti\u015fimi (y\u00f6netim ve overlay a\u011f trafi\u011fi) d\u0131\u015f d\u00fcnyadan izole edin. M\u00fcmk\u00fcnse, bu trafi\u011fi \u00f6zel bir a\u011f aray\u00fcz\u00fc veya VLAN \u00fczerinden y\u00f6nlendirin.<br \/>\n*   <strong>Kaynak IP K\u0131s\u0131tlamalar\u0131:<\/strong> Y\u00f6netim portlar\u0131 gibi hassas portlara eri\u015fimi, yaln\u0131zca g\u00fcvenilir IP adresleriyle k\u0131s\u0131tlay\u0131n. \u00d6rne\u011fin, Swarm y\u00f6netim portu (2377\/TCP) sadece di\u011fer y\u00f6netici d\u00fc\u011f\u00fcmlerden ve y\u00f6netim istasyonunuzdan eri\u015filebilir olmal\u0131d\u0131r.<br \/>\n*   <strong>G\u00fcvenli Y\u00f6netim:<\/strong> Docker Swarm CLI&#8217;ya eri\u015fimi VPN veya SSH t\u00fcnelleme gibi g\u00fcvenli kanallar \u00fczerinden yapmay\u0131 d\u00fc\u015f\u00fcn\u00fcn.<\/p>\n<h3>Docker Swarm i\u00e7in Gerekli Portlar\u0131 Firewalld ile Yap\u0131land\u0131rma<\/h3>\n<p>\u015eimdi, Docker Swarm k\u00fcmeniz i\u00e7in <code>firewalld<\/code>&#8216;\u0131 nas\u0131l yap\u0131land\u0131raca\u011f\u0131m\u0131z\u0131 ad\u0131m ad\u0131m inceleyelim. Bu ad\u0131mlar\u0131 her bir Swarm d\u00fc\u011f\u00fcm\u00fcnde, rol\u00fcne (y\u00f6netici veya \u00e7al\u0131\u015fan) g\u00f6re uygulaman\u0131z gerekecektir.<\/p>\n<h4>\u00d6n Haz\u0131rl\u0131k<\/h4>\n<p>Her \u015feyden \u00f6nce, <code>firewalld<\/code> servisinin \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status firewalld<\/code><\/pre>\n<p>E\u011fer \u00e7al\u0131\u015fm\u0131yorsa veya devre d\u0131\u015f\u0131 b\u0131rak\u0131lm\u0131\u015fsa, ba\u015flat\u0131n ve \u00f6ny\u00fcklemede otomatik ba\u015flamas\u0131 i\u00e7in etkinle\u015ftirin:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl start firewalld\nsudo systemctl enable firewalld<\/code><\/pre>\n<p>CentOS 7&#8217;de varsay\u0131lan b\u00f6lge genellikle <code>public<\/code>&#8216;tir. Bu makalede, <code>public<\/code> b\u00f6lgesini kullanaca\u011f\u0131z. E\u011fer farkl\u0131 bir b\u00f6lge kullan\u0131yorsan\u0131z, komutlara <code>--zone=your_zone_name<\/code> eklemeniz gerekecektir.<\/p>\n<h4>1. Swarm Y\u00f6netim Portu (Manager D\u00fc\u011f\u00fcmler \u0130\u00e7in)<\/h4>\n<p>Sadece y\u00f6netici d\u00fc\u011f\u00fcmlerinde, Swarm y\u00f6netim portu olan TCP 2377&#8217;yi a\u00e7\u0131n. Bu port, di\u011fer y\u00f6netici d\u00fc\u011f\u00fcmlerin ve Swarm CLI&#8217;dan gelen komutlar\u0131n al\u0131nmas\u0131 i\u00e7in kullan\u0131l\u0131r.<\/p>\n<p><strong>T\u00fcm Swarm Y\u00f6neticileri Aras\u0131 \u0130leti\u015fim \u0130\u00e7in:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --add-port=2377\/tcp --permanent<\/code><\/pre>\n<p><strong>Daha G\u00fcvenli Bir Yakla\u015f\u0131m (Sadece Belirli IP&#8217;lerden Eri\u015fim):<\/strong><br \/>\nE\u011fer Swarm y\u00f6neticisi d\u00fc\u011f\u00fcmlerinizin IP adresleri belirli bir aral\u0131kta ise (\u00f6rne\u011fin, 192.168.1.0\/24), bu portu yaln\u0131zca o aral\u0131ktan gelen trafi\u011fe a\u00e7mak daha g\u00fcvenlidir.<\/p>\n<pre><code class=\"language-bash\"># Sadece belirli bir IP adresinden eri\u015fime izin vermek i\u00e7in\nsudo firewall-cmd --add-rich-rule='rule family=\"ipv4\" source address=\"192.168.1.10\" port port=\"2377\" protocol=\"tcp\" accept' --permanent\n\n<h2>Sadece belirli bir a\u011f aral\u0131\u011f\u0131ndan eri\u015fime izin vermek i\u00e7in<\/h2>\nsudo firewall-cmd --add-rich-rule='rule family=\"ipv4\" source address=\"192.168.1.0\/24\" port port=\"2377\" protocol=\"tcp\" accept' --permanent<\/code><\/pre>\n<p>Bu kural\u0131, Swarm y\u00f6neticisi d\u00fc\u011f\u00fcmlerinizin IP&#8217;lerini veya y\u00f6netim istasyonunuzun IP&#8217;sini i\u00e7erecek \u015fekilde \u00f6zelle\u015ftirin.<\/p>\n<h4>2. Kapsay\u0131c\u0131 A\u011f Ke\u015fif Portlar\u0131 (T\u00fcm Swarm D\u00fc\u011f\u00fcmleri \u0130\u00e7in)<\/h4>\n<p>T\u00fcm Swarm d\u00fc\u011f\u00fcmlerinde (hem y\u00f6netici hem de \u00e7al\u0131\u015fan), TCP 7946 ve UDP 7946 portlar\u0131n\u0131 a\u00e7\u0131n. Bu portlar, d\u00fc\u011f\u00fcmlerin birbirlerini ke\u015ffetmesi ve k\u00fcme durumunu senkronize etmesi i\u00e7in gereklidir.<\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --add-port=7946\/tcp --permanent\nsudo firewall-cmd --add-port=7946\/udp --permanent<\/code><\/pre>\n<h4>3. Overlay A\u011f Veri Yolu Portu (T\u00fcm Swarm D\u00fc\u011f\u00fcmleri \u0130\u00e7in)<\/h4>\n<p>T\u00fcm Swarm d\u00fc\u011f\u00fcmlerinde, overlay a\u011f trafi\u011fi i\u00e7in kullan\u0131lan UDP 4789 portunu a\u00e7\u0131n. Bu port, Docker servislerinin konteynerleri aras\u0131nda ileti\u015fimi sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --add-port=4789\/udp --permanent<\/code><\/pre>\n<h4>4. Uygulama Portlar\u0131 (Uygulaman\u0131z\u0131n \u0130htiyac\u0131na G\u00f6re)<\/h4>\n<p>Uygulamalar\u0131n\u0131z\u0131n d\u0131\u015far\u0131dan eri\u015filebilir olmas\u0131 i\u00e7in gereken portlar\u0131 a\u00e7man\u0131z gerekecektir. \u00d6rne\u011fin, bir web uygulaman\u0131z varsa ve HTTP (80\/TCP) ile HTTPS (443\/TCP) kullan\u0131yorsa:<\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --add-service=http --permanent\nsudo firewall-cmd --add-service=https --permanent<\/code><\/pre>\n<p>Veya belirli bir \u00f6zel port kullan\u0131yorsan\u0131z:<\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --add-port=8080\/tcp --permanent<\/code><\/pre>\n<p>Bu portlar\u0131, genellikle Swarm k\u00fcmenizin d\u0131\u015f d\u00fcnyaya a\u00e7\u0131k olan y\u00f6netici veya belirli \u00e7al\u0131\u015fan d\u00fc\u011f\u00fcmlerinde a\u00e7man\u0131z gerekir. Docker Swarm&#8217;\u0131n <code>ingress<\/code> a\u011f\u0131n\u0131 kullan\u0131yorsan\u0131z, bu portlar\u0131 t\u00fcm y\u00f6netici d\u00fc\u011f\u00fcmlerinde a\u00e7mak en iyisidir, \u00e7\u00fcnk\u00fc <code>ingress<\/code> y\u00f6nlendirme t\u00fcm y\u00f6netici d\u00fc\u011f\u00fcmleri \u00fczerinden \u00e7al\u0131\u015f\u0131r.<\/p>\n<h4>5. Docker Daemon Uzaktan Eri\u015fim Portu (\u0130ste\u011fe Ba\u011fl\u0131 ve G\u00fcvenlik Riski \u0130\u00e7erir)<\/h4>\n<p>Docker daemon&#8217;a uzaktan eri\u015fmek i\u00e7in genellikle TCP 2375 (\u015fifresiz) veya TCP 2376 (TLS ile) portlar\u0131 kullan\u0131l\u0131r. Ancak, bu portlar\u0131 do\u011frudan internete a\u00e7mak <strong>\u015fiddetle tavsiye edilmez<\/strong> ve b\u00fcy\u00fck bir g\u00fcvenlik riski olu\u015fturur. Y\u00f6netim i\u00e7in SSH t\u00fcnelleme veya VPN kullanmak \u00e7ok daha g\u00fcvenlidir. E\u011fer kesinlikle uzaktan eri\u015fime ihtiyac\u0131n\u0131z varsa, bunu sadece g\u00fcvenilir IP adresleriyle k\u0131s\u0131tlamal\u0131 ve TLS ile \u015fifrelemelisiniz.<\/p>\n<p>E\u011fer yine de a\u00e7man\u0131z gerekiyorsa (\u00f6rne\u011fin, bir y\u00f6netim arac\u0131 i\u00e7in i\u00e7 a\u011fda):<\/p>\n<pre><code class=\"language-bash\"># \u015eifresiz eri\u015fim (ASLA D\u0131\u015far\u0131ya A\u00e7may\u0131n!)\nsudo firewall-cmd --add-rich-rule='rule family=\"ipv4\" source address=\"192.168.1.0\/24\" port port=\"2375\" protocol=\"tcp\" accept' --permanent\n\n<h2>TLS ile \u015fifreli eri\u015fim (Hala dikkatli olunmal\u0131)<\/h2>\nsudo firewall-cmd --add-rich-rule='rule family=\"ipv4\" source address=\"192.168.1.0\/24\" port port=\"2376\" protocol=\"tcp\" accept' --permanent<\/code><\/pre>\n<h4>6. Kurallar\u0131 Y\u00fckleme<\/h4>\n<p>T\u00fcm <code>--permanent<\/code> bayrakl\u0131 komutlar\u0131 \u00e7al\u0131\u015ft\u0131rd\u0131ktan sonra, <code>firewalld<\/code>&#8216;\u0131n bu yeni kurallar\u0131 etkinle\u015ftirmesi i\u00e7in yeniden y\u00fcklenmesi gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --reload<\/code><\/pre>\n<p>Bu komut, <code>firewalld<\/code> servisini yeniden ba\u015flatmadan mevcut ba\u011flant\u0131lar\u0131 kesmeden kurallar\u0131 g\u00fcnceller.<\/p>\n<h3>Docker&#8217;\u0131n Firewalld Etkile\u015fimi ve Potansiyel Sorunlar<\/h3>\n<p>Docker, kendi <code>iptables<\/code> kurallar\u0131n\u0131 y\u00f6netme e\u011filimindedir. Bu, <code>firewalld<\/code> ile birlikte \u00e7al\u0131\u015f\u0131rken baz\u0131 karma\u015f\u0131kl\u0131klara yol a\u00e7abilir. Varsay\u0131lan olarak, Docker, <code>DOCKER<\/code> ad\u0131nda \u00f6zel bir <code>iptables<\/code> zinciri olu\u015fturur ve konteynerler aras\u0131 ve d\u0131\u015f d\u00fcnya ile konteynerler aras\u0131ndaki a\u011f trafi\u011fini bu zincir \u00fczerinden y\u00f6nlendirir.<\/p>\n<p>Docker&#8217;\u0131n <code>iptables<\/code> kurallar\u0131 genellikle <code>firewalld<\/code>&#8216;dan \u00f6nce i\u015flenir, bu da bazen <code>firewalld<\/code>&#8216;da a\u00e7t\u0131\u011f\u0131n\u0131z portlar\u0131n Docker taraf\u0131ndan g\u00f6z ard\u0131 edilmesine veya Docker&#8217;\u0131n kendi kurallar\u0131n\u0131n <code>firewalld<\/code> kurallar\u0131n\u0131 ge\u00e7ersiz k\u0131lmas\u0131na neden olabilir.<\/p>\n<p>*   <strong>Host Network Mode:<\/strong> E\u011fer bir servisi <code>host<\/code> a\u011f modunda \u00e7al\u0131\u015ft\u0131r\u0131yorsan\u0131z (<code>--network host<\/code>), Docker bu servisin portlar\u0131n\u0131 do\u011frudan host makineye ba\u011flar ve <code>iptables<\/code> kurallar\u0131n\u0131 daha az etkiler. Bu durumda, <code>firewalld<\/code> kurallar\u0131n\u0131z do\u011frudan ge\u00e7erli olur.<br \/>\n*   <strong>Bridge Network Mode ve Port Yay\u0131mlama:<\/strong> \u00c7o\u011fu durumda, Docker servisleri varsay\u0131lan <code>bridge<\/code> a\u011f\u0131nda veya overlay a\u011f\u0131nda \u00e7al\u0131\u015f\u0131r ve portlar\u0131 yay\u0131mlan\u0131r (<code>-p<\/code> veya <code>ports<\/code> direktifi). Docker bu durumda kendi <code>iptables<\/code> kurallar\u0131n\u0131 olu\u015fturarak gelen trafi\u011fi konteynere y\u00f6nlendirir. Genellikle, <code>firewalld<\/code>&#8216;da portu a\u00e7mak yeterlidir, \u00e7\u00fcnk\u00fc Docker&#8217;\u0131n kurallar\u0131 <code>firewalld<\/code>&#8216;\u0131n izin verdi\u011fi trafi\u011fi y\u00f6nlendirecektir.<br \/>\n*   <strong><code>--iptables=false<\/code>:<\/strong> Docker daemon&#8217;\u0131 <code>--iptables=false<\/code> se\u00e7ene\u011fiyle ba\u015flatmak, Docker&#8217;\u0131n kendi <code>iptables<\/code> kurallar\u0131n\u0131 olu\u015fturmas\u0131n\u0131 engeller. Bu durumda, t\u00fcm a\u011f ve port y\u00f6nlendirme kurallar\u0131n\u0131 manuel olarak (\u00f6rn. <code>firewalld<\/code> veya <code>iptables<\/code> ile) y\u00f6netmeniz gerekir ki bu olduk\u00e7a karma\u015f\u0131kt\u0131r ve genellikle \u00f6nerilmez.<\/p>\n<p>\u00d6zetle, \u00e7o\u011fu durumda <code>firewalld<\/code>&#8216;da gerekli portlar\u0131 a\u00e7mak yeterlidir ve Docker&#8217;\u0131n kendi <code>iptables<\/code> kurallar\u0131 bu trafi\u011fi konteynerlere do\u011fru bir \u015fekilde y\u00f6nlendirecektir. E\u011fer bir sorunla kar\u015f\u0131la\u015f\u0131rsan\u0131z, <code>iptables -L -n -v<\/code> komutu ile Docker&#8217;\u0131n olu\u015fturdu\u011fu <code>iptables<\/code> kurallar\u0131n\u0131 incelemek faydal\u0131 olabilir.<\/p>\n<h3>\u0130leri D\u00fczey G\u00fcvenlik \u0130pu\u00e7lar\u0131<\/h3>\n<p>Docker Swarm k\u00fcmenizin g\u00fcvenli\u011fini art\u0131rmak i\u00e7in ek ad\u0131mlar atabilirsiniz:<\/p>\n<p>*   <strong>VPN veya SSH T\u00fcnelleme:<\/strong> Y\u00f6netici d\u00fc\u011f\u00fcmlerine veya Swarm CLI&#8217;ya eri\u015fmek i\u00e7in her zaman VPN veya SSH t\u00fcnelleme kullan\u0131n. Bu, y\u00f6netim portlar\u0131n\u0131 d\u0131\u015f d\u00fcnyaya a\u00e7ma ihtiyac\u0131n\u0131 ortadan kald\u0131r\u0131r ve trafi\u011fi \u015fifreler.<br \/>\n*   <strong>Fail2ban Kullan\u0131m\u0131:<\/strong> SSH veya di\u011fer y\u00f6netim servisleri i\u00e7in brute-force sald\u0131r\u0131lar\u0131n\u0131 engellemek amac\u0131yla Fail2ban gibi ara\u00e7lar\u0131 kurun.<br \/>\n*   <strong>SELinux Entegrasyonu:<\/strong> CentOS 7&#8217;nin g\u00fc\u00e7l\u00fc g\u00fcvenlik arac\u0131 olan SELinux&#8217;u etkin ve do\u011fru yap\u0131land\u0131r\u0131lm\u0131\u015f tutun. Docker ve SELinux&#8217;un birlikte sorunsuz \u00e7al\u0131\u015fmas\u0131 i\u00e7in bazen \u00f6zel SELinux politikalar\u0131 gerekebilir, ancak varsay\u0131lan yap\u0131land\u0131rma \u00e7o\u011fu zaman yeterlidir.<br \/>\n*   <strong>G\u00fcvenlik Duvar\u0131 Kurallar\u0131n\u0131 Otomatikle\u015ftirmek:<\/strong> B\u00fcy\u00fck veya dinamik bir Swarm k\u00fcmesinde, g\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131 manuel olarak y\u00f6netmek yerine Ansible, Puppet veya Chef gibi yap\u0131land\u0131rma y\u00f6netim ara\u00e7lar\u0131 kullanarak otomatikle\u015ftirmeyi d\u00fc\u015f\u00fcn\u00fcn. Bu, tutarl\u0131l\u0131k sa\u011flar ve insan hatas\u0131n\u0131 azalt\u0131r.<br \/>\n*   <strong>A\u011f Segmentasyonu:<\/strong> M\u00fcmk\u00fcnse, Swarm d\u00fc\u011f\u00fcmlerinizi ve arka u\u00e7 servislerinizi (veritabanlar\u0131 vb.) farkl\u0131 a\u011f segmentlerine ay\u0131r\u0131n ve aralar\u0131ndaki trafi\u011fi s\u0131k\u0131 g\u00fcvenlik duvar\u0131 kurallar\u0131yla kontrol edin.<\/p>\n<h3>Yap\u0131land\u0131rman\u0131n Do\u011frulanmas\u0131 ve Sorun Giderme<\/h3>\n<p>G\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131 uygulad\u0131ktan sonra, her \u015feyin beklendi\u011fi gibi \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak i\u00e7in do\u011frulama ad\u0131mlar\u0131 atmak \u00f6nemlidir.<\/p>\n<h4>Yap\u0131land\u0131rmay\u0131 Do\u011frulama<\/h4>\n<p>1.  <strong>Firewalld Kurallar\u0131n\u0131 Listeleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --list-all --zone=public<\/code><\/pre>\n<p>    Bu komut, <code>public<\/code> b\u00f6lgesinde a\u00e7t\u0131\u011f\u0131n\u0131z t\u00fcm portlar\u0131 ve servisleri listelemelidir.<\/p>\n<p>2.  <strong>A\u00e7\u0131k Portlar\u0131 Kontrol Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo netstat -tulnp | grep -E '2377|7946|4789|80|443|8080' # Kulland\u0131\u011f\u0131n\u0131z portlara g\u00f6re d\u00fczenleyin\n    sudo ss -tulnp | grep -E '2377|7946|4789|80|443|8080' # netstat yerine ss de kullan\u0131labilir<\/code><\/pre>\n<p>    Bu komutlar, sisteminizde dinleyen servisleri ve portlar\u0131 g\u00f6sterir. A\u00e7t\u0131\u011f\u0131n\u0131z Swarm ve uygulama portlar\u0131n\u0131n <code>LISTEN<\/code> durumunda olmas\u0131 gerekir.<\/p>\n<p>3.  <strong>Swarm Servislerinin Durumunu Kontrol Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">docker node ls\n    docker service ls<\/code><\/pre>\n<p>    Swarm d\u00fc\u011f\u00fcmlerinin <code>Ready<\/code> ve <code>Active<\/code> durumda oldu\u011funu, servislerin ise <code>Running<\/code> oldu\u011funu do\u011frulay\u0131n.<\/p>\n<p>4.  <strong>Uygulama Eri\u015fimi Testi:<\/strong><br \/>\n    Uygulaman\u0131z\u0131n d\u0131\u015far\u0131dan eri\u015filebilir olup olmad\u0131\u011f\u0131n\u0131 bir web taray\u0131c\u0131s\u0131 veya <code>curl<\/code> komutu ile test edin.<\/p>\n<pre><code class=\"language-bash\">curl http:\/\/<Swarm_Manager_IP_Adresi>:<Uygulama_Portu><\/code><\/pre>\n<h4>Sorun Giderme<\/h4>\n<p>E\u011fer bir sorunla kar\u015f\u0131la\u015f\u0131rsan\u0131z (\u00f6rne\u011fin, port a\u00e7\u0131k g\u00f6r\u00fcnse de eri\u015fim yoksa):<\/p>\n<p>*   <strong>Firewalld Loglar\u0131n\u0131 Kontrol Edin:<\/strong> <code>firewalld<\/code>&#8216;\u0131n engelledi\u011fi trafi\u011fi g\u00f6rmek i\u00e7in sistem g\u00fcnl\u00fcklerini (<code>\/var\/log\/messages<\/code> veya <code>journalctl -xe<\/code>) kontrol edin.<br \/>\n*   <strong>SELinux Durumunu Kontrol Edin:<\/strong> Bazen SELinux, g\u00fcvenlik duvar\u0131 kurallar\u0131ndan ba\u011f\u0131ms\u0131z olarak ba\u011flant\u0131lar\u0131 engelleyebilir. <code>getenforce<\/code> komutu ile SELinux&#8217;un durumunu kontrol edin ve gerekirse <code>setenforce 0<\/code> ile ge\u00e7ici olarak devre d\u0131\u015f\u0131 b\u0131rakarak test edin (ancak \u00fcretim ortam\u0131nda devre d\u0131\u015f\u0131 b\u0131rakmak \u00f6nerilmez).<br \/>\n*   <strong>Docker A\u011f\u0131n\u0131 \u0130nceleyin:<\/strong> Docker&#8217;\u0131n kendi a\u011f yap\u0131land\u0131rmas\u0131n\u0131 incelemek i\u00e7in <code>docker network ls<\/code> ve <code>docker network inspect <network_name><\/code> komutlar\u0131n\u0131 kullan\u0131n.<br \/>\n*   <strong>Iptables Kurallar\u0131n\u0131 \u0130nceleyin:<\/strong> <code>sudo iptables -L -n -v<\/code> komutu, <code>firewalld<\/code> ve Docker taraf\u0131ndan olu\u015fturulan t\u00fcm <code>iptables<\/code> kurallar\u0131n\u0131 detayl\u0131 bir \u015fekilde g\u00f6sterir. Bu, trafi\u011fin nerede engellendi\u011fini veya yanl\u0131\u015f y\u00f6nlendirildi\u011fini anlaman\u0131za yard\u0131mc\u0131 olabilir.<br \/>\n*   <strong>Ba\u011flant\u0131y\u0131 Test Edin:<\/strong> <code>telnet<\/code> veya <code>nc<\/code> (netcat) gibi ara\u00e7larla belirli bir porttan ba\u011flant\u0131 kurmay\u0131 deneyin. \u00d6rne\u011fin: <code>telnet <hedef_ip> <port><\/code>.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>CentOS 7 \u00fczerinde Docker Swarm k\u00fcmesi kurarken g\u00fcvenlik duvar\u0131 yap\u0131land\u0131rmas\u0131 kritik bir ad\u0131md\u0131r. <code>firewalld<\/code> kullanarak Swarm d\u00fc\u011f\u00fcmleri aras\u0131nda gerekli ileti\u015fimi sa\u011flarken, ayn\u0131 zamanda k\u00fcmenizi d\u0131\u015f tehditlerden koruyabilirsiniz. Bu makalede belirtilen portlar\u0131 do\u011fru bir \u015fekilde yap\u0131land\u0131rmak, en az ayr\u0131cal\u0131k prensibini uygulamak ve ileri d\u00fczey g\u00fcvenlik ipu\u00e7lar\u0131n\u0131 takip etmek, Docker Swarm ortam\u0131n\u0131z\u0131n hem i\u015flevsel hem de g\u00fcvenli olmas\u0131n\u0131 sa\u011flayacakt\u0131r. G\u00fcvenli\u011fin s\u00fcrekli bir s\u00fcre\u00e7 oldu\u011funu unutmay\u0131n; sistemlerinizi d\u00fczenli olarak g\u00f6zden ge\u00e7irmeli ve g\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131z\u0131 de\u011fi\u015fen ihtiya\u00e7lar\u0131n\u0131za g\u00f6re g\u00fcncellemelisiniz. Bu sayede, konteynerize edilmi\u015f uygulamalar\u0131n\u0131z\u0131n CentOS 7 tabanl\u0131 Docker Swarm k\u00fcmenizde g\u00fcvenle \u00e7al\u0131\u015fmaya devam etmesini sa\u011flayabilirsiniz.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131 Da\u011f\u0131t\u0131k sistemler ve konteyner teknolojileri g\u00fcn\u00fcm\u00fcz\u00fcn modern uygulama mimarilerinin temel ta\u015flar\u0131ndan biri haline gelmi\u015ftir.","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":[241],"tags":[],"class_list":{"0":"post-41158","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-linux","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>CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131 - 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\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131\" \/>\n<meta property=\"og:description\" content=\"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131 Da\u011f\u0131t\u0131k sistemler ve konteyner teknolojileri g\u00fcn\u00fcm\u00fcz\u00fcn modern uygulama mimarilerinin temel ta\u015flar\u0131ndan biri haline gelmi\u015ftir.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-03-03T21:40:39+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=\"14 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131\",\"datePublished\":\"2026-03-03T21:40:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/\"},\"wordCount\":2536,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Linux\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/\",\"name\":\"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-03-03T21:40:39+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131\"}]},{\"@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":"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131 - 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\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/","og_locale":"tr_TR","og_type":"article","og_title":"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131","og_description":"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131 Da\u011f\u0131t\u0131k sistemler ve konteyner teknolojileri g\u00fcn\u00fcm\u00fcz\u00fcn modern uygulama mimarilerinin temel ta\u015flar\u0131ndan biri haline gelmi\u015ftir.","og_url":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-03-03T21:40:39+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"14 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131","datePublished":"2026-03-03T21:40:39+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/"},"wordCount":2536,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Linux"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/","url":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/","name":"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-03-03T21:40:39+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-docker-swarm-icin-linux-guvenlik-duvari-yapilandirmasi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"CentOS 7 \u00dczerinde Docker Swarm \u0130\u00e7in Linux G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131"}]},{"@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\/41158","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=41158"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/41158\/revisions"}],"predecessor-version":[{"id":41159,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/41158\/revisions\/41159"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=41158"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=41158"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=41158"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}