{"id":505,"date":"2026-04-01T21:22:28","date_gmt":"2026-04-01T18:22:28","guid":{"rendered":"https:\/\/m4.ist\/index.php\/2026\/04\/01\/fail2ban-firewall-kurulumu-fail2ban-firewall-gerek\/"},"modified":"2026-04-01T21:22:28","modified_gmt":"2026-04-01T18:22:28","slug":"fail2ban-firewall-kurulumu-fail2ban-firewall-gerek","status":"publish","type":"post","link":"https:\/\/m4.ist\/index.php\/2026\/04\/01\/fail2ban-firewall-kurulumu-fail2ban-firewall-gerek\/","title":{"rendered":"Fail2Ban firewall kurulumu: 7 Ad\u0131mda G\u00fcvenli Sunucu"},"content":{"rendered":"<h1>Fail2Ban &amp; Firewall ile G\u00fcvenli Sunucu Olu\u015fturma Rehberi<\/h1>\n<p><strong>Fail2Ban &amp; Firewall<\/strong> ile sunucunuzu savunman\u0131n en h\u0131zl\u0131 ve etkili yoluna ad\u0131m at\u0131n! Sisteminizde olu\u015fabilecek brute\u2011force sald\u0131r\u0131lar\u0131n\u0131 an\u0131nda tespit edip, <strong>Fail2Ban &amp; Firewall<\/strong> kombinasyonu sayesinde sald\u0131rganlar\u0131 ger\u00e7ek zamanl\u0131 engelleyin. Bu rehber, ad\u0131m ad\u0131m ilerleyerek, hem yeni ba\u015flayanlar\u0131n hem de deneyimli y\u00f6neticilerin sistemlerini g\u00fcvenli bir kalkanla \u00e7evrelemesini sa\u011flayacak. Hadi, siber tehditlere kar\u015f\u0131 cesur bir savunma ba\u015flatal\u0131m!<\/p>\n<h2>Konu Nedir<\/h2>\n<p><strong>Fail2Ban &amp; Firewall<\/strong> ne demek? Basit\u00e7e, sistem loglar\u0131n\u0131 tarayan ve ba\u015far\u0131s\u0131z oturum giri\u015flerini tespit eden <strong>Fail2Ban<\/strong> ile a\u011f katman\u0131nda gelen trafi\u011fi filtreleyen <strong>Firewall<\/strong> (\u00f6rne\u011fin UFW, iptables veya firewalld) birle\u015fimi. Log dosyalar\u0131n\u0131 analiz ederek \u015f\u00fcpheli IP adreslerini otomatik olarak kara listeye ekler; firewall ise bu IP&#8217;leri an\u0131nda bloke eder. Sonu\u00e7? Sald\u0131r\u0131 giri\u015fimi an\u0131nda kesiliyor, kaynak israf\u0131 \u00f6nleniyor, sisteminiz g\u00fcvenli kal\u0131yor.<\/p>\n<h3>Fail2Ban &amp; Firewall: Temel Kavram<\/h3>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" alt=\"Fail2Ban &amp; Firewall: Temel Kavram\" loading=\"lazy\" src=\"https:\/\/m4.ist\/wp-content\/uploads\/2026\/04\/z-image-turbo_00022_.png\"\/><\/figure>\n<p>\u0130ki bile\u015fenin birlikte \u00e7al\u0131\u015fmas\u0131, sisteminizi hem izleme hem de savunma katmanlar\u0131yla g\u00fc\u00e7lendirir. <strong>Fail2Ban<\/strong> bir <em>jail<\/em> sistemine sahip; her uygulama i\u00e7in ayr\u0131 filtre ve eylem tan\u0131mlar\u0131 yap\u0131l\u0131r. <strong>Firewall<\/strong> ise bu eylemlere ger\u00e7ek zamanl\u0131 olarak tepki verir. Bu iki teknoloji, siber sald\u0131r\u0131lar\u0131n \u00e7o\u011funa kar\u015f\u0131 tek bir kurulumdan etkili bir koruma sa\u011flar.<\/p>\n<h2>Neden \u00d6nemlidir \/ Ne \u0130\u015fe Yarar<\/h2>\n<p>Modern web sunucular\u0131, SSH, FTP, SMTP gibi bir\u00e7ok hizmeti bar\u0131nd\u0131r\u0131r ve bu hizmetler brute\u2011force, port tarama ve otomatik bot sald\u0131r\u0131lar\u0131na a\u00e7\u0131kt\u0131r. <strong>Fail2Ban &amp; Firewall<\/strong> bu sald\u0131r\u0131lar\u0131:<\/p>\n<ul>\n<li>Ger\u00e7ek zamanl\u0131 tespit ve engelleme<\/li>\n<li>Sunucu kaynaklar\u0131n\u0131 koruma (CPU, bellek)<\/li>\n<li>G\u00fcvenlik loglar\u0131n\u0131 analiz ederek uzun vadeli g\u00fcvenlik politikalar\u0131 olu\u015fturma<\/li>\n<li>Y\u00f6netim paneli \u00fczerinden h\u0131zl\u0131 m\u00fcdahale ve raporlama<\/li>\n<\/ul>\n<p>Bir sald\u0131r\u0131 s\u0131ras\u0131nda bile <strong>Fail2Ban &amp; Firewall<\/strong> sayesinde 0,5 saniye i\u00e7inde ip bloke edilip, sald\u0131rgan\u0131n ilerleyi\u015fi durdurulur. B\u00f6ylece maliyetli downtime riskleri azalt\u0131l\u0131r.<\/p>\n<h3>Fail2Ban &amp; Firewall\u2019\u0131n Performans Art\u0131\u015f\u0131<\/h3>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" alt=\"Fail2Ban &amp; Firewall\u2019\u0131n Performans Art\u0131\u015f\u0131\" loading=\"lazy\" src=\"https:\/\/m4.ist\/wp-content\/uploads\/2026\/04\/z-image-turbo_00023_.png\"\/><\/figure>\n<p>Sunucunuza gelen istekleri a\u011f katman\u0131nda filtreleyerek, gereksiz oturum ba\u015flatmalar\u0131n\u0131 engeller. Bu sayede uygulama katman\u0131n\u0131n \u00fczerine ek y\u00fck bindirilmez. Ayn\u0131 zamanda log dosyalar\u0131n\u0131n b\u00fcy\u00fcmesini de \u00f6nler, \u00e7\u00fcnk\u00fc sald\u0131rgan IP&#8217;leri loglara eklenmeden bloklan\u0131r.<\/p>\n<h2>Gereksinimler<\/h2>\n<table>\n<thead>\n<tr>\n<th>Gereksinim<\/th>\n<th>A\u00e7\u0131klama<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u0130\u015fletim Sistemi<\/td>\n<td>Ubuntu, Debian, CentOS, RHEL (Linux)<\/td>\n<\/tr>\n<tr>\n<td>Root\/Sudo Yetkisi<\/td>\n<td>Yap\u0131land\u0131rma dosyalar\u0131n\u0131 d\u00fczenlemek i\u00e7in<\/td>\n<\/tr>\n<tr>\n<td>Firewall Y\u00f6neticisi<\/td>\n<td>UFW, iptables veya firewalld<\/td>\n<\/tr>\n<tr>\n<td>Fail2Ban Kurulumu<\/td>\n<td>Ubuntu\/Debian i\u00e7in apt, CentOS i\u00e7in yum<\/td>\n<\/tr>\n<tr>\n<td>Log Dosyalar\u0131<\/td>\n<td>\/var\/log\/auth.log (SSH), \/var\/log\/apache2\/error.log (Apache)<\/td>\n<\/tr>\n<tr>\n<td>A\u011f Ba\u011flant\u0131s\u0131<\/td>\n<td>\u0130nternet eri\u015fimi (apt\/yum g\u00fcncellemeleri)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Ad\u0131m Ad\u0131m Kurulum \/ Uygulama<\/h2>\n<p>\u0130\u015fte <strong>Fail2Ban &amp; Firewall<\/strong> kurulumunu ad\u0131m ad\u0131m nas\u0131l ger\u00e7ekle\u015ftirece\u011finiz:<\/p>\n<h3>1. Yaz\u0131l\u0131m\u0131 Y\u00fckleyin<\/h3>\n<pre><code>sudo apt update\nsudo apt install fail2ban ufw\n<\/code><\/pre>\n<h3>2. Fail2Ban\u2019\u0131 Ba\u015flat\u0131n<\/h3>\n<pre><code>sudo systemctl enable fail2ban\nsudo systemctl start fail2ban\n<\/code><\/pre>\n<h3>3. UFW\u2019yi Etkinle\u015ftir<\/h3>\n<pre><code>sudo ufw default deny incoming\nsudo ufw default allow outgoing\nsudo ufw enable\n<\/code><\/pre>\n<h3>4. SSH Jail\u2019\u0131n\u0131 Konfig\u00fcre Edin<\/h3>\n<p>Dosya: <code>\/etc\/fail2ban\/jail.d\/ssh.conf<\/code><\/p>\n<pre><code>[sshd]\nenabled  = true\nport     = ssh\nfilter   = sshd\nlogpath  = \/var\/log\/auth.log\nmaxretry = 5\nbantime  = 86400\naction   = ufw[blocktype=DROP]\n<\/code><\/pre>\n<h3>5. Di\u011fer Jail\u2019lar\u0131 Ekleyin (\u00d6rn. Apache)<\/h3>\n<p>Dosya: <code>\/etc\/fail2ban\/jail.d\/apache.conf<\/code><\/p>\n<pre><code>[apache]\nenabled  = true\nport     = http,https\nfilter   = apache-auth\nlogpath  = \/var\/log\/apache2\/error.log\nmaxretry = 6\nbantime  = 3600\naction   = ufw[blocktype=DROP]\n<\/code><\/pre>\n<h3>6. Fail2Ban Konfig\u00fcrasyonunu Yeniden Y\u00fckleyin<\/h3>\n<pre><code>sudo fail2ban-client reload\n<\/code><\/pre>\n<h3>7. Durumu Kontrol Edin<\/h3>\n<pre><code>sudo fail2ban-client status\nsudo fail2ban-client status sshd\n<\/code><\/pre>\n<h3>8. UFW Durumunu G\u00f6r\u00fcnt\u00fcleyin<\/h3>\n<pre><code>sudo ufw status verbose\n<\/code><\/pre>\n<h3>\u0130leri D\u00fczey \u00d6rnek: <strong>Fail2Ban &amp; Firewall<\/strong> ile IP Engelleme Politikas\u0131<\/h3>\n<p>Fail2Ban i\u00e7inde <strong>action<\/strong> parametresi, UFW yerine iptables kullanmak isteyenler i\u00e7in:<\/p>\n<pre><code>[sshd]\naction = iptables-allports\n<\/code><\/pre>\n<h2>S\u0131k Hatalar ve \u00c7\u00f6z\u00fcmleri<\/h2>\n<p>Kurulum s\u0131ras\u0131nda kar\u015f\u0131la\u015f\u0131labilecek yayg\u0131n hatalar ve \u00e7\u00f6z\u00fcmleri a\u015fa\u011f\u0131daki gibidir:<\/p>\n<ul>\n<li><strong>Hata: Log dosyas\u0131 bulunamad\u0131<\/strong> \u2013 <code>logpath<\/code> yolunu do\u011fru g\u00fcncelleyin, \u00f6rne\u011fin <code>\/var\/log\/auth.log<\/code>.<\/li>\n<li><strong>Hata: Ban \u00e7al\u0131\u015fm\u0131yor<\/strong> \u2013 UFW aktif de\u011filse <code>sudo ufw enable<\/code> komutunu \u00e7al\u0131\u015ft\u0131r\u0131n.<\/li>\n<li><strong>Hata: Fail2Ban yeniden ba\u015flatam\u0131yor<\/strong> \u2013 <code>\/var\/log\/fail2ban.log<\/code> dosyas\u0131n\u0131 inceleyin, yap\u0131land\u0131rma hatalar\u0131n\u0131 d\u00fczeltin.<\/li>\n<li><strong>Yanl\u0131\u015f IP engelleniyor<\/strong> \u2013 <code>ignoreregex<\/code> ile belirli IP&#8217;leri hari\u00e7 tutun.<\/li>\n<li><strong>Firewall\u2019da port a\u00e7ma problemi<\/strong> \u2013 <code>sudo ufw allow ssh<\/code> komutu ile manuel izin verin.<\/li>\n<\/ul>\n<h3>Hata: Fail2Ban Loglar\u0131n\u0131n De\u011fi\u015fmesi<\/h3>\n<p>\u0130lk kurulumdan sonra log rotasyonunun Fail2Ban\u2019\u0131 etkileyebilece\u011fini unutmay\u0131n. <code>\/etc\/fail2ban\/jail.d\/rotatelog.conf<\/code> dosyas\u0131 ile log d\u00f6nd\u00fcrme kurallar\u0131n\u0131 yap\u0131land\u0131rabilirsiniz.<\/p>\n<h2>\u0130pu\u00e7lar\u0131 \/ Optimizasyon<\/h2>\n<p>Y\u00f6neticilerin performans\u0131 maksimize etmek ve g\u00fcvenli\u011fi g\u00fc\u00e7lendirmek i\u00e7in baz\u0131 pratik ipu\u00e7lar\u0131:<\/p>\n<ol>\n<li><strong>Dinamik IP Engelleme<\/strong> \u2013 <code>bantime = 0<\/code> ile IP&#8217;leri kal\u0131c\u0131 olarak engelleyin.<\/li>\n<li><strong>\u0130statistikleri \u0130zleyin<\/strong> \u2013 <code>fail2ban-client status --json<\/code> ile JSON rapor al\u0131n.<\/li>\n<li><strong>Custom Actions<\/strong> \u2013 Kendi <code>action<\/code> beti\u011finizi ekleyerek e\u2011posta uyar\u0131lar\u0131 g\u00f6nderin.<\/li>\n<li><strong>Firewall Loglar\u0131<\/strong> \u2013 <code>sudo ufw status verbose<\/code> ile engellenen IP&#8217;leri g\u00f6rebilirsiniz.<\/li>\n<li><strong>Fail2Ban Log Rotation<\/strong> \u2013 <code>\/etc\/fail2ban\/jail.d\/rotatelog.conf<\/code> ile log dosyalar\u0131n\u0131 periyodik olarak d\u00f6nd\u00fcr\u00fcn.<\/li>\n<li><strong>UFW vs iptables<\/strong> \u2013 UFW kullan\u0131yorsan\u0131z <code>action = ufw[blocktype=DROP]<\/code> tercih edin; iptables i\u00e7in <code>action = iptables-allports<\/code> kullan\u0131n.<\/li>\n<li><strong>Fail2Ban Log Analizi<\/strong> \u2013 <code>grep 'Ban' \/var\/log\/fail2ban.log | cut -d' ' -f5<\/code> komutuyla banlanan IP&#8217;leri listeleyin.<\/li>\n<\/ol>\n<h3>Fail2Ban &amp; Firewall ile \u0130statistik Raporu \u00d6rne\u011fi<\/h3>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" alt=\"Fail2Ban &amp; Firewall ile \u0130statistik Raporu \u00d6rne\u011fi\" loading=\"lazy\" src=\"https:\/\/m4.ist\/wp-content\/uploads\/2026\/04\/z-image-turbo_00025_.png\"\/><\/figure>\n<p>A\u015fa\u011f\u0131daki komutla JSON format\u0131nda rapor al\u0131p, bir dosyaya kaydedebilirsiniz:<\/p>\n<pre><code>sudo fail2ban-client status --json &gt; \/tmp\/fail2ban_report.json\n<\/code><\/pre>\n<h3>Fail2Ban\u2019\u0131 Di\u011fer Ara\u00e7larla Entegre Etme<\/h3>\n<p>Fail2Ban\u2019\u0131 Prometheus, Grafana gibi izleme sistemlerine ba\u011flayarak ger\u00e7ek zamanl\u0131 izleme yapabilirsiniz. \u00d6rne\u011fin, <a href=\"https:\/\/github.com\/LoganLindsey\/fail2ban-exporter\" target=\"_blank\" rel=\"noopener\">fail2ban-exporter<\/a> ile metric toplaman\u0131z m\u00fcmk\u00fcnd\u00fcr.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>Art\u0131k <strong>Fail2Ban &amp; Firewall<\/strong> ile donat\u0131lm\u0131\u015f bir sunucuya sahipsiniz. Sald\u0131rganlar an\u0131nda tespit edilir, IP&#8217;ler bloke edilir, kaynaklar korunur. Kurulum ad\u0131mlar\u0131n\u0131 takip etti\u011finizde, sisteminiz siber tehditlere kar\u015f\u0131 g\u00fc\u00e7l\u00fc bir savunma katman\u0131na d\u00f6n\u00fc\u015f\u00fcr. Unutmay\u0131n, g\u00fcvenlik s\u00fcrekli bir s\u00fcre\u00e7tir: loglar\u0131 izleyin, g\u00fcncellemeleri takip edin, politikalar\u0131n\u0131z\u0131 revize edin. <strong>Fail2Ban &amp; Firewall<\/strong> kombinasyonu, bu s\u00fcrecin vazge\u00e7ilmez bir par\u00e7as\u0131 olacak. \ud83d\ude80<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Learn step-by-step Fail2Ban firewall kurulumu to secure your server, block brute-force attacks, and enhance protection with real-time blocking.<\/p>\n","protected":false},"author":1,"featured_media":500,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_title":"Fail2Ban firewall kurulumu: 7 Ad\u0131mda G\u00fcvenli Sunucu","rank_math_description":"Learn step-by-step Fail2Ban firewall kurulumu to secure your server, block brute-force attacks, and enhance protection with real-time blocking.","rank_math_focus_keyword":"Fail2Ban firewall kurulumu","footnotes":""},"categories":[35],"tags":[144,145,103,47],"class_list":["post-505","post","type-post","status-publish","format-standard","has-post-thumbnail","category-guvenlik","tag-fail2ban","tag-firewall","tag-guvenlik","tag-network"],"_links":{"self":[{"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/posts\/505","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/comments?post=505"}],"version-history":[{"count":0,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/posts\/505\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/media\/500"}],"wp:attachment":[{"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/media?parent=505"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/categories?post=505"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/m4.ist\/index.php\/wp-json\/wp\/v2\/tags?post=505"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}