{"id":2474,"date":"2026-10-04T17:30:00","date_gmt":"2026-10-04T14:30:00","guid":{"rendered":"https:\/\/narhost.com\/destek\/?p=2474"},"modified":"2026-10-04T17:30:00","modified_gmt":"2026-10-04T14:30:00","slug":"fail2ban-kurulumu","status":"publish","type":"post","link":"https:\/\/narhost.com\/destek\/fail2ban-kurulumu\/","title":{"rendered":"Fail2ban Kurulumu ve SSH Korumas\u0131 (Ubuntu 24.04)"},"content":{"rendered":"<p class=\"kb-dogrulama\">Son g\u00f6zden ge\u00e7irme: Eyl\u00fcl 2026 \u00b7 Ubuntu 24.04 resm\u00ee dok\u00fcman\u0131na g\u00f6re<\/p>\n<div id=\"hizli-cozum\" class=\"ai-box ai-box--cozum\">\n<p class=\"ai-box-title\">H\u0131zl\u0131 \u00e7\u00f6z\u00fcm<\/p>\n<p><strong>Fail2ban kurulumu<\/strong> Ubuntu 24.04&#8217;te tek paketle yap\u0131l\u0131r; paket SSH korumas\u0131n\u0131 (<code>sshd<\/code> jail) varsay\u0131lan olarak a\u00e7ar, siz yaln\u0131z s\u00fcreleri ve kendi IP adresinizi <code>jail.local<\/code> dosyas\u0131na yazars\u0131n\u0131z.<\/p>\n<ol>\n<li><code>sudo apt update && sudo apt install fail2ban<\/code> ile paketi kurun.<\/li>\n<li><code>\/etc\/fail2ban\/jail.local<\/code> dosyas\u0131n\u0131 olu\u015fturup <code>ignoreip<\/code>, <code>bantime<\/code>, <code>findtime<\/code>, <code>maxretry<\/code> de\u011ferlerini yaz\u0131n.<\/li>\n<li><code>sudo systemctl restart fail2ban<\/code> ile servisi yeniden ba\u015flat\u0131n.<\/li>\n<li><code>sudo fail2ban-client status sshd<\/code> ile jail&#8217;in \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 g\u00f6r\u00fcn.<\/li>\n<\/ol>\n<\/div>\n<table class=\"kb-uyg\">\n<tr>\n<th>Panel<\/th>\n<td>Yok \u2014 VPS\/VDS y\u00f6netimsizdir; kurulum sunucunuzda SSH ile yap\u0131l\u0131r<\/td>\n<\/tr>\n<tr>\n<th>Sistem<\/th>\n<td>Ubuntu 24.04 (fail2ban 1.0.2), Ubuntu 22.04 ve Debian 12 benzer<\/td>\n<\/tr>\n<tr>\n<th>Yetki<\/th>\n<td>root ya da sudo yetkili kullan\u0131c\u0131<\/td>\n<\/tr>\n<tr>\n<th>Narhost \u00fcr\u00fcn\u00fc<\/th>\n<td><a href=\"https:\/\/narhost.com\/vps-sunucu\" title=\"Narhost VPS Sunucu paketleri\">VPS Sunucu<\/a>, VDS Sunucu<\/td>\n<\/tr>\n<\/table>\n<div class=\"kb-once\">\n<p class=\"label\">Ba\u015flamadan \u00f6nce<\/p>\n<ul>\n<li>Ba\u011fland\u0131\u011f\u0131n\u0131z sabit IP adresini \u00f6\u011frenin; <code>ignoreip<\/code> sat\u0131r\u0131na yaz\u0131lacak, yoksa birka\u00e7 hatal\u0131 denemeyle kendinizi engelleyebilirsiniz.<\/li>\n<li>SSH portunu de\u011fi\u015ftirdiyseniz yeni numaray\u0131 not edin; jail ayn\u0131 portu dinlemelidir.<\/li>\n<li>A\u00e7\u0131k bir SSH oturumunu i\u015flem bitene kadar kapatmay\u0131n.<\/li>\n<\/ul>\n<\/div>\n<h2>Fail2ban Kurulumu Ne \u0130\u015fe Yarar<\/h2>\n<p>\u0130nternete a\u00e7\u0131k her sunucunun 22 numaral\u0131 portu g\u00fcn boyu otomatik parola denemesi al\u0131r. Fail2ban g\u00fcnl\u00fckleri okur, belirli bir s\u00fcre i\u00e7inde \u00e7ok say\u0131da ba\u015far\u0131s\u0131z giri\u015f yapan IP adresini g\u00fcvenlik duvar\u0131 kural\u0131yla bir s\u00fcreli\u011fine engeller. Parola denemelerini s\u0131f\u0131rlamaz, ama sald\u0131r\u0131n\u0131n h\u0131z\u0131n\u0131 d\u00fc\u015f\u00fcr\u00fcr ve g\u00fcnl\u00fckleri temiz tutar.<\/p>\n<p>Ubuntu 24.04 paketi <code>\/etc\/fail2ban\/jail.d\/defaults-debian.conf<\/code> dosyas\u0131yla gelir: bu dosya <code>sshd<\/code> jail&#8217;ini a\u00e7ar, g\u00fcnl\u00fckleri systemd journal&#8217;dan okur (<code>backend = systemd<\/code>) ve engellemeyi nftables ile yapar. As\u0131l ayar dosyas\u0131 <code>jail.conf<\/code> paket g\u00fcncellemesinde \u00fczerine yaz\u0131l\u0131r; bu y\u00fczden de\u011fi\u015fiklikler her zaman <code>jail.local<\/code> dosyas\u0131na yaz\u0131l\u0131r. T\u00fcm se\u00e7enekler <a href=\"https:\/\/manpages.ubuntu.com\/manpages\/noble\/man5\/jail.conf.5.html\" title=\"jail.conf(5) Ubuntu 24.04 man sayfas\u0131 \u2014 Fail2ban yap\u0131land\u0131rmas\u0131\" target=\"_blank\" rel=\"noopener\">jail.conf man sayfas\u0131nda<\/a> listelidir.<\/p>\n<h2>Ad\u0131m Ad\u0131m Fail2ban Kurulumu<\/h2>\n<ol class=\"kb-adimlar\">\n<li><strong>Paketi kurun ve servisi etkinle\u015ftirin:<\/strong>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt install -y fail2ban\nsudo systemctl enable --now fail2ban<\/code><\/pre>\n<p class=\"kb-cikti\">Beklenen sonu\u00e7: <code>systemctl status fail2ban<\/code> \u00e7\u0131kt\u0131s\u0131nda <code>active (running)<\/code>.<\/p>\n<\/li>\n<li><strong><code>jail.local<\/code> dosyas\u0131n\u0131 olu\u015fturun.<\/strong><code>jail.conf<\/code>&#8216;u kopyalamay\u0131n ve d\u00fczenlemeyin; yaln\u0131z de\u011fi\u015ftirdi\u011finiz de\u011ferleri yaz\u0131n:\n<pre><code class=\"language-bash\">sudo nano \/etc\/fail2ban\/jail.local<\/code><\/pre>\n<p class=\"kb-cikti\">Beklenen sonu\u00e7: bo\u015f bir dosya a\u00e7\u0131l\u0131r.<\/p>\n<\/li>\n<li><strong>Varsay\u0131lanlar\u0131 ve SSH jail&#8217;ini yaz\u0131n.<\/strong><code>203.0.113.10<\/code> yerine kendi sabit IP adresinizi koyun, birden fazla adresi bo\u015flukla ay\u0131r\u0131n:\n<pre><code class=\"language-ini\">[DEFAULT]\nignoreip = 127.0.0.1\/8 ::1 203.0.113.10\nbantime = 1h\nfindtime = 10m\nmaxretry = 5\n\n[sshd]\nenabled = true\nport = ssh<\/code><\/pre>\n<p class=\"kb-cikti\">Beklenen sonu\u00e7: 10 dakika i\u00e7inde 5 ba\u015far\u0131s\u0131z giri\u015f yapan IP bir saat engellenir. SSH portunuzu de\u011fi\u015ftirdiyseniz <code>port = 2222<\/code> gibi yeni numaray\u0131 yaz\u0131n.<\/p>\n<\/li>\n<li><strong>Yap\u0131land\u0131rmay\u0131 test edip servisi yeniden ba\u015flat\u0131n:<\/strong>\n<pre><code class=\"language-bash\">sudo fail2ban-client -t\nsudo systemctl restart fail2ban<\/code><\/pre>\n<p class=\"kb-cikti\">Beklenen sonu\u00e7: test komutu <code>OK: configuration test is successful<\/code> yazar. Hata varsa sat\u0131r numaras\u0131yla g\u00f6sterir; d\u00fczeltmeden yeniden ba\u015flatmay\u0131n.<\/p>\n<\/li>\n<\/ol>\n<figure class=\"nh-sema\"><img src=\"https:\/\/narhost.com\/destek\/wp-content\/uploads\/2026\/09\/fail2ban-kurulumu-sema-narhost.webp\" alt=\"Fail2ban kurulumu ak\u0131\u015f \u015femas\u0131 \u2014 paketi kurma, jail.local yazma, yap\u0131land\u0131rmay\u0131 test etme ve sshd jail durumunu kontrol etme\" width=\"1200\" height=\"500\" loading=\"lazy\" decoding=\"async\"><figcaption>Paket, jail.local, test ve durum kontrol\u00fc: SSH korumas\u0131n\u0131n d\u00f6rt ad\u0131m\u0131.<\/figcaption><\/figure>\n<h3>Tekrarlayan sald\u0131rganlar i\u00e7in artan s\u00fcre<\/h3>\n<p>Ayn\u0131 adresten d\u00f6nen denemeler i\u00e7in <code>[DEFAULT]<\/code> b\u00f6l\u00fcm\u00fcne <code>bantime.increment = true<\/code> ekleyebilirsiniz; her yeni engelde s\u00fcre katlanarak uzar. Parola giri\u015fini tamamen kapatmak ise daha g\u00fc\u00e7l\u00fc bir \u00f6nlemdir: \u00f6nce <a href=\"https:\/\/narhost.com\/destek\/ssh-anahtari-nasil-eklenir\/\" title=\"SSH Anahtar\u0131 Nas\u0131l Eklenir (VPS \u0130lk Kurulum 4\/10) \u2014 Narhost Destek\">SSH anahtar\u0131 ekleyin<\/a>, sonra <code>PasswordAuthentication no<\/code> yap\u0131n.<\/p>\n<h2>Do\u011frulama<\/h2>\n<div class=\"success-box\">\n<p class=\"label\">Sonu\u00e7<\/p>\n<p><code>sudo fail2ban-client status<\/code> \u00e7\u0131kt\u0131s\u0131nda <code>Jail list: sshd<\/code> g\u00f6r\u00fcnmeli. <code>sudo fail2ban-client status sshd<\/code> ise <code>Currently failed<\/code>, <code>Total failed<\/code>, <code>Currently banned<\/code> ve <code>Banned IP list<\/code> sat\u0131rlar\u0131n\u0131 verir. Birka\u00e7 saat sonra engellenen adres listesinin dolmaya ba\u015flamas\u0131 kurulumun \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 g\u00f6sterir.<\/p>\n<\/div>\n<h2>H\u00e2l\u00e2 \u00c7\u00f6z\u00fclmediyse<\/h2>\n<ul>\n<li><strong>Kendinizi engellediniz.<\/strong> Ba\u015fka bir IP adresinden, \u00fcr\u00fcnle gelen taray\u0131c\u0131 terminalinden ya da <a href=\"https:\/\/narhost.com\/destek\/konsol-baglantisi-ile-sunucuya-nasil-erisilir\/\" title=\"Konsol Ba\u011flant\u0131s\u0131 ile Sunucuya Nas\u0131l Eri\u015filir (SSH \u00c7al\u0131\u015fmad\u0131\u011f\u0131nda) \u2014 Narhost Destek\">konsol ba\u011flant\u0131s\u0131yla<\/a> girip <code>sudo fail2ban-client set sshd unbanip 203.0.113.10<\/code> \u00e7al\u0131\u015ft\u0131r\u0131n, sonra adresi <code>ignoreip<\/code>&#8216;e ekleyin.<\/li>\n<li><strong>Jail a\u00e7\u0131k ama hi\u00e7 engelleme yok.<\/strong> Port yanl\u0131\u015f olabilir; <a href=\"https:\/\/narhost.com\/destek\/ssh-portu-nasil-degistirilir\/\" title=\"SSH Portu Nas\u0131l De\u011fi\u015ftirilir (VPS \u0130lk Kurulum 3\/10) \u2014 Narhost Destek\">SSH portunu de\u011fi\u015ftirdiyseniz<\/a><code>port<\/code> sat\u0131r\u0131n\u0131 g\u00fcncelleyin. G\u00fcnl\u00fckleri <a href=\"https:\/\/narhost.com\/destek\/linux-log-dosyalari-nasil-okunur\/\" title=\"Linux Sunucu Log Dosyalar\u0131 Nerede, Nas\u0131l Okunur (journalctl, \/var\/log) \u2014 Narhost Destek\">journalctl ile okuyun<\/a>.<\/li>\n<li><strong>Servis ba\u015flam\u0131yor.<\/strong><code>sudo journalctl -u fail2ban -n 50<\/code> \u00e7\u0131kt\u0131s\u0131ndaki hata sat\u0131r\u0131 genellikle <code>jail.local<\/code>&#8216;daki yaz\u0131m hatas\u0131n\u0131 g\u00f6sterir.<\/li>\n<\/ul>\n<div class=\"cta-box\">\n<p class=\"label\">Narhost deste\u011fi<\/p>\n<p>Talebe \u015funlar\u0131 ekleyin: sunucunuzun IP adresi, <code>fail2ban-client status sshd<\/code> \u00e7\u0131kt\u0131s\u0131, <code>jail.local<\/code> i\u00e7eri\u011fi ve hatan\u0131n saati. Sunucu i\u00e7i yap\u0131land\u0131rma sizin y\u00f6netiminizdedir; eri\u015fim kayb\u0131nda konsol i\u00e7in bize yaz\u0131n.<\/p>\n<p><a class=\"cta-btn\" href=\"https:\/\/narhost.com\/submitticket.php\" title=\"Narhost destek talebi a\u00e7\">Destek talebi a\u00e7<\/a><\/div>\n<div class=\"kb-ilgili\">\n<p class=\"label\">Sonraki ad\u0131mlar<\/p>\n<ul>\n<li><a href=\"https:\/\/narhost.com\/destek\/web-sitesi-ve-sunucu-guvenligi-rehberi\/\" title=\"Web Sitesi ve Sunucu G\u00fcvenli\u011fi Rehberi (Narhost Destek)\">Web sitesi ve sunucu g\u00fcvenli\u011fi rehberi<\/a><\/li>\n<li><a href=\"https:\/\/narhost.com\/destek\/vps-vds-ilk-kurulum-rehberi\/\" title=\"VPS VDS Sunucu \u0130lk Kurulum Rehberi (10 Ad\u0131mda G\u00fcvenli Kurulum) \u2014 Narhost Destek\">VPS VDS ilk kurulum rehberi<\/a><\/li>\n<li><a href=\"https:\/\/narhost.com\/destek\/ssh-portu-nasil-degistirilir\/\" title=\"SSH Portu Nas\u0131l De\u011fi\u015ftirilir (VPS \u0130lk Kurulum 3\/10) \u2014 Narhost Destek\">SSH portunu de\u011fi\u015ftirme<\/a><\/li>\n<li><a href=\"https:\/\/narhost.com\/destek\/ssh-anahtari-nasil-eklenir\/\" title=\"SSH Anahtar\u0131 Nas\u0131l Eklenir (VPS \u0130lk Kurulum 4\/10) \u2014 Narhost Destek\">SSH anahtar\u0131 ekleme<\/a><\/li>\n<\/ul>\n<\/div>\n<div class=\"kb-faq\">\n<h2>S\u0131k\u00e7a sorulan sorular<\/h2>\n<h3>Fail2ban kurulumu sonras\u0131 UFW ile \u00e7ak\u0131\u015f\u0131r m\u0131?<\/h3>\n<p>Hay\u0131r. Ubuntu 24.04 paketi engellemeyi nftables \u00fczerinden kendi tablosunda yapar, UFW kurallar\u0131n\u0131za dokunmaz. \u0130kisi birlikte \u00e7al\u0131\u015f\u0131r.<\/p>\n<h3>Engellenen IP listesini nas\u0131l temizlerim?<\/h3>\n<p>Tek adres i\u00e7in <code>sudo fail2ban-client set sshd unbanip &lt;IP&gt;<\/code>, t\u00fcm engelleri kald\u0131rmak i\u00e7in <code>sudo fail2ban-client unban --all<\/code> kullan\u0131l\u0131r.<\/p>\n<h3>SSH d\u0131\u015f\u0131ndaki servisleri de koruyabilir miyim?<\/h3>\n<p>Evet. Paket Nginx, Apache ve Postfix gibi servisler i\u00e7in haz\u0131r filtrelerle gelir; <code>jail.local<\/code>&#8216;a ilgili b\u00f6l\u00fcm\u00fc ekleyip <code>enabled = true<\/code> yazman\u0131z yeterli. Filtrelerin listesi <a href=\"https:\/\/github.com\/fail2ban\/fail2ban\" title=\"Fail2ban resm\u00ee kaynak deposu (GitHub)\" target=\"_blank\" rel=\"noopener\">Fail2ban resm\u00ee deposunda<\/a> bulunur.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Ubuntu 24.04&#8217;te fail2ban kurulumu ve SSH korumas\u0131: paketi kurma, jail.conf yerine jail.local yazma, bantime\/findtime\/maxretry, kendi IP&#8217;nizi ignoreip&#8217;e ekleme, fail2ban-client status sshd ile do\u011frulama ve engeli kald\u0131rma.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[79,13],"tags":[179],"class_list":["post-2474","post","type-post","status-publish","format-standard","hentry","category-guvenlik-duvari","category-vps-server","tag-guvenlik-2"],"meta_box":[],"_links":{"self":[{"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/posts\/2474","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/comments?post=2474"}],"version-history":[{"count":1,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/posts\/2474\/revisions"}],"predecessor-version":[{"id":2853,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/posts\/2474\/revisions\/2853"}],"wp:attachment":[{"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/media?parent=2474"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/categories?post=2474"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/narhost.com\/destek\/wp-json\/wp\/v2\/tags?post=2474"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}