
Firewall Türleri ve Linux UFW/iptables/nftables Yapılandırması
Firewall nedir, hangi türleri vardır? Packet filtering, stateful, application layer, NGFW ve WAF kategorileri; Linux netfilter ekosisteminde iptables, nftables, UFW, firewalld, CSF karşılaştırması; pfSense/OPNsense network firewall; ModSecurity, NAXSI ve Cloudflare WAF; IDS/IPS farkı; yeni VDS için 7 adımlık savunma stratejisi ve KOBİ için karar matrisi.
Firewall Türleri ve Linux UFW/iptables/nftables Yapılandırması
"Firewall'um var, bu yüzden güvendeyim" cümlesi, sistem yöneticilerinin duyduğu en yanıltıcı cümlelerden biridir. Çünkü "firewall" tek bir şey değil; OSI'nin farklı katmanlarında çalışan, farklı tehditleri hedefleyen, birbirini tamamlayan bir kategori ailesidir. Yanlış katmanda kurulmuş bir firewall, asıl saldırıyı görmez bile.
Bu rehber, "iptables komutları" listesi değildir — onun için ayrı detay yazılarımız mevcut. Bu yazı, firewall taksonomisinin tamamını tek elden ele alıyor: paket filtreden Web Application Firewall'a kadar 5 ana kategori, host-based vs network-based vs cloud-based mimari ayrımı, stateless vs stateful fark, Linux netfilter ekosisteminin (iptables, nftables, UFW, firewalld, CSF) konumlanması, pfSense / OPNsense gibi network gateway çözümleri, ModSecurity ve NAXSI gibi WAF örnekleri, IDS/IPS'in firewall'dan farkı, DDoS L3-L4-L7 katman ayrımı, yeni bir VDS için 7 adımlık savunma stratejisi ve KOBİ senaryoları için bir karar matrisi.
Buyukweb perspektifi: Bursa Tier 3 veri merkezimizde tüm sunucularımız için datacenter seviyesinde L3/L4 + L7 DDoS koruması zaten yapılır — sizin başka bir şey yapmanıza gerek yoktur. cPanel paketlerimizde ModSecurity (mod_security) WAF + Imunify360 AI tabanlı güvenlik katmanı aktiftir. VDS sunucularımızda root erişiminiz olduğu için iptables/nftables/UFW/firewalld/CSF veya pfSense/OPNsense (Nested VDS olarak) gibi her türlü firewall stack'ini kurmakta serbestsiniz. Faturalama TL + KDV. 0850 302 60 70 numaralı destek hattımızdan firewall stratejiniz için bizimle iletişime geçebilirsiniz.
Firewall Nedir, Neden Tek Katman Yetmez?
Firewall, kelime anlamıyla "yangın duvarı" — itfaiyecilikten gelen bir mecazdır. Bir binayı yangından korumak için tek bir duvar yetmez; her kat arası, her kapı, her havalandırma sistemine ayrı yangın bariyeri konur. Aynısı dijital dünyada geçerlidir.
Bilgisayar ağında firewall, iki ağ arasında akıllı geçiş kapısıdır. Gelen ve giden trafiği önceden tanımlı kurallara göre izin verir, reddeder veya loglar. Ama tek bir firewall, OSI'nin 7 katmanının hepsini eşit derinlikte denetleyemez. Modern güvenlik mimarisi defense in depth (katmanlı savunma) prensibine dayanır:
- L3 (Network — IP) katmanı: Kaynak/hedef IP, ICMP, fragmentasyon
- L4 (Transport — TCP/UDP) katmanı: Port, flag (SYN, ACK, FIN), connection state
- L7 (Application) katmanı: HTTP method, URI, header, body, SQL pattern, JavaScript signature
- Veri/içerik katmanı: Dosya türü, malware signature, anomaly detection
Tek katmanda çalışan bir firewall (örneğin sadece L3/L4 paket filtre), L7 saldırılarını (SQL injection, XSS, HTTP flood) göremez bile — sadece paket başlığını okur, içeriği yorumlamaz. Bu yüzden modern bir kurumsal güvenlik mimarisi:
[Internet]
|
[Datacenter L3/L4 DDoS scrubbing] ← ISP/sağlayıcı seviyesi
|
[Network firewall — pfSense/OPNsense/NGFW] ← perimeter
|
[CDN + Cloudflare WAF] ← L7 + DDoS application layer
|
[Origin host firewall — iptables/nftables/UFW] ← VDS kendi
|
[Web server WAF — ModSecurity/NAXSI] ← uygulama katmanı
|
[IDS/IPS — Suricata/Snort] ← anomaly tespit
|
[fail2ban + log analiz] ← reaktif savunma
|
[Uygulama — kendi rate limit/auth/input validation]
Her katman farklı tehdidi hedefler. Aşağıdaki bölümlerde her birinin nerede konuşlandığını ve hangi senaryoda hangisinin gerektiğini detaylandırıyoruz.
Firewall Sınıflandırması: Hangi Açıdan Bakıyorsunuz?
Firewall'ları üç farklı açıdan sınıflandırabiliriz. Bu sınıflandırmalar birbirinden bağımsızdır — bir firewall aynı anda hem "stateful" hem "host-based" hem "L4" olabilir.
1. OSI Katmanına Göre
| Katman | Ne Görür | Tipik Örnek |
|---|---|---|
| L3 (Network) | Kaynak/hedef IP, ICMP | Router ACL, eski iptables filter |
| L4 (Transport) | TCP/UDP port, SYN/ACK flag, connection state | iptables conntrack, firewalld, UFW |
| L7 (Application) | HTTP method, URI, header, body, kelime/pattern | ModSecurity, NAXSI, Cloudflare WAF, HAProxy ACL |
L3-only firewall artık modern bir senaryoda tek başına yetersizdir — saldırıların çoğu (web exploit, brute-force, bot trafiği) L7'ye gömülüdür.
2. Mimariye Göre
| Mimari | Nerede Çalışır | Tipik Örnek | Buyukweb'de |
|---|---|---|---|
| Host-based | Sunucunun kendisinde | iptables, nftables, UFW, firewalld, Windows Defender Firewall | VDS'inizde siz kurarsınız |
| Network-based | Ağ kenarında ayrı cihaz/VM | pfSense, OPNsense, ticari NGFW | Nested VDS'te pfSense kurulabilir |
| Cloud-based | CDN/edge sağlayıcısı tarafında | Cloudflare WAF | Tüm Buyukweb paketlerinde önerilir |
| Application Layer | Web sunucusu seviyesinde | ModSecurity (Apache/Nginx), NAXSI (Nginx) | cPanel'de ModSecurity built-in |
3. State'e Göre
- Stateless firewall: Her paketi bağımsız değerlendirir. "Port 80'e gelen tüm paketlere izin ver" gibi basit kural. Çok hızlıdır ama dönen trafiği takip edemez — bu yüzden return trafik için ayrı kural yazılmalıdır. Eski router ACL'leri stateless'tır.
- Stateful firewall: Connection tracking yapar. Bir TCP bağlantısı kurulduysa, return paketleri otomatik kabul edilir. iptables conntrack modülü, firewalld, modern UFW hepsi stateful'dir. Daha az kural + daha güvenli.
Modern Linux firewall ekosisteminin tamamı (iptables, nftables, UFW, firewalld) stateful'dir. Stateless artık nadir bir senaryodur.
5 Ana Firewall Türü — Detaylı
Endüstri firewall'ları beş ana kategoriye ayırır. Her birinin nerede ve ne zaman kullanılacağını bilmek, doğru savunma mimarisinin temelidir.
Tür 1: Packet Filtering Firewall (Stateless)
Konum: OSI L3/L4
Çalışma şekli: Her paketi bağımsız değerlendirir — kaynak IP, hedef IP, kaynak port, hedef port, protokol. Connection state tutmaz.
Performans: En hızlı kategori — CPU yükü minimal, line-rate (Gbps) trafikte zorlanmaz.
Sınır: Return trafik için ayrı kural gerekir. Application layer anlamaz.
Tipik kullanım: Router ACL'leri, çok büyük backbone trafiği, IoT cihazlar.
Örnek (kavramsal — modern Linux'ta nadir kullanılır):
# Stateless paket filtre — sadece port match
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# Sonraki kuralla return trafiği ayrıca açmak gerekir
Bu yaklaşım modern sunucularda eski/kötü pratiktir; conntrack olmadan return trafiği kontrol edemezsiniz.
Tür 2: Stateful Inspection Firewall
Konum: OSI L3/L4 + connection state tracking
Çalışma şekli: Her bağlantıyı (TCP SYN → SYN/ACK → ACK → ESTABLISHED) izler. Return paketler otomatik kabul.
Performans: Hızlı; connection table biraz RAM tüketir ama günümüz donanımı için sorun değil.
Sınır: Application layer anlamaz — sadece port/IP/state seviyesinde.
Tipik kullanım: VDS host firewall, küçük-orta ölçek network firewall, ev/ofis router.
Örnek — iptables conntrack ile:
# Mevcut bağlantılar otomatik kabul
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# Yeni SSH
iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
# Yeni HTTP/HTTPS
iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW -j ACCEPT
# Diğer her şey reddedilir (default policy DROP varsayımıyla)
iptables conntrack modülü, firewalld, UFW, nftables — modern Linux'ta tüm yaygın firewall'lar stateful'dir. Çoğu VDS müşterimiz için bu kategori yeterlidir.
Tür 3: Application Layer Firewall (Proxy Firewall)
Konum: OSI L7
Çalışma şekli: Trafik protokol seviyesinde anlaşılır — HTTP method, URI, header, body okunur ve kurala göre değerlendirilir. Sıklıkla proxy olarak çalışır (istemci ↔ proxy ↔ sunucu).
Performans: Daha yavaş — her paketin payload'ı parse edilir; CPU yükü stateless/stateful'a göre 5-10× daha yüksek.
Sınır: Sadece desteklenen protokoller için (HTTP, SMTP, DNS, FTP); rastgele TCP için işe yaramaz.
Tipik kullanım: Kurumsal proxy gateway, mail relay (Postfix + filter), web reverse proxy (HAProxy ACL).
Örnekler:
- Squid proxy — HTTP/HTTPS trafiği inceler, URL/kategori bazlı filtre
- HAProxy ACL — reverse proxy seviyesinde rate limit, path/header bazlı routing
- Postfix milter — SMTP üzerinde anti-spam protokol işleme
Application layer firewall uygulama-spesifik bir araçtır; tipik bir VDS host firewall'unun yerini almaz, onun üstüne eklenir.
Tür 4: Next-Generation Firewall (NGFW)
Konum: L3-L7 birleşik + ek özellikler
Çalışma şekli: Geleneksel stateful firewall'un üstüne şunları ekler:
- DPI (Deep Packet Inspection) — payload içeriği analiz
- IPS (Intrusion Prevention System) — bilinen exploit signature'larını engelle
- Application awareness — port değil uygulama seviyesinde tespit (örn. port 443 üzerinden geçen trafiğin gerçek uygulama Skype mi VPN mi)
- SSL/TLS inspection — şifreli trafiği decrypt edip içeriği analiz (sertifika dağıtım gerektirir)
- Threat intelligence feed — gerçek zamanlı kötücül IP/domain listesi
- User identity awareness — Active Directory entegrasyonu, kim/ne yapıyor
NGFW kategori ağırlıklı olarak ticari ürünlerle yaygındır (kurumsal güvenlik pazarı). Açık kaynak ekosisteminde NGFW eşdeğeri doğrudan mevcut değildir — ama kombinasyon ile aynı işlevsellik elde edilir:
[Suricata] ← IPS + DPI + protocol detection
+
[Snort] ← IDS rule set
+
[Zeek (eski Bro)] ← protokol analizi + log
+
[pfSense/OPNsense] ← stateful firewall + arayüz
+
[ELK Stack] ← log analiz + dashboard
=
"DIY açık kaynak NGFW"
Tipik kullanım: Kurumsal LAN perimeter, regüle sektör (finans, sağlık) compliance.
KOBİ ölçeğinde bir VDS web sunucu için NGFW gereğinden büyükdir. Stateful firewall + WAF + CDN kombinasyonu çoğunlukla yeterlidir.
Tür 5: Web Application Firewall (WAF)
Konum: OSI L7 — web-spesifik (HTTP/HTTPS odaklı)
Çalışma şekli: Web sunucu önünde veya içinde, gelen HTTP/HTTPS isteklerini inceler. SQL injection, XSS, CSRF, RFI/LFI, path traversal gibi uygulama seviyesi saldırıları tespit edip engeller. OWASP Top 10 referans setine göre kural setleri içerir.
Performans: Her isteği parse ettiği için CPU yükü vardır; modern WAF'lar (ModSecurity v3 libmodsecurity, NAXSI) optimize edilmiştir.
Sınır: Sadece web (HTTP/HTTPS) trafiği için — TCP/UDP geneli için işe yaramaz.
Tipik kullanım: Web sitesi, e-ticaret, SaaS uygulama, kurumsal web portalı.
Yaygın WAF örnekleri:
- ModSecurity v3 + OWASP Core Rule Set (CRS) — açık kaynak, Apache/Nginx/IIS desteği. Buyukweb cPanel paketlerinde mod_security built-in aktiftir.
- NAXSI — Nginx için hafif, whitelist tabanlı WAF
- Imunify360 — CloudLinux'un AI tabanlı sunucu güvenlik paketi (WAF + malware + brute-force koruma). Buyukweb cPanel paketlerinde standart.
- Cloudflare WAF — CDN seviyesinde edge WAF; ücretsiz tier yeterli temel koruma, Pro/Business gelişmiş kural setleri. cPanel veya VDS önünde proxy olarak konuşlanır.
WAF, geleneksel firewall'ın yerini almaz — yanına eklenen, web spesifik bir savunma katmanıdır. Her ikisi de aynı anda çalışır.
Karar Matrisi: Hangi Senaryoda Hangi Firewall?
Aşağıdaki tablo, yaygın 10 senaryo için önerilen firewall kombinasyonunu özetler:
| Senaryo | Önerilen Firewall Kombinasyonu | Buyukweb'de Karşılığı |
|---|---|---|
| Tek VDS, kişisel proje | UFW (basit) + fail2ban + Cloudflare proxy | VDS Starter + UFW kurulumu |
| Tek VDS, küçük üretim web | iptables/nftables stateful + ModSecurity + Cloudflare + fail2ban | VDS Pro + nftables/UFW |
| cPanel web hosting | ModSecurity (built-in) + Imunify360 + Cloudflare önünde | cPanel paketleri (Başlangıç → Jet) |
| WordPress site | Imunify360 + Cloudflare WAF + WordPress security plugin (rate limit) | cPanel + Cloudflare |
| Kurumsal LAN gateway | NGFW (ticari) ya da pfSense + Suricata + Snort | Nested VDS'te pfSense + Suricata |
| DMZ + iç ağ ayrımı | Network firewall (pfSense/OPNsense) + segmentation + VLAN | Çoklu VDS + Nested pfSense |
| Multi-tenant SaaS uygulama | Origin WAF (ModSecurity) + CDN WAF + custom rate limit | VDS + Cloudflare + custom kod |
| Yüksek trafikli e-ticaret | CDN WAF + origin WAF + IDS + DDoS L3-L7 | Cloudflare + cPanel/VDS + datacenter DDoS (Buyukweb dahil) |
| Mail sunucusu (VDS self-host) | iptables stateful + Postfix/Dovecot kendi filter + Rspamd + fail2ban | VDS + Postfix stack |
| Regüle sektör (finans/sağlık) | NGFW + IDS + WAF + log aggregation + audit | Buyukweb destek hattı ile özel mimari |
Aşağıdaki bölümlerde her bir kategoriyi nasıl kuracağınızı ve bu kombinasyonun ne anlama geldiğini detaylandırıyoruz.
Host-Based vs Network-Based Firewall — Nerede Konuşlanır?
Host-Based (Sunucunun Kendisinde)
- Konum: Sunucu işletim sistemi içinde, çekirdek seviyesinde
- Linux'ta: iptables / nftables / UFW / firewalld
- Windows'ta: Windows Defender Firewall
- Avantaj: Her sunucu kendi kurallarını uygular; lateral movement zorlaşır
- Dezavantaj: Yönetim merkezi yok — 50 sunucu = 50 ayrı yapılandırma (config management gerekir)
- Buyukweb'de: VDS müşterilerimizin tamamı host-based firewall kurar
Network-Based (Ağ Kenarında)
- Konum: Sunucuların önünde, ayrı bir cihaz/VM
- Örnek: pfSense gateway, OPNsense, ticari NGFW kutuları
- Avantaj: Tek merkez — tüm sunucular için ortak politika; perimeter savunma güçlü
- Dezavantaj: Single point of failure (HA gerekir); arkasındaki sunucular arası lateral movement görmez
- Buyukweb'de: Nested VDS olarak pfSense/OPNsense kurabilir, arkasında diğer VDS'leri segment edebilirsiniz
En İyi Pratik: İkisi Bir Arada
Üretimde defense in depth prensibi: hem network gateway hem her host kendi firewall'u. pfSense default policy DROP + her sunucu UFW/nftables default deny. Saldırgan tek katmanı geçse bile diğeri durdurabilir.
Linux Netfilter Ekosistemi — Bütünsel Bakış
Linux'ta tüm firewall araçları aslında aynı temel altyapı üzerine kuruludur: netfilter framework. Kernel modülü olan netfilter, ağ paketlerini intercept eder ve kullanıcı seviyesindeki kurallar tarafından işlenmesini sağlar.
[Uygulama]
↕
[Userspace araçlar: iptables / nftables / UFW / firewalld / CSF]
↕ (kurallar ekler/çıkarır)
[Kernel: netfilter framework + nf_tables backend (modern)]
↕ (paket iletim, ACCEPT/DROP/REJECT karar)
[Ağ kartı (NIC)]
Yani iptables, nftables, UFW, firewalld, CSF — hepsi netfilter'a kural ekler, sadece syntax/UX farklıdır. Aşağıda her birinin yerini açıklıyoruz.
iptables (Klasik — Linux 2.4+)
Konum: Kullanıcı seviyesi komut + xtables backend (kernel)
Statü: Hala yaygın, ama nftables ile değiştiriliyor (Linux 3.13+ default)
Avantaj: Dökümantasyon zengin, her tutorial iptables üzerinde
Dezavantaj: Çok kural varsa lineer arama (yavaş), atomic transaction yok, IPv4/IPv6 ayrı (iptables vs ip6tables)
5 chain + 4 table + match modülleri:
Tables: filter, nat, mangle, raw
Chains: INPUT, OUTPUT, FORWARD, PREROUTING, POSTROUTING
# Tipik VDS host firewall — filter table
iptables -P INPUT DROP # default policy DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -i lo -j ACCEPT # loopback
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 8 -m limit --limit 1/s -j ACCEPT
iptables'ın derin detayı (filter/nat/mangle table'ları, conntrack, match modülleri, SNAT/DNAT, MASQUERADE) için ayrı detay rehberlerimiz var — bu yazıda taksonomi seviyesinde tutuyoruz.
nftables (Modern — Linux 3.13+)
Konum: Kullanıcı seviyesi komut + nf_tables backend (kernel)
Statü: Modern Linux (Debian 10+, Ubuntu 20.04+, RHEL 8+, AlmaLinux 9+) default
Avantaj: Daha temiz syntax, atomic transaction (kural seti tamamen değişene kadar trafik kesilmez), IPv4/IPv6 birleşik (inet family), built-in set/map (binlerce IP whitelist için)
Dezavantaj: Eski tutorial'lar iptables üzerinde — adaptasyon süresi
# nftables tipik VDS host firewall
nft add table inet filter
nft add chain inet filter input { type filter hook input priority 0 \; policy drop \; }
nft add chain inet filter forward { type filter hook forward priority 0 \; policy drop \; }
nft add chain inet filter output { type filter hook output priority 0 \; policy accept \; }
nft add rule inet filter input iif lo accept
nft add rule inet filter input ct state established,related accept
nft add rule inet filter input tcp dport { 22, 80, 443 } ct state new accept
nft add rule inet filter input ip protocol icmp icmp type echo-request limit rate 1/second accept
nftables'ın en büyük avantajı atomic ruleset'tir — nft -f /etc/nftables.conf tek seferde tüm kural setini yükler; geçişte trafik kesilmez. iptables'ta her komut anında uygulanır, geçici tutarsızlık ihtimali var.
UFW — Uncomplicated Firewall (Ubuntu/Debian)
Konum: iptables/nftables üzerine frontend wrapper
Statü: Ubuntu Server'ın "tercih edilen" basit firewall
Avantaj: Çok basit syntax, hızlı öğrenilir
Dezavantaj: Karmaşık kurallar için sınırlı — eninde sonunda iptables/nftables'a düşersiniz
# UFW tipik kurulum
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp comment 'SSH'
ufw allow 80/tcp comment 'HTTP'
ufw allow 443/tcp comment 'HTTPS'
ufw limit 22/tcp comment 'SSH rate limit' # brute-force koruma
ufw enable
# Belirli IP'den izin
ufw allow from 203.0.113.45 to any port 22
# Durum kontrol
ufw status verbose
ufw status numbered
UFW Ubuntu Server kullanıcıları için en hızlı başlangıç firewall'udur. cPanel yüklenmiyorsa ve ileri seviye kural ihtiyacı yoksa idealdir.
firewalld — RHEL/AlmaLinux/Rocky Linux Tercihi
Konum: iptables/nftables üzerine zone-based wrapper
Statü: RHEL 7+, AlmaLinux 8+, Rocky 8+, Fedora default
Avantaj: Zone kavramı (public, dmz, work, home, internal, external, trusted) — farklı interface'ler farklı zone'a atanır; runtime vs permanent ayrımı (test, sonra kalıcı yap)
Dezavantaj: Daha karmaşık kavram seti — basit kullanım için fazla
# firewalld tipik kullanım
firewall-cmd --get-zones
firewall-cmd --get-default-zone
firewall-cmd --zone=public --list-all
# Servis ekle (port değil servis adı)
firewall-cmd --zone=public --add-service=ssh --permanent
firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --zone=public --add-service=https --permanent
# Belirli port
firewall-cmd --zone=public --add-port=8080/tcp --permanent
# Reload (permanent kuralları yükle)
firewall-cmd --reload
# Rich rule — daha karmaşık
firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="203.0.113.45" port port=3306 protocol=tcp accept' --permanent
firewalld'nin zone modeli, çoklu ağ interface olan sunucularda (örneğin public + private network ayrı) çok pratiktir. Public NIC'i "public" zone'a, private NIC'i "internal" zone'a atayıp her ikisine farklı politika uygularsınız.
CSF — ConfigServer Security & Firewall (cPanel İçin Tipik)
Konum: iptables üzerine wrapper + ek özellikler (Login Failure Daemon, IP reputation, port scan tracking)
Statü: cPanel sunucularda yaygın seçenek
Avantaj: cPanel UI entegrasyonu; LFD (Login Failure Daemon) ile fail2ban benzeri otomatik IP block; çok geniş özellik seti (port flood detection, process tracking, directory watch)
Dezavantaj: cPanel olmayan ortamlarda overkill; config dosyası uzun
CSF detayı için ayrı HOWTO rehberimiz mevcuttur — bu yazıda taksonomi seviyesinde kalıyoruz.
Hangisini Seçmeli? Karar Soruları
| Soru | Cevap → Öneri |
|---|---|
| Ubuntu Server, basit web sunucu, ilk firewall'um | UFW |
| AlmaLinux/Rocky/RHEL, çoklu interface | firewalld |
| Modern Linux, karmaşık kurallar, atomic transaction istiyorum | nftables |
| Eski tutorial'larla çalışmak istiyorum, dökümantasyon zengin | iptables (klasik) |
| cPanel sunucu, hosting otomasyonu | CSF |
pfSense ve OPNsense — Network-Based Firewall
pfSense ve OPNsense FreeBSD bazlı, açık kaynak network firewall dağıtımlarıdır. Network-based mimari için en yaygın açık kaynak çözüm.
Tipik kullanım:
- Ofis/şube ağ gateway (LAN → Internet)
- DMZ + iç ağ segmentasyonu
- Çoklu VLAN routing + firewall
- VPN gateway (OpenVPN, WireGuard, IPsec)
- IDS/IPS (Suricata, Snort paket olarak entegre)
Özellikler:
- GUI tabanlı yönetim (web arayüzü) — komut satırı bilmeyen sysadmin için ideal
- GeoIP block — ülke bazlı IP block (örn. Türkiye dışından SSH yasak)
- Snort/Suricata entegrasyonu — IDS/IPS plugin paket olarak
- OpenVPN/WireGuard/IPsec VPN — remote access + site-to-site
- Captive portal — misafir WiFi için login portalı
- Traffic shaping — QoS, bant genişliği yönetimi
- HAProxy plugin — reverse proxy
- Backup/restore config XML — felaket sonrası 5 dakikada geri yükleme
Buyukweb'de: VDS müşterilerimiz, Nested VDS olarak pfSense/OPNsense kurabilirler. Yani ana VDS içinde KVM/VirtualBox üzerinde pfSense VM çalıştırıp, arkasındaki diğer VDS'leri/uygulamaları bu firewall'un arkasında konumlandırabilirsiniz. Bu, kurumsal network firewall mantığını VDS ölçeğinde sağlar.
Önemli: pfSense/OPNsense Nested VDS kurulumu gelişmiş kullanıcılar içindir. Standart bir web sunucu için gereğinden büyüktür; iptables/nftables/UFW host-based firewall + Cloudflare WAF kombinasyonu çoğu KOBİ senaryosu için yeterlidir.
Web Application Firewall — Derinlemesine
WAF, web spesifik L7 saldırılarına karşı koruyan kategoridir. SQL injection, XSS, CSRF, RFI/LFI, path traversal, command injection — bunların hepsi geleneksel L3/L4 firewall'ın gözüne çarpmaz çünkü HTTP içeriği parse etmesi gerekir. WAF tam olarak burada devreye girer.
ModSecurity v3 + OWASP CRS
Konum: Web sunucu modülü (Apache mod_security, Nginx, IIS desteği)
Çekirdek: libmodsecurity v3 (önceki v2 Apache-spesifikti, v3 web sunucu bağımsız)
Kural seti: OWASP Core Rule Set (CRS) — açık kaynak, sürekli güncellenen ~250 kural
Tipik bir SQL injection isteği:
GET /products?id=1' OR '1'='1
↓
ModSecurity OWASP CRS 942100 numaralı kural eşleşir
↓
İstek 403 Forbidden ile reddedilir + audit log'a yazılır
ModSecurity'nin paranoia level ayarı var (1 = düşük false positive, 4 = en sıkı). Üretimde tipik olarak PL=2 kullanılır; çok hassas siteler PL=3'e çıkar.
Buyukweb cPanel paketlerinde mod_security + OWASP CRS built-in aktiftir — siz ekstra bir şey yapmazsınız. Yanlış pozitif (false positive) yakalanan yasal trafik için cPanel UI'dan "Whitelist Rules" ile belirli kuralları o domain için kapatabilirsiniz.
NAXSI — Nginx Spesifik Hafif WAF
NAXSI ("Nginx Anti XSS & SQL Injection") sadece Nginx için tasarlanmış, whitelist tabanlı hafif bir WAF'tır. ModSecurity'den farklı olarak imza listesi yerine "şu karakterlere izin var, gerisi şüpheli" mantığıyla çalışır.
# nginx.conf NAXSI tipik
location / {
SecRulesEnabled;
DeniedUrl "/RequestDenied";
CheckRule "$SQL >= 8" BLOCK;
CheckRule "$RFI >= 8" BLOCK;
CheckRule "$TRAVERSAL >= 4" BLOCK;
CheckRule "$EVADE >= 4" BLOCK;
CheckRule "$XSS >= 8" BLOCK;
proxy_pass http://app_backend;
}
NAXSI çok az false positive üretir çünkü öğrenme dönemi (learning mode) ile sitenizin normal trafiğini önce tanır, sonra anomaly engeller. Düşük CPU yükü — yüksek trafikli Nginx önünde tercih edilebilir.
Imunify360 — cPanel İçin Premium Güvenlik
Buyukweb cPanel paketlerinde Imunify360 standart olarak aktiftir. Imunify360, sadece WAF değil — bütüncül bir sunucu güvenlik paketidir:
- Imunify WAF — ModSecurity üzerine optimize edilmiş kural seti
- Imunify Antivirus / Malware Scanner — sunucudaki tüm dosyaları periyodik tarar
- Real-time threat intel — CloudLinux'un kötücül IP listesi
- Brute-force protection — yanlış giriş denemelerinde IP block
- Reputation Management — gönderilen mailler için reputation skoru
- Proactive Defense — PHP execution sandbox
Sonuç olarak Imunify360, şirket içi sysadmin yokken WordPress / cPanel sunucu için ideal güvenlik katmanıdır.
Cloudflare WAF
Cloudflare, CDN olmanın yanında edge WAF sağlar. Trafik Cloudflare'den geçtiği için, kötücül istekleri siz görmez bile — Cloudflare edge'de durdurur.
Ücretsiz tier'da: Temel managed rules (SQLi, XSS, RCE), DDoS L3-L4 mitigation, rate limit (sınırlı), bot fight mode (sınırlı).
Pro tier (~$20/ay): Daha geniş managed rule sets, image optimization, mobile optimization.
Business tier (~$200/ay): Custom WAF rules, advanced rate limiting, prioritized support.
Cloudflare WAF'ın en büyük avantajı DDoS koruma ile birleşik gelmesidir — L3-L4 saldırıları edge'de absorbe eder, origin sunucunuza ulaşmaz.
Buyukweb perspektifi: Datacenter seviyesinde L3/L4 + L7 DDoS koruması zaten sağlıyoruz. Cloudflare ek bir katmandır — DNS'inizi Cloudflare'e yönlendirmek ücretsiz tier'da bile bir günlük teknik iş, faydası ise gelişmiş L7 WAF + global CDN'dir.
IDS / IPS — Firewall'dan Farkı
Sıkça karıştırılan iki kavram daha:
- Firewall: Kurala göre paket kabul / rededer (proaktif filtre)
- IDS (Intrusion Detection System): Şüpheli trafiği tespit eder + log'a yazar (gözlem)
- IPS (Intrusion Prevention System): Şüpheli trafiği tespit edip engeller (aktif müdahale)
[Trafik]
↓
[Firewall] ← kural eşleşirse engel/izin (deterministik)
↓
[IDS/IPS] ← signature/anomaly tespit (heuristic)
↓
[Uygulama]
Yaygın açık kaynak IDS/IPS:
- Snort — uzun süreli sektör standardı, rule-based, single-thread (eski mimari)
- Suricata — Snort'un modern alternatifi, multi-thread (yüksek trafikte daha verimli), Snort kuralları geriye dönük uyumlu
- Zeek (eski Bro) — protokol analizi odaklı, log üreten, "ne oldu?" sorusuna detaylı cevap
Pratik: Bir KOBİ web sunucusunda Suricata kurulumu zaman ve uzmanlık gerektirir. Daha yaygın ve hızlı bir alternatif fail2ban'dır — log dosyalarını izleyip belirli pattern (örn. tekrarlanan başarısız SSH giriş) yakaladığında IP'yi iptables/nftables kuralıyla engeller. Tam bir IDS/IPS değil ama reaktif savunma için yeterli.
IDS/IPS konusunun daha derin teknik detayı (Nmap port tarama tespit, Suricata vs Snort detay konfigürasyon, Zeek log analizi) için ayrı detay rehberimiz mevcuttur.
DDoS Koruma Katmanları — Firewall'ın Görmediği Saldırı
DDoS (Distributed Denial of Service) saldırıları, geleneksel firewall'ın tek başına çözemediği bir kategoridir. Çünkü:
- L3/L4 DDoS (SYN flood, UDP flood, ICMP flood, amplification) — saldırı bant genişliğinin çoğunu doldurur; sunucu firewall'u zaten paketleri görüyor ama upstream link dolduğu için meşru trafik geçemiyor.
- L7 DDoS (HTTP flood, Slowloris, application-layer) — meşru görünen istekler büyük hacimde gelir; firewall paketleri kabul eder ama uygulama (Apache/Nginx worker, PHP-FPM) tükenir.
Doğru savunma mimarisi:
| Katman | Çözüm | Kim Yapar? |
|---|---|---|
| L3/L4 (network seviye) | ISP/datacenter scrubbing — kötücül trafiği upstream'de filtrele | Buyukweb datacenter (Bursa Tier 3) |
| L7 (uygulama seviye) | WAF + rate limit + bot detection | Imunify360 (cPanel) + Cloudflare |
| Uygulama içi | Connection limit, slow request timeout, query timeout | Nginx/Apache config + uygulama kodu |
Buyukweb perspektifi: L3/L4 + L7 DDoS koruması datacenter seviyesinde verilir — sizin için zaten yapılır. Cloudflare bir ek katmandır, özellikle L7 application flood için faydalıdır. Bunun ötesinde, web sunucunuzda Nginx limit_req veya Apache mod_evasive ile yerel rate limit kuralları eklemek üçüncü savunma katmanıdır.
Yeni VDS İçin 7 Adımlık Firewall Kurulum Stratejisi
Bir VDS satın aldınız ve henüz boş. Üretime almadan önce şu 7 adımı sırasıyla uygulayın:
Adım 1: Default Policy DROP
# nftables modern
nft add table inet filter
nft add chain inet filter input { type filter hook input priority 0 \; policy drop \; }
nft add chain inet filter forward { type filter hook forward priority 0 \; policy drop \; }
nft add chain inet filter output { type filter hook output priority 0 \; policy accept \; }
nft add rule inet filter input iif lo accept
nft add rule inet filter input ct state established,related accept
# veya iptables klasik
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# veya UFW
ufw default deny incoming
ufw default allow outgoing
Default DROP modern firewall'un altın kuralıdır. Açık kalan portlar bilmediğiniz tehdittir; "ihtiyacım olanı açarım, gerisi kapalı" mantığı tek doğru yaklaşım.
Adım 2: SSH Whitelist + Rate Limit
# nftables — sadece kendi ofis IP'nizden SSH
nft add rule inet filter input ip saddr 203.0.113.0/24 tcp dport 22 ct state new accept
# Veya rate limit (1 dakikada 4 deneme)
nft add rule inet filter input tcp dport 22 ct state new limit rate 4/minute accept
# UFW alternatif
ufw allow from 203.0.113.0/24 to any port 22
ufw limit 22/tcp # otomatik rate limit (6 deneme/30s)
SSH için 0.0.0.0/0 (her yerden) açık tutmak en yaygın güvenlik hatasıdır. En azından rate limit, ideal olarak ofis/VPN IP whitelist uygulanmalıdır.
Bonus: SSH port 22'den 2222 gibi non-standard porta taşımak (port knock değil basit obscurity) bot trafiğinin %95+'ını siler — gerçek güvenlik artışı değil ama log gürültüsü azalır.
Adım 3: Web Port (80, 443) Aç
# nftables
nft add rule inet filter input tcp dport { 80, 443 } ct state new accept
# UFW
ufw allow 80/tcp
ufw allow 443/tcp
HTTP/HTTPS portlarını 0.0.0.0/0 açık tutmak normaldir — web sunucu zaten dünyaya açık olmalı. WAF + rate limit + application code seviyesi koruma devrede.
Adım 4: fail2ban Entegrasyon
apt install fail2ban # Debian/Ubuntu
dnf install fail2ban # RHEL/AlmaLinux
# /etc/fail2ban/jail.local
[sshd]
enabled = true
port = 22
maxretry = 3
bantime = 3600
findtime = 600
ignoreip = 127.0.0.1/8 203.0.113.0/24
[apache-auth]
enabled = true
fail2ban, log dosyalarını izler — başarısız SSH girişi, web auth fail, WordPress wp-login.php brute-force, vs. — belirli sayıda denemeden sonra IP'yi otomatik iptables/nftables kuralıyla engeller.
Adım 5: Application Layer — ModSecurity (Apache) veya NAXSI (Nginx)
# Apache + ModSecurity
apt install libapache2-mod-security2
a2enmod security2
systemctl restart apache2
# /etc/modsecurity/modsecurity.conf
SecRuleEngine On
SecResponseBodyAccess Off
SecRequestBodyLimit 13107200
# OWASP CRS indir
cd /etc/modsecurity
git clone https://github.com/coreruleset/coreruleset.git
cp coreruleset/crs-setup.conf.example coreruleset/crs-setup.conf
Nginx + NAXSI alternatifi de mevcuttur (yukarıda bahsedildi).
Buyukweb cPanel müşterileri: Bu adım sizin için zaten yapılmıştır — mod_security + Imunify360 standart aktif.
Adım 6: Cloudflare Proxy Önünde (Opsiyonel)
DNS'inizi Cloudflare'e yönlendirip orange-cloud (proxy ON) yaparsanız:
- Tüm trafik Cloudflare üzerinden gelir
- Origin IP gizli — direkt saldırı zorlaşır
- Cloudflare WAF kuralları ücretsiz tier'da aktif
- DDoS L3-L4-L7 mitigation ek katman
Tek yapmanız gereken origin firewall'ınızda sadece Cloudflare IP aralıklarına 80/443 açmak (whitelist):
# Cloudflare IP listesi (güncel için cloudflare.com/ips kontrol)
# IPv4 örnek prefixler
nft add rule inet filter input ip saddr 173.245.48.0/20 tcp dport 443 accept
nft add rule inet filter input ip saddr 103.21.244.0/22 tcp dport 443 accept
# ... liste devamı
Bu, origin'i tamamen Cloudflare arkasına gizler ve bypass saldırılarını engeller.
Adım 7: Datacenter L3/L4 DDoS — Buyukweb Tarafından
Bu son katman siz hiçbir şey yapmadan zaten aktiftir. Buyukweb Bursa Tier 3 datacenter, gelen tüm trafiği önce scrubbing sisteminden geçirir; volumetric saldırılar (SYN flood, UDP flood, amplification) datacenter seviyesinde absorbe edilir. Sunucunuza sadece temiz trafik ulaşır.
7 adım tamamlandığında, çok katmanlı (defense in depth) bir savunma mimariniz vardır:
[Datacenter DDoS scrubbing — Buyukweb]
↓
[Cloudflare WAF + edge DDoS]
↓
[VDS host firewall — nftables/UFW default DROP]
↓
[fail2ban reaktif IP block]
↓
[Web sunucu WAF — ModSecurity/NAXSI]
↓
[Uygulama (kod) seviyesi rate limit, auth, input validation]
Saldırgan bir katmanı geçse bile diğeri engelleyebilir; tek katmanlı savunmaya göre çok daha zor kırılır.
10 Yaygın Firewall Hatası — Yapmayın
- 0.0.0.0/0 SSH açık — bot taraması saniyede onlarca deneme yapar. Rate limit + whitelist zorunlu.
- SSH port 22 default — log gürültüsünün %95'i. 2222 / 22000 gibi non-standard porta taşıyın.
- NAT misconfig — DNAT/SNAT kuralları conntrack ile uyumlu olmalı; yanlış kurulduysa trafik kesilir veya açıklık doğar.
- OUTPUT chain ignore — sadece INPUT'a odaklanıp OUTPUT'u ACCEPT bırakmak, bir saldırgan içeri girince veri exfiltration'a yol açar. Outbound da kısıtlanmalı (en azından beklenmeyen portları DROP).
- IPv6 firewall yok — iptables IPv4, ip6tables IPv6 ayrı. nftables
inetfamily ile birleşik. IPv6 unutursanız, IPv4'te kapattığınız port IPv6'da açık kalır. - Logging yok — kural DROP eder ama log yazmazsa, saldırıyı asla görmezsiniz.
-j LOGveya nftableslog prefixkullanın (rate limit ile). - fail2ban ignoreip eksik — ofis IP'nizi ignoreip'e eklemezseniz, kendi kullanıcınız 3 yanlış parola ile kendinizi kilitlersiniz.
- conntrack ölü reset — yüksek trafikli sunucularda
nf_conntrack_max(varsayılan 65536) dolarsa yeni bağlantı reddedilir./proc/sys/net/netfilter/nf_conntrack_maxartırılmalı. - WAF rule false positive — ModSecurity yanlış pozitif yakalarsa yasal müşteriniz 403 görür. Audit log inceleme + whitelist düzenli iş.
- "Tek katman yeterli" yanılgısı — UFW kurdum, yeterli sayarım. Hayır — defense in depth: host firewall + WAF + CDN + IDS + log analiz hepsi katman.
Sık Sorulan Sorular (SSS)
"Küçük bir blog sitesi için NGFW gerekli mi?"
Hayır, NGFW (kurumsal ticari kategori) küçük bir blog için gereğinden çok büyüktür ve fiyatı yıllık ₺50.000+'dır. Küçük bir blog için: UFW + fail2ban + Cloudflare ücretsiz WAF + (cPanel kullanıyorsanız) ModSecurity + Imunify360 kombinasyonu yeterlidir. Buyukweb cPanel paketlerinde son ikisi standart geliyor.
"UFW tek başına yeterli mi?"
Çoğu KOBİ VDS senaryosu için evet, UFW yeterlidir. Ama UFW host-based bir stateful firewall'dır — L7 (HTTP/HTTPS payload) görmez, DDoS L3 çapında bant genişliği yetersizliğine çözüm olmaz, IDS değildir. Bu yüzden UFW + Cloudflare proxy + fail2ban + (web sunucusunda) ModSecurity/NAXSI birlikte düşünülmelidir. Tek katman değil, kombinasyon.
"WAF nerede konuşlanmalı — origin'de mi, CDN'de mi?"
İdealde her ikisinde de (defense in depth). CDN WAF (Cloudflare) edge'de erken filtre yapar, bant genişliğinizi korur. Origin WAF (ModSecurity/NAXSI) Cloudflare'i bypass eden veya origin IP'yi bulan saldırganlara karşı son savunmadır. Sadece CDN WAF'a güvenmek, origin IP keşfedilirse koruma kaybı demektir. Sadece origin WAF, bant genişliği saldırılarına karşı zayıftır.
"cPanel kullanıyorum, ek bir firewall kurmama gerek var mı?"
Buyukweb cPanel paketlerinde ModSecurity + Imunify360 + datacenter DDoS koruma standart aktif. Çoğu paylaşımlı cPanel müşterimizin ek bir şey yapmasına gerek yoktur. Ek koruma için yapabileceğiniz:
- Cloudflare DNS yönlendir (ücretsiz tier yeterli)
- WordPress kullanıyorsanız Wordfence veya iThemes Security plugin
- 2FA cPanel girişinde aktif
VDS müşterilerimiz ise kendi firewall'larını kurmak zorundadır (cPanel olsun olmasın).
"Cloudflare ile origin firewall arasındaki ilişki nedir?"
Cloudflare DNS'iniz proxy ON olduğunda, tüm trafik Cloudflare üzerinden geçer. Bu durumda:
- Origin sunucunuzun gerçek IP'si DNS'te görünmez
- Cloudflare WAF saldırıları edge'de filtreler
- Ama Cloudflare IP aralıkları dışından origin'inize gelen trafik direkt (bypass) olabilir — bu nedenle origin firewall'ınızda sadece Cloudflare IP'lerine 80/443 açmak (whitelist) önerilir.
"iptables mı, nftables mı, UFW mü öğreneyim?"
Yeniyseniz: UFW (basit, hızlı sonuç). Modern Linux'la uzun vadeli: nftables (gelecek). Eski sistemleri/tutorial'ları okumak için: iptables (klasik). cPanel sunucuda: CSF (zaten cPanel ile gelir genelde). Çoklu zone yönetimi (RHEL/AlmaLinux): firewalld. Hepsi netfilter üzerine kuruludur, biri öğrenildiğinde diğerine geçiş kolaydır.
"Kendi datacenter'ımı kuruyorum, pfSense gateway yeterli mi?"
Küçük-orta ölçek (10-50 sunucu) bir datacenter/colocation için pfSense + Suricata IDS/IPS + segmentation + HA (CARP failover) yeterli bir başlangıçtır. Ölçek büyüdükçe (100+ sunucu, regüle sektör, yüksek bant genişliği) NGFW veya çoklu pfSense cluster + dedicated DDoS scrubbing hattı düşünülmelidir. Buyukweb bu ölçekte özel mimari danışmanlığı sunar — 0850 302 60 70 destek hattımızdan iletişime geçebilirsiniz.
"Firewall yetersiz kaldığında ne yaparım?"
Firewall'ın yetersiz kalma semptomları: yüksek bant genişliği saldırısı (sunucu yanıt vermiyor), L7 application flood (Apache/Nginx worker tükeniyor), bot trafiği geçemiyor, false positive yüksek (yasal müşteri engelleniyor). Çözümler:
- Bant genişliği: datacenter DDoS scrubbing (Buyukweb dahil) + Cloudflare proxy
- L7 flood: rate limit (nginx limit_req, Cloudflare rate limit), bot fight mode
- Bot trafiği: Cloudflare Bot Fight Mode, hCaptcha entegrasyonu
- False positive: WAF kural whitelist, paranoia level ayarı, audit log inceleme
Sonuç ve Sonraki Adımlar
Firewall, tek bir araç değil kategori ailesidir. Doğru savunma:
- Paket filtreden L7 WAF'a kadar 5 ana tür — her biri farklı katmanı korur
- Host-based + Network-based + Cloud-based üç mimari birlikte (defense in depth)
- Stateful firewall (UFW/nftables/iptables/firewalld) modern VDS host firewall standardı
- WAF (ModSecurity/NAXSI/Cloudflare/Imunify360) web uygulaması için olmazsa olmaz
- fail2ban + IDS/IPS (Suricata/Snort) reaktif + tespit katmanı
- Datacenter L3/L4 DDoS üst katman — Buyukweb müşterilerine standart
- 7 adımlık yeni VDS rutini — default DROP, SSH whitelist, web aç, fail2ban, WAF, Cloudflare, datacenter
KOBİ tipik senaryolarda cPanel paketleri (ModSecurity + Imunify360 + datacenter DDoS standart) veya VDS + UFW/nftables + Cloudflare + fail2ban kombinasyonu çoğunlukla yeterlidir. NGFW kategori sadece kurumsal/regüle senaryolarda gerekir.
İlgili Büyükweb Hizmetleri
- cPanel Web Hosting — Built-in ModSecurity WAF + Imunify360 + datacenter DDoS standart
- VDS Sunucu — Root erişim, iptables/nftables/UFW/firewalld/CSF/pfSense serbest kurulum
- Paket Karşılaştırma — Hosting + güvenlik özellikleri karşılaştırma
- iptables Güvenlik Yapılandırması — iptables filter/nat/mangle detaylı
- firewalld Yapılandırması — Zone-based firewall detayı
- iptables vs firewalld Karşılaştırması — İkisi arasında seçim
- VDS Firewall Production Deploy — Üretim ortamı detaylı + fail2ban
- CSF Firewall Kurulumu — cPanel için CSF (HOWTO)
- Ağ Güvenliği: IDS/IPS — Nmap + Snort/Suricata detayı
Firewall stratejiniz, VDS güvenlik mimarisi veya kurumsal NGFW alternatifi açık kaynak çözümler için 0850 302 60 70 numaralı destek hattımıza veya iletişim sayfamıza yazabilirsiniz. Bursa Tier 3 veri merkezimizden datacenter seviyesinde L3/L4 + L7 DDoS koruması + cPanel mod_security + Imunify360 standart aktif sunuyoruz.
Ağ & Network İlgili Hizmetlerimiz
Bu yazıda anlatılan teknik konuyu profesyonel altyapıyla deneyimleyin
Etiketler:
