{"id":16489,"date":"2026-08-31T10:43:39","date_gmt":"2026-08-31T07:43:39","guid":{"rendered":"https:\/\/www.ihs.com.tr\/blog\/?p=16489"},"modified":"2026-08-31T10:43:39","modified_gmt":"2026-08-31T07:43:39","slug":"sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz","status":"publish","type":"post","link":"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/","title":{"rendered":"Sitenize Y\u00f6nelik Brute Force Sald\u0131r\u0131lar\u0131n\u0131 Fail2Ban ile Nas\u0131l Engellersiniz?"},"content":{"rendered":"<p>Web siteleri ve sunucular, dijital d\u00fcnyan\u0131n kap\u0131lar\u0131 olarak her an say\u0131s\u0131z tehdide maruz kal\u0131r. Bu tehditlerin en yayg\u0131n ve \u0131srarc\u0131 olanlar\u0131ndan biri de Brute Force (Kaba Kuvvet) sald\u0131r\u0131lar\u0131d\u0131r. Sald\u0131rganlar, otomatize yaz\u0131l\u0131mlar kullanarak kullan\u0131c\u0131 ad\u0131 ve parola kombinasyonlar\u0131n\u0131 sistematik olarak deneyerek sisteminize s\u0131zmaya \u00e7al\u0131\u015f\u0131r. Bu t\u00fcr sald\u0131r\u0131lar yaln\u0131zca veri g\u00fcvenli\u011finizi tehlikeye atmakla kalmaz, ayn\u0131 zamanda sunucu kaynaklar\u0131n\u0131z\u0131 t\u00fcketerek sitenizin performans\u0131n\u0131 da ciddi \u015fekilde d\u00fc\u015f\u00fcrebilir. Neyse ki, Fail2Ban gibi g\u00fc\u00e7l\u00fc ve proaktif ara\u00e7lar sayesinde bu otomatik sald\u0131r\u0131lar\u0131 tespit edip engellemek m\u00fcmk\u00fcnd\u00fcr. Bu rehberde, Brute Force sald\u0131r\u0131lar\u0131n\u0131n ne oldu\u011funu, web g\u00fcvenli\u011fi \u00fczerindeki etkilerini ve Fail2Ban kullanarak bu tehditlere kar\u015f\u0131 nas\u0131l etkili bir savunma hatt\u0131 olu\u015fturabilece\u011finizi ad\u0131m ad\u0131m inceleyece\u011fiz.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_77 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0130\u00e7erik Tablosu<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a959168a590b\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\" id=\"ez-toc-cssicon-toggle-item-6a959168a590b\" aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Brute-Force-Saldirilari-ve-Web-Guvenligi-Uzerindeki-Etkileri\" >Brute Force Sald\u0131r\u0131lar\u0131 ve Web G\u00fcvenli\u011fi \u00dczerindeki Etkileri<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Brute-Force-Saldirisi-Nedir-ve-Nasil-Calisir\" >Brute Force Sald\u0131r\u0131s\u0131 Nedir ve Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Web-Sitelerini-Hedef-Alan-Yaygin-Brute-Force-Yontemleri\" >Web Sitelerini Hedef Alan Yayg\u0131n Brute Force Y\u00f6ntemleri<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Basarili-Bir-Saldirinin-Potansiyel-Sonuclari\" >Ba\u015far\u0131l\u0131 Bir Sald\u0131r\u0131n\u0131n Potansiyel Sonu\u00e7lar\u0131<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Fail2Ban-Otomatik-ve-Proaktif-Bir-Savunma-Mekanizmasi\" >Fail2Ban: Otomatik ve Proaktif Bir Savunma Mekanizmas\u0131<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Fail2Ban-Nedir-ve-Temel-Calisma-Prensibi-Nasildir\" >Fail2Ban Nedir ve Temel \u00c7al\u0131\u015fma Prensibi Nas\u0131ld\u0131r?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Fail2Banin-Temel-Bilesenleri\" >Fail2Ban&#8217;in Temel Bile\u015fenleri<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Brute-Force-Saldirilarina-Karsi-Fail2Ban-Kullanmanin-Avantajlari\" >Brute Force Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Fail2Ban Kullanman\u0131n Avantajlar\u0131<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Fail2Ban-Kurulumu-Adim-Adim-Rehber\" >Fail2Ban Kurulumu: Ad\u0131m Ad\u0131m Rehber<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Sistem-Gereksinimleri-ve-On-Hazirliklar\" >Sistem Gereksinimleri ve \u00d6n Haz\u0131rl\u0131klar<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Populer-Linux-Dagitimlarinda-Kurulum\" >Pop\u00fcler Linux Da\u011f\u0131t\u0131mlar\u0131nda Kurulum<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Kurulum-Sonrasi-Servis-Durumunu-Kontrol-Etme-ve-Baslatma\" >Kurulum Sonras\u0131 Servis Durumunu Kontrol Etme ve Ba\u015flatma<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Temel-Fail2Ban-Yapilandirmasi\" >Temel Fail2Ban Yap\u0131land\u0131rmas\u0131<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#jailconf-ve-jaillocal-Dosyalarinin-Onemi\" >`jail.conf` ve `jail.local` Dosyalar\u0131n\u0131n \u00d6nemi<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#jaillocal-Dosyasini-Olusturma\" >`jail.local` Dosyas\u0131n\u0131 Olu\u015fturma<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Genel-Yapilandirma-Ayarlari-DEFAULT-Bolumu\" >Genel Yap\u0131land\u0131rma Ayarlar\u0131 ([DEFAULT] B\u00f6l\u00fcm\u00fc)<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Web-Sitenizi-Korumak-Icin-Ozel-Jail-Yapilandirmalari\" >Web Sitenizi Korumak \u0130\u00e7in \u00d6zel Jail Yap\u0131land\u0131rmalar\u0131<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#SSH-Portunu-Brute-Force-Saldirilarindan-Koruma-sshd-Jaili\" >SSH Portunu Brute Force Sald\u0131r\u0131lar\u0131ndan Koruma (`sshd` Jail&#8217;i)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#WordPress-Giris-Sayfasini-Koruma\" >WordPress Giri\u015f Sayfas\u0131n\u0131 Koruma<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Diger-Web-Uygulamalari-Joomla-Drupal-vb-Icin-Koruma-Stratejileri\" >Di\u011fer Web Uygulamalar\u0131 (Joomla, Drupal vb.) \u0130\u00e7in Koruma Stratejileri<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Web-Sunucusu-NginxApache-Loglari-Uzerinden-Kotu-Amacli-Botlari-Engelleme\" >Web Sunucusu (Nginx\/Apache) Loglar\u0131 \u00dczerinden K\u00f6t\u00fc Ama\u00e7l\u0131 Botlar\u0131 Engelleme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Yapilandirma-Degisikliklerini-Uygulama-ve-Test-Etme\" >Yap\u0131land\u0131rma De\u011fi\u015fikliklerini Uygulama ve Test Etme<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Fail2Ban-Yonetimi-ve-Izleme\" >Fail2Ban Y\u00f6netimi ve \u0130zleme<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#fail2ban-client-Komut-Satiri-Aracinin-Kullanimi\" >`fail2ban-client` Komut Sat\u0131r\u0131 Arac\u0131n\u0131n Kullan\u0131m\u0131<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Aktif-Jaillerin-Durumunu-Kontrol-Etme\" >Aktif Jail&#8217;lerin Durumunu Kontrol Etme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Engellenen-Banlanan-IP-Adreslerini-Listeleme\" >Engellenen (Banlanan) IP Adreslerini Listeleme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Bir-IP-Adresinin-Engelini-Manuel-Olarak-Kaldirma-Unban\" >Bir IP Adresinin Engelini Manuel Olarak Kald\u0131rma (Unban)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-28\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Fail2Ban-Log-Dosyalarini-Inceleme-ve-Analiz-Etme\" >Fail2Ban Log Dosyalar\u0131n\u0131 \u0130nceleme ve Analiz Etme<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-29\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Ileri-Seviye-Ipuclari-ve-En-Iyi-Uygulamalar\" >\u0130leri Seviye \u0130pu\u00e7lar\u0131 ve En \u0130yi Uygulamalar<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-30\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Yasaklama-Eylemini-Ozellestirme-Orn-Sadece-Port-Engelleme\" >Yasaklama Eylemini \u00d6zelle\u015ftirme (\u00d6rn: Sadece Port Engelleme)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-31\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#E-posta-Bildirimlerini-Aktif-Hale-Getirme\" >E-posta Bildirimlerini Aktif Hale Getirme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-32\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Cloudflare-Gibi-Servislerle-Fail2Ban-Entegrasyonu\" >Cloudflare Gibi Servislerle Fail2Ban Entegrasyonu<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-33\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Kalici-Yasaklamalar-Persistent-Bans-ve-Riskleri\" >Kal\u0131c\u0131 Yasaklamalar (Persistent Bans) ve Riskleri<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-34\" href=\"https:\/\/www.ihs.com.tr\/blog\/sitenize-yonelik-brute-force-saldirilarini-fail2ban-ile-nasil-engellersiniz\/#Guvenli-Sunucu-Yonetimi-ve-Fail2Ban-Kurulumu-Icin-Neden-IHS-Telekomu-Tercih-Etmelisiniz\" >G\u00fcvenli Sunucu Y\u00f6netimi ve Fail2Ban Kurulumu \u0130\u00e7in Neden \u0130HS Telekom&#8217;u Tercih Etmelisiniz?<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Brute-Force-Saldirilari-ve-Web-Guvenligi-Uzerindeki-Etkileri\"><\/span>Brute Force Sald\u0131r\u0131lar\u0131 ve Web G\u00fcvenli\u011fi \u00dczerindeki Etkileri<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Brute Force sald\u0131r\u0131lar\u0131, siber g\u00fcvenli\u011fin en temel ve en eski sald\u0131r\u0131 vekt\u00f6rlerinden biridir, ancak hala \u015fa\u015f\u0131rt\u0131c\u0131 derecede etkilidir. Bu b\u00f6l\u00fcmde, bu sald\u0131r\u0131 t\u00fcr\u00fcn\u00fcn ne oldu\u011funu, nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131, yayg\u0131n y\u00f6ntemlerini ve ba\u015far\u0131l\u0131 bir sald\u0131r\u0131n\u0131n web siteniz i\u00e7in ne gibi felaketlere yol a\u00e7abilece\u011fini detayl\u0131ca ele alaca\u011f\u0131z.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Brute-Force-Saldirisi-Nedir-ve-Nasil-Calisir\"><\/span>Brute Force Sald\u0131r\u0131s\u0131 Nedir ve Nas\u0131l \u00c7al\u0131\u015f\u0131r?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Brute Force sald\u0131r\u0131s\u0131, en basit tan\u0131m\u0131yla, bir hedefe (genellikle bir giri\u015f paneli) eri\u015fim sa\u011flamak i\u00e7in olas\u0131 t\u00fcm parola ve kullan\u0131c\u0131 ad\u0131 kombinasyonlar\u0131n\u0131 sistematik olarak deneme y\u00f6ntemidir. Sald\u0131rganlar bu i\u015flemi manuel olarak yapmazlar; bunun yerine, saniyede binlerce deneme yapabilen botlar veya \u00f6zel yaz\u0131l\u0131mlar kullan\u0131rlar. Temel \u00e7al\u0131\u015fma prensibi, do\u011fru kombinasyonu bulana kadar &#8220;deneme-yan\u0131lma&#8221; y\u00f6ntemini otomatize etmektir. Zay\u0131f, k\u0131sa veya tahmin edilebilir parolalar bu sald\u0131r\u0131lar\u0131n ilk hedefidir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Web-Sitelerini-Hedef-Alan-Yaygin-Brute-Force-Yontemleri\"><\/span>Web Sitelerini Hedef Alan Yayg\u0131n Brute Force Y\u00f6ntemleri<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Brute Force sald\u0131r\u0131lar\u0131 tek bir kal\u0131ptan ibaret de\u011fildir ve sald\u0131rganlar hedeflerine ula\u015fmak i\u00e7in farkl\u0131 stratejiler kullanabilirler. Bu y\u00f6ntemleri bilmek, onlara kar\u015f\u0131 daha etkili savunma mekanizmalar\u0131 geli\u015ftirmenize yard\u0131mc\u0131 olur.<\/p>\n<h4>Basit Brute Force Sald\u0131r\u0131s\u0131<\/h4>\n<p>Bu en temel y\u00f6ntemdir. Sald\u0131rgan, belirli bir kullan\u0131c\u0131 ad\u0131 (\u00f6rne\u011fin &#8220;admin&#8221;) i\u00e7in olas\u0131 t\u00fcm parola kombinasyonlar\u0131n\u0131 (say\u0131lar, harfler, semboller) dener. Genellikle, hedeflenen sistemin parola politikas\u0131 hakk\u0131nda hi\u00e7bir bilgiye sahip olunmadan, tamamen kaba kuvvetle denemeler yap\u0131l\u0131r.<\/p>\n<h4>S\u00f6zl\u00fck Sald\u0131r\u0131s\u0131 (Dictionary Attack)<\/h4>\n<p>S\u00f6zl\u00fck sald\u0131r\u0131s\u0131, basit y\u00f6nteme g\u00f6re daha hedefe y\u00f6neliktir. Sald\u0131rganlar, yayg\u0131n olarak kullan\u0131lan parolalar\u0131n, s\u00f6zc\u00fcklerin, argo terimlerin ve hatta daha \u00f6nce s\u0131zd\u0131r\u0131lm\u0131\u015f parola listelerinin bulundu\u011fu bir &#8220;s\u00f6zl\u00fck&#8221; dosyas\u0131 kullan\u0131r. Bu y\u00f6ntem, insanlar\u0131n &#8220;123456&#8221;, &#8220;password&#8221; veya &#8220;qwerty&#8221; gibi basit ve yayg\u0131n parolalar\u0131 kullanma e\u011filiminden faydalan\u0131r.<\/p>\n<h4>Ters Brute Force Sald\u0131r\u0131s\u0131 (Reverse Brute Force)<\/h4>\n<p>Bu teknikte ise denklem tersine \u00e7evrilir. Sald\u0131rgan, &#8220;123456&#8221; gibi \u00e7ok yayg\u0131n ve ele ge\u00e7irilmesi kolay tek bir parola belirler. Ard\u0131ndan, bu parolay\u0131 kullanarak sistemdeki olas\u0131 t\u00fcm kullan\u0131c\u0131 adlar\u0131n\u0131 denemeye ba\u015flar. \u00d6zellikle bir\u00e7ok kullan\u0131c\u0131n\u0131n varsay\u0131lan veya zay\u0131f parolalar kulland\u0131\u011f\u0131 sistemlerde etkili olabilir.<\/p>\n<h4>Kimlik Bilgisi Doldurma (Credential Stuffing)<\/h4>\n<p>En tehlikeli y\u00f6ntemlerden biridir. Sald\u0131rganlar, daha \u00f6nce ba\u015fka platformlarda ger\u00e7ekle\u015fen veri s\u0131z\u0131nt\u0131lar\u0131ndan elde ettikleri milyonlarca kullan\u0131c\u0131 ad\u0131-parola \u00e7iftini kullan\u0131r. \u0130nsanlar\u0131n farkl\u0131 servislerde ayn\u0131 parola ve kullan\u0131c\u0131 ad\u0131n\u0131 kullanma al\u0131\u015fkanl\u0131\u011f\u0131ndan yola \u00e7\u0131karak, bu \u00e7al\u0131nm\u0131\u015f bilgileri sizin sitenizde denerler. E\u011fer bir kullan\u0131c\u0131n\u0131z ba\u015fka bir sitede s\u0131zd\u0131r\u0131lan kimlik bilgilerini sizin sitenizde de kullan\u0131yorsa, hesab\u0131 an\u0131nda ele ge\u00e7irilir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Basarili-Bir-Saldirinin-Potansiyel-Sonuclari\"><\/span>Ba\u015far\u0131l\u0131 Bir Sald\u0131r\u0131n\u0131n Potansiyel Sonu\u00e7lar\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Ba\u015far\u0131l\u0131 bir Brute Force sald\u0131r\u0131s\u0131, basit bir yetkisiz eri\u015fimden \u00e7ok daha fazlas\u0131na mal olabilir. Y\u00f6netici hesab\u0131n\u0131n ele ge\u00e7irilmesi, web sitenizin tamamen kontrol\u00fcn\u00fcn kaybedilmesi anlam\u0131na gelir. Sald\u0131rganlar hassas kullan\u0131c\u0131 verilerini (ki\u015fisel bilgiler, \u00f6deme detaylar\u0131 vb.) \u00e7alabilir, sitenize k\u00f6t\u00fc ama\u00e7l\u0131 yaz\u0131l\u0131m (malware) enjekte edebilir, ziyaret\u00e7ilerinizi doland\u0131r\u0131c\u0131l\u0131k sitelerine y\u00f6nlendirebilir veya sitenizi di\u011fer hedeflere sald\u0131rmak i\u00e7in bir platform olarak kullanabilirler. Bu durum, itibar kayb\u0131, yasal sorumluluklar ve ciddi finansal zararlarla sonu\u00e7lanabilir.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Fail2Ban-Otomatik-ve-Proaktif-Bir-Savunma-Mekanizmasi\"><\/span>Fail2Ban: Otomatik ve Proaktif Bir Savunma Mekanizmas\u0131<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Brute Force gibi otomatik sald\u0131r\u0131lara kar\u015f\u0131 manuel olarak m\u00fccadele etmek neredeyse imkans\u0131zd\u0131r. \u0130\u015fte bu noktada Fail2Ban gibi otomasyon ara\u00e7lar\u0131 devreye girer. Fail2Ban, sunucunuzu s\u00fcrekli olarak izleyen ve \u015f\u00fcpheli aktiviteleri an\u0131nda engelleyen proaktif bir savunma kalkan\u0131 g\u00f6revi g\u00f6r\u00fcr.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Fail2Ban-Nedir-ve-Temel-Calisma-Prensibi-Nasildir\"><\/span>Fail2Ban Nedir ve Temel \u00c7al\u0131\u015fma Prensibi Nas\u0131ld\u0131r?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban, sunucunuzun log (kay\u0131t) dosyalar\u0131n\u0131 aktif olarak izleyen bir &#8220;sald\u0131r\u0131 \u00f6nleme&#8221; yaz\u0131l\u0131m\u0131d\u0131r. Belirledi\u011finiz kurallara uymayan (\u00f6rne\u011fin, k\u0131sa s\u00fcrede \u00e7ok say\u0131da hatal\u0131 giri\u015f denemesi yapan) IP adreslerini tespit eder ve bu adresleri sunucunuzun g\u00fcvenlik duvar\u0131 (firewall) \u00fczerinden otomatik olarak belirli bir s\u00fcreli\u011fine engeller. Bu sayede, Brute Force sald\u0131r\u0131s\u0131 yapan botlar, hedeflerine ula\u015famadan sistemden uzakla\u015ft\u0131r\u0131lm\u0131\u015f olur.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Fail2Banin-Temel-Bilesenleri\"><\/span>Fail2Ban&#8217;in Temel Bile\u015fenleri<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban&#8217;in etkili bir \u015fekilde \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flayan \u00fc\u00e7 ana bile\u015fen vard\u0131r: Filtreler, Eylemler ve Hapishaneler. Bu \u00fc\u00e7 bile\u015fen, &#8220;e\u011fer bu olursa, \u015funu yap&#8221; mant\u0131\u011f\u0131yla bir araya gelerek savunma mekanizmas\u0131n\u0131 olu\u015fturur.<\/p>\n<h4>Filtreler (Filters)<\/h4>\n<p>Filtreler, log dosyalar\u0131nda hangi sat\u0131rlar\u0131n &#8220;hatal\u0131&#8221; veya &#8220;\u015f\u00fcpheli&#8221; olarak kabul edilece\u011fini tan\u0131mlayan kurallard\u0131r. \u00d6rne\u011fin, bir SSH filtresi, log dosyas\u0131ndaki &#8220;Failed password for&#8230;&#8221; sat\u0131rlar\u0131n\u0131 arar. Her servis (SSH, WordPress, Apache vb.) i\u00e7in ayr\u0131 bir filtre dosyas\u0131 bulunur ve bu dosyalar, ilgili servise y\u00f6nelik sald\u0131r\u0131 desenlerini tan\u0131mak i\u00e7in d\u00fczenli ifadeler (regex) kullan\u0131r.<\/p>\n<h4>Eylemler (Actions)<\/h4>\n<p>Bir filtre, \u015f\u00fcpheli bir aktivite tespit etti\u011finde, Fail2Ban&#8217;in ne yapaca\u011f\u0131n\u0131 belirleyen bile\u015fen &#8220;eylem&#8221;dir. En yayg\u0131n eylem, tespit edilen IP adresini g\u00fcvenlik duvar\u0131 (iptables, firewalld vb.) kullanarak engellemektir. Ancak eylemler sadece bununla s\u0131n\u0131rl\u0131 de\u011fildir; \u015f\u00fcpheli bir aktivite alg\u0131land\u0131\u011f\u0131nda sistem y\u00f6neticisine e-posta g\u00f6ndermek gibi farkl\u0131 g\u00f6revler de tan\u0131mlanabilir.<\/p>\n<h4>Hapishaneler (Jails)<\/h4>\n<p>Hapishaneler (Jails), filtreleri ve eylemleri bir araya getiren ana yap\u0131land\u0131rma birimleridir. Her bir &#8220;jail&#8221;, belirli bir servisi korumak i\u00e7in tasarlanm\u0131\u015ft\u0131r. \u00d6rne\u011fin, bir `[sshd]` jail&#8217;i, SSH loglar\u0131n\u0131 izlemek i\u00e7in `sshd.conf` filtresini kullan\u0131r ve bir sald\u0131r\u0131 tespit etti\u011finde IP adresini engellemek i\u00e7in `iptables-multiport` eylemini tetikler. Ayr\u0131ca bir jail i\u00e7erisinde `bantime` (yasaklama s\u00fcresi), `maxretry` (maksimum deneme say\u0131s\u0131) gibi \u00f6zel parametreler de tan\u0131mlan\u0131r.<\/p>\n<div class=\"karsilastirma\">\n<table>\n<caption>Fail2Ban Bile\u015fenleri ve G\u00f6revleri<\/caption>\n<thead>\n<tr>\n<th>Bile\u015fen<\/th>\n<th>G\u00f6revi<\/th>\n<th>\u00d6rnek<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Filtre (Filter)<\/strong><\/td>\n<td>Log dosyalar\u0131nda \u015f\u00fcpheli desenleri (hatal\u0131 giri\u015fler, 404 hatalar\u0131 vb.) arar.<\/td>\n<td>WordPress i\u00e7in `wp-login.php` adresine yap\u0131lan POST isteklerindeki &#8220;Authentication failure&#8221; logunu aramak.<\/td>\n<\/tr>\n<tr>\n<td><strong>Eylem (Action)<\/strong><\/td>\n<td>Filtre bir e\u015fle\u015fme buldu\u011funda ne yap\u0131laca\u011f\u0131n\u0131 belirler.<\/td>\n<td>Sald\u0131rgan IP adresini 10 dakika boyunca g\u00fcvenlik duvar\u0131nda engellemek.<\/td>\n<\/tr>\n<tr>\n<td><strong>Hapishane (Jail)<\/strong><\/td>\n<td>Filtre, eylem ve di\u011fer parametreleri (deneme say\u0131s\u0131, yasaklama s\u00fcresi) birle\u015ftirir.<\/td>\n<td>`[wordpress-auth]` ad\u0131nda bir jail olu\u015fturup, 3 hatal\u0131 denemede IP&#8217;yi 1 saatli\u011fine engellemek.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"Brute-Force-Saldirilarina-Karsi-Fail2Ban-Kullanmanin-Avantajlari\"><\/span>Brute Force Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Fail2Ban Kullanman\u0131n Avantajlar\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban kullanmak, sunucu g\u00fcvenli\u011fini art\u0131rman\u0131n yan\u0131 s\u0131ra bir\u00e7ok avantaj sunar. \u0130lk olarak, sunucu kaynaklar\u0131n\u0131n gereksiz yere t\u00fcketilmesini \u00f6nler. S\u00fcrekli giri\u015f denemesi yapan botlar, CPU ve a\u011f bant geni\u015fli\u011fini me\u015fgul eder; Fail2Ban bu trafi\u011fi en ba\u015f\u0131ndan keser. \u0130kinci olarak, g\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131 manuel olarak y\u00f6netme zahmetinden kurtar\u0131r. Sistem, sald\u0131r\u0131lar\u0131 otomatik olarak tespit eder ve m\u00fcdahale eder, bu da size zaman kazand\u0131r\u0131r. Son olarak, log dosyalar\u0131n\u0131z\u0131n daha temiz kalmas\u0131n\u0131 sa\u011flar, \u00e7\u00fcnk\u00fc binlerce anlams\u0131z giri\u015f denemesi yerine sadece ger\u00e7ek ve \u00f6nemli olaylar\u0131 inceleme olana\u011f\u0131n\u0131z olur.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Fail2Ban-Kurulumu-Adim-Adim-Rehber\"><\/span>Fail2Ban Kurulumu: Ad\u0131m Ad\u0131m Rehber<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Fail2Ban&#8217;i sunucunuza kurmak, Brute Force sald\u0131r\u0131lar\u0131na kar\u015f\u0131 ilk ve en \u00f6nemli ad\u0131m\u0131 atmak demektir. Kurulum s\u00fcreci, kulland\u0131\u011f\u0131n\u0131z Linux da\u011f\u0131t\u0131m\u0131na g\u00f6re k\u00fc\u00e7\u00fck farkl\u0131l\u0131klar g\u00f6sterse de genel olarak olduk\u00e7a basittir. Bu b\u00f6l\u00fcmde, kurulum \u00f6ncesi haz\u0131rl\u0131klardan ba\u015flayarak servis kontrol\u00fcne kadar t\u00fcm s\u00fcreci detayland\u0131raca\u011f\u0131z.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Sistem-Gereksinimleri-ve-On-Hazirliklar\"><\/span>Sistem Gereksinimleri ve \u00d6n Haz\u0131rl\u0131klar<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban&#8217;i kurmadan \u00f6nce sunucunuzda root veya sudo yetkilerine sahip bir kullan\u0131c\u0131 hesab\u0131n\u0131z\u0131n olmas\u0131 gerekir. Fail2Ban, Python ile yaz\u0131ld\u0131\u011f\u0131 i\u00e7in sisteminizde Python&#8217;un kurulu olmas\u0131 gerekmektedir, ancak bu genellikle modern Linux da\u011f\u0131t\u0131mlar\u0131nda standart olarak gelir. Ayr\u0131ca, sunucunuzda `iptables` veya `firewalld` gibi bir g\u00fcvenlik duvar\u0131 yaz\u0131l\u0131m\u0131n\u0131n aktif olmas\u0131 \u00f6nemlidir, \u00e7\u00fcnk\u00fc Fail2Ban yasaklama i\u015flemleri i\u00e7in bu ara\u00e7lar\u0131 kullan\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Populer-Linux-Dagitimlarinda-Kurulum\"><\/span>Pop\u00fcler Linux Da\u011f\u0131t\u0131mlar\u0131nda Kurulum<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban, \u00e7o\u011fu Linux da\u011f\u0131t\u0131m\u0131n\u0131n standart paket depolar\u0131nda mevcuttur. Bu sayede kurulumu tek bir komutla kolayca yapabilirsiniz.<\/p>\n<h4>Debian\/Ubuntu i\u00e7in Kurulum Komutlar\u0131<\/h4>\n<p>Debian, Ubuntu veya bu da\u011f\u0131t\u0131mlar\u0131 temel alan di\u011fer sistemlerde (Linux Mint, Pop!_OS vb.) kurulum i\u00e7in `apt` paket y\u00f6neticisini kullanabilirsiniz. \u00d6ncelikle paket listesini g\u00fcncelleyin ve ard\u0131ndan Fail2Ban&#8217;i kurun:<\/p>\n<p><code>sudo apt update<\/code><br \/><code>sudo apt install fail2ban -y<\/code><\/p>\n<p>Bu komutlar, Fail2Ban&#8217;i ve gerekli t\u00fcm ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 sisteminize kuracakt\u0131r.<\/p>\n<h4>CentOS\/RHEL\/AlmaLinux i\u00e7in Kurulum Komutlar\u0131<\/h4>\n<p>CentOS, RHEL, AlmaLinux veya Fedora gibi Red Hat tabanl\u0131 da\u011f\u0131t\u0131mlarda ise `dnf` (veya eski s\u00fcr\u00fcmlerde `yum`) paket y\u00f6neticisi kullan\u0131l\u0131r. Bu sistemlerde Fail2Ban genellikle EPEL (Extra Packages for Enterprise Linux) deposunda bulunur. \u00d6nce EPEL deposunu kurun, ard\u0131ndan Fail2Ban&#8217;i y\u00fckleyin:<\/p>\n<p><code>sudo dnf install epel-release -y<\/code><br \/><code>sudo dnf install fail2ban -y<\/code><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Kurulum-Sonrasi-Servis-Durumunu-Kontrol-Etme-ve-Baslatma\"><\/span>Kurulum Sonras\u0131 Servis Durumunu Kontrol Etme ve Ba\u015flatma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Kurulum tamamland\u0131ktan sonra Fail2Ban servisi genellikle otomatik olarak ba\u015flar. Ancak bunu do\u011frulamak ve servisin her sistem ba\u015flang\u0131c\u0131nda otomatik olarak \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamak iyi bir pratiktir. A\u015fa\u011f\u0131daki komutlarla servisin durumunu kontrol edebilir, ba\u015flatabilir ve etkinle\u015ftirebilirsiniz:<\/p>\n<ul>\n<li><b>Servis Durumunu Kontrol Etme:<\/b> <code>sudo systemctl status fail2ban<\/code><\/li>\n<li><b>Servisi Ba\u015flatma:<\/b> <code>sudo systemctl start fail2ban<\/code><\/li>\n<li><b>Servisi Durdurma:<\/b> <code>sudo systemctl stop fail2ban<\/code><\/li>\n<li><b>Servisi Yeniden Ba\u015flatma:<\/b> <code>sudo systemctl restart fail2ban<\/code><\/li>\n<li><b>Sistem Ba\u015flang\u0131c\u0131nda Otomatik \u00c7al\u0131\u015fmas\u0131n\u0131 Sa\u011flama:<\/b> <code>sudo systemctl enable fail2ban<\/code><\/li>\n<\/ul>\n<p><code>systemctl status<\/code> komutunun \u00e7\u0131kt\u0131s\u0131nda &#8220;active (running)&#8221; ifadesini g\u00f6r\u00fcyorsan\u0131z, Fail2Ban ba\u015far\u0131yla kurulmu\u015f ve \u00e7al\u0131\u015f\u0131yor demektir. Art\u0131k temel yap\u0131land\u0131rma ad\u0131mlar\u0131na ge\u00e7ebilirsiniz.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Temel-Fail2Ban-Yapilandirmasi\"><\/span>Temel Fail2Ban Yap\u0131land\u0131rmas\u0131<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Fail2Ban&#8217;i kurduktan sonraki en kritik ad\u0131m, onu kendi ihtiya\u00e7lar\u0131n\u0131za g\u00f6re yap\u0131land\u0131rmakt\u0131r. Do\u011fru bir yap\u0131land\u0131rma, hem g\u00fcvenli\u011finizi en \u00fcst d\u00fczeye \u00e7\u0131kar\u0131r hem de yanl\u0131\u015fl\u0131kla me\u015fru kullan\u0131c\u0131lar\u0131 engellemenizin \u00f6n\u00fcne ge\u00e7er. Bu b\u00f6l\u00fcmde, yap\u0131land\u0131rma dosyalar\u0131n\u0131n mant\u0131\u011f\u0131n\u0131 ve temel ayarlar\u0131n nas\u0131l yap\u0131laca\u011f\u0131n\u0131 \u00f6\u011freneceksiniz.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"jailconf-ve-jaillocal-Dosyalarinin-Onemi\"><\/span>`jail.conf` ve `jail.local` Dosyalar\u0131n\u0131n \u00d6nemi<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban&#8217;in ana yap\u0131land\u0131rma dosyas\u0131 `\/etc\/fail2ban\/jail.conf`&#8217;tur. Bu dosya, t\u00fcm varsay\u0131lan ayarlar\u0131 ve kullan\u0131labilecek t\u00fcm hapishanelerin (jails) \u00f6rneklerini i\u00e7erir. Ancak, bu dosyay\u0131 <b>do\u011frudan d\u00fczenlemek kesinlikle \u00f6nerilmez<\/b>. \u00c7\u00fcnk\u00fc Fail2Ban g\u00fcncellendi\u011finde, bu dosyan\u0131n \u00fczerine yenisi yaz\u0131labilir ve yapt\u0131\u011f\u0131n\u0131z t\u00fcm de\u011fi\u015fiklikler kaybolur. Bunun yerine, t\u00fcm \u00f6zel yap\u0131land\u0131rmalar\u0131m\u0131z\u0131 `\/etc\/fail2ban\/jail.local` ad\u0131nda yeni bir dosyada yapaca\u011f\u0131z. Fail2Ban, \u00f6nce `.conf` dosyas\u0131n\u0131 okur, ard\u0131ndan `.local` dosyas\u0131ndaki ayarlar\u0131 okuyarak `.conf` dosyas\u0131ndaki ilgili ayarlar\u0131 ezer. Bu sayede, yap\u0131land\u0131rman\u0131z g\u00fcncellemelere kar\u015f\u0131 g\u00fcvende olur.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"jaillocal-Dosyasini-Olusturma\"><\/span>`jail.local` Dosyas\u0131n\u0131 Olu\u015fturma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0130\u015fe, `jail.conf` dosyas\u0131n\u0131 `jail.local` olarak kopyalayarak ba\u015flayabiliriz. Bu, t\u00fcm varsay\u0131lan ayarlar\u0131 i\u00e7eren bir temel \u00fczerinde \u00e7al\u0131\u015fmam\u0131z\u0131 sa\u011flar. Ancak daha temiz bir yakla\u015f\u0131m, sadece de\u011fi\u015ftirmek istedi\u011fimiz ayarlar\u0131 i\u00e7eren bo\u015f bir `jail.local` dosyas\u0131 olu\u015fturmakt\u0131r. Biz ikinci ve daha profesyonel olan y\u00f6ntemi kullanaca\u011f\u0131z. A\u015fa\u011f\u0131daki komutla bo\u015f bir `jail.local` dosyas\u0131 olu\u015fturun ve bir metin d\u00fczenleyici ile a\u00e7\u0131n (\u00f6rne\u011fin, nano):<\/p>\n<p><code>sudo cp \/etc\/fail2ban\/jail.conf \/etc\/fail2ban\/jail.local<\/code><br \/><code>sudo nano \/etc\/fail2ban\/jail.local<\/code><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Genel-Yapilandirma-Ayarlari-DEFAULT-Bolumu\"><\/span>Genel Yap\u0131land\u0131rma Ayarlar\u0131 ([DEFAULT] B\u00f6l\u00fcm\u00fc)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>`jail.local` dosyas\u0131n\u0131n en \u00fcst\u00fcnde bulunan `[DEFAULT]` b\u00f6l\u00fcm\u00fc, t\u00fcm hapishaneler i\u00e7in ge\u00e7erli olacak genel ayarlar\u0131 i\u00e7erir. Bir hapishanede \u00f6zel olarak belirtilmedi\u011fi s\u00fcrece, buradaki de\u011ferler kullan\u0131l\u0131r. Bu, yap\u0131land\u0131rmay\u0131 olduk\u00e7a basitle\u015ftirir.<\/p>\n<div class=\"karsilastirma\">\n<table>\n<caption>Fail2Ban [DEFAULT] B\u00f6l\u00fcm\u00fc Parametreleri<\/caption>\n<thead>\n<tr>\n<th>Parametre<\/th>\n<th>A\u00e7\u0131klama<\/th>\n<th>\u00d6rnek De\u011fer<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>ignoreip<\/strong><\/td>\n<td>Asla engellenmeyecek g\u00fcvenilir IP adreslerinin listesi. Kendi statik IP&#8217;nizi eklemek i\u00e7in idealdir.<\/td>\n<td><code>127.0.0.1\/8 ::1 192.168.1.10<\/code><\/td>\n<\/tr>\n<tr>\n<td><strong>bantime<\/strong><\/td>\n<td>Bir IP adresinin ne kadar s\u00fcreyle engellenece\u011fini saniye cinsinden belirtir.<\/td>\n<td><code>1h<\/code> (1 saat), <code>1d<\/code> (1 g\u00fcn)<\/td>\n<\/tr>\n<tr>\n<td><strong>findtime<\/strong><\/td>\n<td>Hatal\u0131 denemelerin say\u0131laca\u011f\u0131 zaman aral\u0131\u011f\u0131. Bu s\u00fcre i\u00e7inde `maxretry` a\u015f\u0131l\u0131rsa engelleme uygulan\u0131r.<\/td>\n<td><code>10m<\/code> (10 dakika)<\/td>\n<\/tr>\n<tr>\n<td><strong>maxretry<\/strong><\/td>\n<td>`findtime` s\u00fcresi i\u00e7inde izin verilen maksimum hatal\u0131 deneme say\u0131s\u0131.<\/td>\n<td><code>5<\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h4>`ignoreip`: G\u00fcvenilir IP Adreslerini Beyaz Listeye Alma<\/h4>\n<p>Bu parametre en \u00f6nemlilerinden biridir. Kendi ev veya ofis IP adresinizi, sunucunuzun kendi IP adresini (localhost) ve di\u011fer g\u00fcvenilir IP&#8217;leri buraya ekleyerek yanl\u0131\u015fl\u0131kla kendinizi sistemden atman\u0131z\u0131 \u00f6nlersiniz. IP adresleri bo\u015flukla ayr\u0131larak yaz\u0131l\u0131r.<\/p>\n<p>\u00d6rnek: <code>ignoreip = 127.0.0.1\/8 ::1 88.55.123.45<\/code><\/p>\n<h4>`bantime`: Yasaklama S\u00fcresini Belirleme<\/h4>\n<p>Bir IP adresi engellendi\u011finde ne kadar s\u00fcreyle eri\u015fiminin kesilece\u011fini belirler. De\u011fer saniye cinsindendir, ancak `m` (dakika), `h` (saat), `d` (g\u00fcn) gibi k\u0131saltmalar da kullanabilirsiniz. \u00c7ok k\u0131sa s\u00fcreler botlar\u0131n tekrar denemesine izin verir, \u00e7ok uzun s\u00fcreler ise yanl\u0131\u015fl\u0131kla engellenen ger\u00e7ek kullan\u0131c\u0131lar\u0131 ma\u011fdur edebilir. Genellikle `1h` (1 saat) iyi bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r.<\/p>\n<p>\u00d6rnek: <code>bantime = 1h<\/code><\/p>\n<h4>`findtime`: G\u00f6zlem S\u00fcresini Ayarlama<\/h4>\n<p>Fail2Ban&#8217;in hatal\u0131 denemeleri sayaca\u011f\u0131 zaman penceresidir. \u00d6rne\u011fin `findtime = 10m` ve `maxretry = 5` olarak ayarland\u0131ysa, bir IP adresi 10 dakika i\u00e7inde 5&#8217;ten fazla hatal\u0131 deneme yaparsa engellenir. E\u011fer 10 dakika i\u00e7inde 4 deneme yapar ve sonra durursa, saya\u00e7 s\u0131f\u0131rlan\u0131r.<\/p>\n<p>\u00d6rnek: <code>findtime = 10m<\/code><\/p>\n<h4>`maxretry`: Maksimum Hatal\u0131 Deneme Say\u0131s\u0131n\u0131 Belirleme<\/h4>\n<p>`findtime` s\u00fcresi i\u00e7inde bir IP adresinin yapabilece\u011fi maksimum hatal\u0131 deneme say\u0131s\u0131d\u0131r. Bu e\u015fik a\u015f\u0131ld\u0131\u011f\u0131nda yasaklama eylemi tetiklenir. SSH gibi kritik servisler i\u00e7in bu say\u0131y\u0131 `3` veya `5` gibi d\u00fc\u015f\u00fck bir de\u011ferde tutmak g\u00fcvenli\u011fi art\u0131r\u0131r.<\/p>\n<p>\u00d6rnek: <code>maxretry = 5<\/code><\/p>\n<p>Bu temel ayarlar\u0131 `jail.local` dosyan\u0131zdaki `[DEFAULT]` b\u00f6l\u00fcm\u00fcne ekledikten sonra dosyay\u0131 kaydedip Fail2Ban servisini yeniden ba\u015flatarak de\u011fi\u015fiklikleri uygulayabilirsiniz: <code>sudo systemctl restart fail2ban<\/code><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Web-Sitenizi-Korumak-Icin-Ozel-Jail-Yapilandirmalari\"><\/span>Web Sitenizi Korumak \u0130\u00e7in \u00d6zel Jail Yap\u0131land\u0131rmalar\u0131<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Temel ayarlar\u0131 yapt\u0131ktan sonra, sunucunuzdaki belirli servisleri ve web uygulamalar\u0131n\u0131 korumak i\u00e7in \u00f6zel &#8220;hapishaneler&#8221; (jails) etkinle\u015ftirebilirsiniz. Her jail, belirli bir sald\u0131r\u0131 vekt\u00f6r\u00fcne odaklanarak koruman\u0131z\u0131 katmanl\u0131 hale getirir. Bu yap\u0131land\u0131rmalar\u0131n t\u00fcm\u00fc yine `jail.local` dosyas\u0131 i\u00e7inde yap\u0131l\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"SSH-Portunu-Brute-Force-Saldirilarindan-Koruma-sshd-Jaili\"><\/span>SSH Portunu Brute Force Sald\u0131r\u0131lar\u0131ndan Koruma (`sshd` Jail&#8217;i)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Sunucu y\u00f6netiminin temel ta\u015f\u0131 olan SSH, sald\u0131rganlar\u0131n en \u00e7ok hedefledi\u011fi servislerden biridir. `sshd` jail&#8217;ini aktif etmek, sunucu g\u00fcvenli\u011fi i\u00e7in at\u0131lmas\u0131 gereken ilk ad\u0131md\u0131r. `jail.local` dosyan\u0131zda `[sshd]` ba\u015fl\u0131\u011f\u0131n\u0131 bulun (veya yoksa olu\u015fturun) ve alt\u0131na `enabled = true` sat\u0131r\u0131n\u0131 ekleyin.<\/p>\n<p><code>[sshd]<\/code><br \/><code>enabled = true<\/code><br \/><code># Bu jail'e \u00f6zel ayarlar ekleyebilirsiniz. \u00d6rne\u011fin:<\/code><br \/><code># maxretry = 3<\/code><br \/><code># bantime = 1d<\/code><\/p>\n<p>Bu basit ekleme, `[DEFAULT]` ayarlar\u0131n\u0131 kullanarak SSH giri\u015f denemelerini izlemeye ba\u015flayacakt\u0131r. Dilerseniz, yukar\u0131daki yorum sat\u0131rlar\u0131nda oldu\u011fu gibi, bu jail&#8217;e \u00f6zel `maxretry` veya `bantime` de\u011ferleri atayarak genel ayarlar\u0131 ezebilirsiniz.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"WordPress-Giris-Sayfasini-Koruma\"><\/span>WordPress Giri\u015f Sayfas\u0131n\u0131 Koruma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>WordPress, pop\u00fclerli\u011fi nedeniyle Brute Force sald\u0131r\u0131lar\u0131n\u0131n birincil hedeflerindendir. Sald\u0131rganlar s\u00fcrekli olarak `wp-login.php` dosyas\u0131n\u0131 hedef alarak y\u00f6netici paneline s\u0131zmaya \u00e7al\u0131\u015f\u0131r. Fail2Ban ile bu sald\u0131r\u0131lar\u0131 etkili bir \u015fekilde engelleyebilirsiniz. Bunun i\u00e7in iki ad\u0131ml\u0131 bir s\u00fcre\u00e7 izleyece\u011fiz.<\/p>\n<h4>WordPress Giri\u015f Hatalar\u0131 \u0130\u00e7in \u00d6zel Filtre (`wordpress-hard.conf`) Olu\u015fturma<\/h4>\n<p>Fail2Ban&#8217;in standart filtreleri aras\u0131nda WordPress i\u00e7in temel bir filtre bulunsa da, genellikle daha sa\u011flam ve \u00f6zelle\u015ftirilmi\u015f bir filtre kullanmak daha etkilidir. `\/etc\/fail2ban\/filter.d\/` dizini alt\u0131nda `wordpress-hard.conf` ad\u0131nda yeni bir dosya olu\u015fturun:<\/p>\n<p><code>sudo nano \/etc\/fail2ban\/filter.d\/wordpress-hard.conf<\/code><\/p>\n<p>\u0130\u00e7ine a\u015fa\u011f\u0131daki i\u00e7eri\u011fi yap\u0131\u015ft\u0131r\u0131n. Bu filtre, WordPress&#8217;in kimlik do\u011frulama hatalar\u0131n\u0131 yakalamak i\u00e7in tasarlanm\u0131\u015ft\u0131r:<\/p>\n<p><code>[Definition]<\/code><br \/><code>failregex = ^&lt;HOST&gt; .* \"POST .*wp-login.php<\/code><br \/><code>ignoreregex =<\/code><\/p>\n<h4>`jail.local` Dosyas\u0131nda WordPress Jail&#8217;ini Aktif Etme<\/h4>\n<p>\u015eimdi, olu\u015fturdu\u011fumuz bu filtreyi kullanacak bir jail tan\u0131mlamal\u0131y\u0131z. `jail.local` dosyan\u0131z\u0131n sonuna a\u015fa\u011f\u0131daki blo\u011fu ekleyin:<\/p>\n<p><code>[wordpress-hard]<\/code><br \/><code>enabled = true<\/code><br \/><code>port = http,https<\/code><br \/><code>filter = wordpress-hard<\/code><br \/><code>logpath = \/var\/log\/nginx\/access.log<\/code><br \/><code># E\u011fer Apache kullan\u0131yorsan\u0131z: logpath = \/var\/log\/apache2\/access.log<\/code><br \/><code>maxretry = 3<\/code><br \/><code>bantime = 1h<\/code><\/p>\n<p>Burada `logpath` direktifinin sunucu yap\u0131land\u0131rman\u0131za (Nginx veya Apache) ve log dosyalar\u0131n\u0131z\u0131n konumuna g\u00f6re do\u011fru ayarland\u0131\u011f\u0131ndan emin olun. Bu yap\u0131land\u0131rma, bir IP adresinin `wp-login.php`&#8217;ye 3 hatal\u0131 giri\u015f denemesi yapmas\u0131 durumunda 1 saatli\u011fine engellenmesini sa\u011flar. Kulland\u0131\u011f\u0131n\u0131z <a href=\"https:\/\/www.ihs.com.tr\/web-hosting\/wordpress-hosting.html\" target=\"_blank\">WordPress hosting<\/a> paketinin log dosya yollar\u0131n\u0131 kontrol etmeniz \u00f6nemlidir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Diger-Web-Uygulamalari-Joomla-Drupal-vb-Icin-Koruma-Stratejileri\"><\/span>Di\u011fer Web Uygulamalar\u0131 (Joomla, Drupal vb.) \u0130\u00e7in Koruma Stratejileri<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Benzer bir mant\u0131kla Joomla, Drupal veya di\u011fer CMS&#8217;lerin y\u00f6netim panellerini de koruyabilirsiniz. Yapman\u0131z gereken, ilgili uygulaman\u0131n hatal\u0131 giri\u015f denemelerini nas\u0131l loglad\u0131\u011f\u0131n\u0131 bulmak, bu log sat\u0131rlar\u0131na uygun bir filtre (regex) yazmak ve `jail.local` dosyas\u0131nda yeni bir jail tan\u0131mlamakt\u0131r. Topluluk taraf\u0131ndan olu\u015fturulmu\u015f bir\u00e7ok haz\u0131r filtreyi Fail2Ban&#8217;in GitHub sayfas\u0131nda veya \u00e7e\u015fitli forumlarda bulabilirsiniz.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Web-Sunucusu-NginxApache-Loglari-Uzerinden-Kotu-Amacli-Botlari-Engelleme\"><\/span>Web Sunucusu (Nginx\/Apache) Loglar\u0131 \u00dczerinden K\u00f6t\u00fc Ama\u00e7l\u0131 Botlar\u0131 Engelleme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban sadece giri\u015f denemelerini de\u011fil, ayn\u0131 zamanda sitenizde var olmayan sayfalar\u0131 tarayan, zafiyet arayan veya agresif \u015fekilde i\u00e7erik \u00e7eken botlar\u0131 da engelleyebilir. Bu botlar genellikle sunucu loglar\u0131nda \u00e7ok say\u0131da 404 (Not Found) hatas\u0131 veya 403 (Forbidden) hatas\u0131 b\u0131rak\u0131r.<\/p>\n<h4>Nginx 404 Hatalar\u0131 \u0130\u00e7in Jail Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>S\u00fcrekli olarak var olmayan dosyalar\u0131 (\u00f6rne\u011fin, `wp-config.php.bak`) arayan botlar\u0131 engellemek i\u00e7in Nginx&#8217;in 404 hatalar\u0131n\u0131 izleyebilirsiniz. `jail.local` dosyan\u0131za ekleyin:<\/p>\n<p><code>[nginx-http-auth]<\/code><br \/><code>enabled = true<\/code><br \/><code>port = http,https<\/code><br \/><code>logpath = \/var\/log\/nginx\/error.log<\/code><\/p>\n<p>Bu jail, Fail2Ban ile birlikte gelen standart `nginx-http-auth` filtresini kullan\u0131r.<\/p>\n<h4>Apache Yetkilendirme Hatalar\u0131 \u0130\u00e7in Jail Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>Apache sunucularda, `.htaccess` ile korunan dizinlere yetkisiz eri\u015fim denemelerini engellemek i\u00e7in standart `apache-auth` jail&#8217;ini kullanabilirsiniz:<\/p>\n<p><code>[apache-auth]<\/code><br \/><code>enabled = true<\/code><br \/><code>port = http,https<\/code><br \/><code>logpath = \/var\/log\/apache2\/error.log<\/code><br \/><code>maxretry = 3<\/code><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Yapilandirma-Degisikliklerini-Uygulama-ve-Test-Etme\"><\/span>Yap\u0131land\u0131rma De\u011fi\u015fikliklerini Uygulama ve Test Etme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>`jail.local` dosyas\u0131nda yapt\u0131\u011f\u0131n\u0131z her de\u011fi\u015fiklikten sonra, yap\u0131land\u0131rman\u0131n ge\u00e7erli oldu\u011fundan emin olmak ve uygulamak i\u00e7in Fail2Ban servisini yeniden ba\u015flatmal\u0131s\u0131n\u0131z:<\/p>\n<p><code>sudo systemctl restart fail2ban<\/code><\/p>\n<p>Yap\u0131land\u0131rman\u0131zda bir s\u00f6zdizimi hatas\u0131 (syntax error) varsa, servis ba\u015flamayacakt\u0131r. Bu durumda `sudo systemctl status fail2ban` veya `journalctl -u fail2ban` komutlar\u0131yla hatan\u0131n kayna\u011f\u0131n\u0131 \u00f6\u011frenebilirsiniz.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Fail2Ban-Yonetimi-ve-Izleme\"><\/span>Fail2Ban Y\u00f6netimi ve \u0130zleme<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Fail2Ban&#8217;i kurup yap\u0131land\u0131rd\u0131ktan sonra, sistemin d\u00fczg\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak ve gerekti\u011finde manuel m\u00fcdahalelerde bulunmak i\u00e7in onu nas\u0131l y\u00f6netece\u011finizi ve izleyece\u011finizi bilmeniz gerekir. Fail2Ban, bu i\u015flemler i\u00e7in `fail2ban-client` ad\u0131nda g\u00fc\u00e7l\u00fc bir komut sat\u0131r\u0131 arac\u0131 sunar.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"fail2ban-client-Komut-Satiri-Aracinin-Kullanimi\"><\/span>`fail2ban-client` Komut Sat\u0131r\u0131 Arac\u0131n\u0131n Kullan\u0131m\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>`fail2ban-client`, Fail2Ban servisiyle etkile\u015fim kurman\u0131z\u0131 sa\u011flayan bir aray\u00fczd\u00fcr. Bu ara\u00e7 sayesinde servis durumunu kontrol edebilir, aktif hapishaneleri g\u00f6rebilir, IP adreslerini engelleyebilir veya engeli kald\u0131rabilirsiniz. Komutlar\u0131n \u00e7o\u011fu `sudo fail2ban-client <komut>` \u015feklinde \u00e7al\u0131\u015ft\u0131r\u0131l\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Aktif-Jaillerin-Durumunu-Kontrol-Etme\"><\/span>Aktif Jail&#8217;lerin Durumunu Kontrol Etme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Hangi hapishanelerin aktif oldu\u011funu ve her birinin o anki durumunu g\u00f6rmek i\u00e7in `status` komutunu kullanabilirsiniz. Bu komut, hangi hapishanelerin \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 listeler.<\/p>\n<p><code>sudo fail2ban-client status<\/code><\/p>\n<p>Belirli bir hapishanenin daha detayl\u0131 durumunu (\u00f6rne\u011fin, o ana kadar ka\u00e7 tane hatal\u0131 deneme tespit etti\u011fi ve ka\u00e7 IP&#8217;yi engelledi\u011fi) g\u00f6rmek isterseniz, hapishane ad\u0131n\u0131 belirtmeniz yeterlidir:<\/p>\n<p><code>sudo fail2ban-client status sshd<\/code><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Engellenen-Banlanan-IP-Adreslerini-Listeleme\"><\/span>Engellenen (Banlanan) IP Adreslerini Listeleme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Belirli bir hapishane taraf\u0131ndan o anda engellenmi\u015f olan t\u00fcm IP adreslerinin listesini g\u00f6rmek i\u00e7in, yine hapishane ad\u0131yla `status` komutunu kullanabilirsiniz. \u00c7\u0131kt\u0131da &#8220;Banned IP list&#8221; alt\u0131nda bu adresleri bulacaks\u0131n\u0131z.<\/p>\n<p>\u00d6rne\u011fin, `sshd` jail&#8217;inin engelledi\u011fi IP&#8217;leri g\u00f6rmek i\u00e7in:<\/p>\n<p><code>sudo fail2ban-client status sshd<\/code><\/p>\n<p>Bu, \u00f6zellikle bir servise eri\u015fim sorunu ya\u015fayan me\u015fru bir kullan\u0131c\u0131n\u0131n yanl\u0131\u015fl\u0131kla engellenip engellenmedi\u011fini kontrol etmek i\u00e7in kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Bir-IP-Adresinin-Engelini-Manuel-Olarak-Kaldirma-Unban\"><\/span>Bir IP Adresinin Engelini Manuel Olarak Kald\u0131rma (Unban)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Yanl\u0131\u015fl\u0131kla bir IP adresini (belki de kendi dinamik IP&#8217;nizi) engellediyseniz, `unban` komutuyla bu engeli kolayca kald\u0131rabilirsiniz. Bu i\u015flem i\u00e7in hem hapishane ad\u0131n\u0131 hem de engeli kald\u0131r\u0131lacak IP adresini belirtmeniz gerekir.<\/p>\n<p>\u00d6rnek olarak `192.168.1.5` IP adresinin `sshd` jail&#8217;indeki engelini kald\u0131rmak i\u00e7in:<\/p>\n<p><code>sudo fail2ban-client unban --all 192.168.1.5<\/code><br \/>\nVeya sadece belirli bir jail&#8217;den kald\u0131rmak i\u00e7in:<\/p>\n<p><code>sudo fail2ban-client set sshd unbanip 192.168.1.5<\/code><\/p>\n<p>`&#8211;all` parametresi, belirtilen IP adresini t\u00fcm hapishanelerdeki engellerden kald\u0131r\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Fail2Ban-Log-Dosyalarini-Inceleme-ve-Analiz-Etme\"><\/span>Fail2Ban Log Dosyalar\u0131n\u0131 \u0130nceleme ve Analiz Etme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban, kendi eylemlerini `\/var\/log\/fail2ban.log` dosyas\u0131na kaydeder. Bu log dosyas\u0131, hangi IP adresinin, ne zaman, hangi hapishane taraf\u0131ndan ve neden engellendi\u011fi gibi de\u011ferli bilgiler i\u00e7erir. Bir sorunla kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131zda veya sistemin nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 daha derinlemesine anlamak istedi\u011finizde bu dosyay\u0131 incelemek \u00e7ok faydal\u0131d\u0131r.<\/p>\n<p>Log dosyas\u0131n\u0131 canl\u0131 olarak izlemek i\u00e7in `tail` komutunu kullanabilirsiniz:<\/p>\n<p><code>sudo tail -f \/var\/log\/fail2ban.log<\/code><\/p>\n<p>Bu komut, dosyaya eklenen yeni sat\u0131rlar\u0131 anl\u0131k olarak ekran\u0131n\u0131za basar, b\u00f6ylece Fail2Ban&#8217;in eylemlerini ger\u00e7ek zamanl\u0131 olarak g\u00f6rebilirsiniz. Sunucunuzda <a href=\"https:\/\/www.ihs.com.tr\/sunucu-kiralama\/vds-sunucu.html\" target=\"_blank\">VDS<\/a> kullan\u0131yorsan\u0131z, log dosyalar\u0131n\u0131n analizi performans optimizasyonu i\u00e7in de \u00f6nemlidir.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Ileri-Seviye-Ipuclari-ve-En-Iyi-Uygulamalar\"><\/span>\u0130leri Seviye \u0130pu\u00e7lar\u0131 ve En \u0130yi Uygulamalar<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Temel kurulum ve y\u00f6netimi \u00f6\u011frendikten sonra, Fail2Ban&#8217;in g\u00fcc\u00fcn\u00fc daha da art\u0131rmak ve \u00f6zel ihtiya\u00e7lar\u0131n\u0131za g\u00f6re \u015fekillendirmek i\u00e7in baz\u0131 ileri seviye teknikleri ve en iyi uygulamalar\u0131 devreye sokabilirsiniz. Bu ipu\u00e7lar\u0131, savunma mekanizman\u0131z\u0131 daha esnek, bilgilendirici ve etkili hale getirecektir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Yasaklama-Eylemini-Ozellestirme-Orn-Sadece-Port-Engelleme\"><\/span>Yasaklama Eylemini \u00d6zelle\u015ftirme (\u00d6rn: Sadece Port Engelleme)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Varsay\u0131lan olarak Fail2Ban, bir IP adresinden gelen t\u00fcm trafi\u011fi engeller (DROP veya REJECT). Ancak bazen bu \u00e7ok k\u0131s\u0131tlay\u0131c\u0131 olabilir. \u00d6rne\u011fin, bir bot web sitenize sald\u0131r\u0131yor olabilir, ancak ayn\u0131 IP adresini kullanan me\u015fru bir kullan\u0131c\u0131 e-posta servislerinizi kullanmak isteyebilir. Bu durumda, sadece sald\u0131r\u0131n\u0131n ger\u00e7ekle\u015fti\u011fi portu (\u00f6rne\u011fin 80 ve 443) engellemek daha mant\u0131kl\u0131d\u0131r. Bunu yapmak i\u00e7in, `action.d` dizininde mevcut eylemlerden birini kopyalay\u0131p \u00f6zelle\u015ftirebilir ve `jail.local` dosyan\u0131zda bu yeni eylemi belirtebilirsiniz.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"E-posta-Bildirimlerini-Aktif-Hale-Getirme\"><\/span>E-posta Bildirimlerini Aktif Hale Getirme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban, bir IP adresini engelledi\u011finde size e-posta ile bildirim g\u00f6nderebilir. Bu, sunucunuzda olup bitenlerden an\u0131nda haberdar olman\u0131z\u0131 sa\u011flar. Bu \u00f6zelli\u011fi aktif etmek i\u00e7in `jail.local` dosyan\u0131zda `[DEFAULT]` b\u00f6l\u00fcm\u00fcne veya ilgili jail&#8217;e a\u015fa\u011f\u0131daki ayarlar\u0131 eklemeniz gerekir:<\/p>\n<ul>\n<li><b>destemail:<\/b> Bildirimlerin g\u00f6nderilece\u011fi e-posta adresi.<\/li>\n<li><b>sender:<\/b> G\u00f6nderen e-posta adresi.<\/li>\n<li><b>action:<\/b> Varsay\u0131lan engelleme eylemi yerine bildirim de g\u00f6nderen bir eylem se\u00e7ilir. \u00d6rne\u011fin `%(action_mw)s` hem engeller hem de `whois` bilgisiyle birlikte e-posta g\u00f6nderir. `%(action_mwl)s` ise ek olarak ilgili log sat\u0131rlar\u0131n\u0131 da e-postaya ekler.<\/li>\n<\/ul>\n<p>\u00d6rnek yap\u0131land\u0131rma:<br \/><code>destemail = admin@example.com<\/code><br \/><code>sender = fail2ban@sunucum.com<\/code><br \/><code>action = %(action_mwl)s<\/code><\/p>\n<p>Bu ayarlar\u0131 yapabilmek i\u00e7in sunucunuzda `sendmail` gibi bir posta transfer arac\u0131s\u0131n\u0131n (MTA) kurulu ve yap\u0131land\u0131r\u0131lm\u0131\u015f olmas\u0131 gerekti\u011fini unutmay\u0131n.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Cloudflare-Gibi-Servislerle-Fail2Ban-Entegrasyonu\"><\/span>Cloudflare Gibi Servislerle Fail2Ban Entegrasyonu<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>E\u011fer web sitenizde Cloudflare gibi bir CDN (Content Delivery Network) veya WAF (Web Application Firewall) kullan\u0131yorsan\u0131z, Fail2Ban&#8217;in do\u011frudan sald\u0131rgan IP&#8217;sini engellemesi i\u015fe yaramayabilir, \u00e7\u00fcnk\u00fc t\u00fcm trafik Cloudflare IP&#8217;leri \u00fczerinden gelir. Bu durumda, Fail2Ban&#8217;in Cloudflare API&#8217;sini kullanarak sald\u0131rgan IP&#8217;sini do\u011frudan Cloudflare seviyesinde engellemesini sa\u011flamak gerekir. Bu entegrasyon i\u00e7in topluluk taraf\u0131ndan geli\u015ftirilmi\u015f \u00f6zel &#8220;action&#8221; betikleri mevcuttur. Bu betikler, Fail2Ban bir sald\u0131r\u0131 tespit etti\u011finde sunucunuzun g\u00fcvenlik duvar\u0131 yerine Cloudflare API&#8217;sine bir istek g\u00f6ndererek IP&#8217;yi k\u00fcresel olarak engeller.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Kalici-Yasaklamalar-Persistent-Bans-ve-Riskleri\"><\/span>Kal\u0131c\u0131 Yasaklamalar (Persistent Bans) ve Riskleri<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Fail2Ban, sunucu yeniden ba\u015flad\u0131\u011f\u0131nda engellenen IP listesini s\u0131f\u0131rlar. Engellerin yeniden ba\u015flatmalardan sonra da devam etmesini isterseniz, kal\u0131c\u0131 yasaklamalar\u0131 etkinle\u015ftirmeniz gerekir. Bu genellikle `fail2ban-persistent` gibi ek paketler veya `iptables-persistent` arac\u0131 ile sa\u011flan\u0131r. Ancak bu yakla\u015f\u0131m\u0131n riskleri vard\u0131r. Yanl\u0131\u015fl\u0131kla engellenen me\u015fru bir IP adresi, sunucu yeniden ba\u015flasa bile engelli kal\u0131r ve sorunun tespiti zorla\u015fabilir. Bu nedenle, kal\u0131c\u0131 yasaklamalar\u0131 kullan\u0131rken \u00e7ok dikkatli olmal\u0131 ve `ignoreip` listenizin g\u00fcncel oldu\u011fundan emin olmal\u0131s\u0131n\u0131z. Ayr\u0131ca, g\u00fcvenilir bir <a href=\"https:\/\/www.ihs.com.tr\/ssl\/\" target=\"_blank\">SSL sertifikas\u0131<\/a> kullan\u0131m\u0131, g\u00fcvenli\u011finizi art\u0131rarak bu t\u00fcr \u00f6nlemlere olan ihtiyac\u0131 dengeleyebilir.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Guvenli-Sunucu-Yonetimi-ve-Fail2Ban-Kurulumu-Icin-Neden-IHS-Telekomu-Tercih-Etmelisiniz\"><\/span>G\u00fcvenli Sunucu Y\u00f6netimi ve Fail2Ban Kurulumu \u0130\u00e7in Neden \u0130HS Telekom&#8217;u Tercih Etmelisiniz?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Fail2Ban gibi g\u00fc\u00e7l\u00fc bir arac\u0131 kurmak ve y\u00f6netmek, siber g\u00fcvenli\u011fe at\u0131lan \u00f6nemli bir ad\u0131md\u0131r. Ancak etkili bir koruma, sadece yaz\u0131l\u0131mlarla de\u011fil, ayn\u0131 zamanda bu yaz\u0131l\u0131mlar\u0131n \u00fczerinde \u00e7al\u0131\u015ft\u0131\u011f\u0131 altyap\u0131n\u0131n kalitesi ve sa\u011flanan teknik destekle de do\u011frudan ili\u015fkilidir. G\u00fc\u00e7l\u00fc bir <a href=\"https:\/\/www.ihs.com.tr\/sunucu-kiralama\/\" target=\"_blank\">sunucu<\/a> altyap\u0131s\u0131, g\u00fcvenlik yaz\u0131l\u0131mlar\u0131n\u0131z\u0131n performans\u0131n\u0131 en \u00fcst d\u00fczeye \u00e7\u0131kar\u0131r.<\/p>\n<p>\u0130HS Telekom, y\u0131llar\u0131n tecr\u00fcbesiyle sundu\u011fu <a href=\"https:\/\/www.ihs.com.tr\/web-hosting\/\" target=\"_blank\">hosting<\/a> ve sunucu \u00e7\u00f6z\u00fcmleriyle dijital varl\u0131klar\u0131n\u0131z i\u00e7in sa\u011flam bir temel olu\u015fturur. \u0130ster payla\u015f\u0131ml\u0131 bir hosting, ister esnek bir <a href=\"https:\/\/www.ihs.com.tr\/sunucu-kiralama\/vps-server.html\" target=\"_blank\">VPS<\/a>, isterseniz de tam kontrol sa\u011flayan fiziksel bir sunucu aray\u0131\u015f\u0131nda olun, \u0130HS Telekom ihtiya\u00e7lar\u0131n\u0131za uygun, y\u00fcksek performansl\u0131 ve g\u00fcvenli bir altyap\u0131 sunar. \u00d6zellikle sundu\u011fumuz <a href=\"https:\/\/www.ihs.com.tr\/web-hosting\/linux-hosting.html\" target=\"_blank\">Linux hosting<\/a> paketleri, Fail2Ban gibi ara\u00e7lar\u0131 kolayca kurup y\u00f6netmenize olanak tan\u0131r. Ayr\u0131ca, teknik bir sorunla kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131zda veya Fail2Ban gibi bir arac\u0131n kurulumu ve yap\u0131land\u0131rmas\u0131 konusunda yard\u0131ma ihtiya\u00e7 duydu\u011funuzda, 7\/24 ula\u015fabilece\u011finiz uzman teknik destek ekibimiz her zaman yan\u0131n\u0131zdad\u0131r. Sunucu y\u00f6netimi ve g\u00fcvenli\u011fi konusundaki y\u00fck\u00fc omuzlar\u0131n\u0131zdan alarak, sizin sadece i\u015finize odaklanman\u0131z\u0131 sa\u011fl\u0131yoruz. Web sitenizin ve verilerinizin g\u00fcvenli\u011fini \u0130HS Telekom&#8217;un sa\u011flam altyap\u0131s\u0131 ve uzman deste\u011fi ile g\u00fcvence alt\u0131na al\u0131n.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Web siteleri ve sunucular, dijital d\u00fcnyan\u0131n kap\u0131lar\u0131 olarak her an say\u0131s\u0131z tehdide maruz kal\u0131r. Bu tehditlerin en yayg\u0131n ve \u0131srarc\u0131 olanlar\u0131ndan biri&hellip;<\/p>\n","protected":false},"author":3,"featured_media":16490,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[399],"tags":[],"class_list":["post-16489","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-webhosting"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts\/16489","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/comments?post=16489"}],"version-history":[{"count":1,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts\/16489\/revisions"}],"predecessor-version":[{"id":16491,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts\/16489\/revisions\/16491"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/media\/16490"}],"wp:attachment":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/media?parent=16489"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/categories?post=16489"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/tags?post=16489"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}