UFW Nedir, Nasıl Kullanılır? Linux Firewall Yönetim Rehberi
UFW (Uncomplicated Firewall) ile Linux sunucunda port açma/kapama, IP whitelist, rate limit ve fail2ban entegrasyonu.
iptables karmaşık geliyor mu? UFW (Uncomplicated Firewall) Ubuntu/Debian’da varsayılan, “iptables’ın insanca arayüzü”. Birkaç komutla sunucuna firewall kurabilir, sadece istediğin portlara izin verebilirsin. Bu rehberde UFW’nin temellerini ve pratik kullanımlarını anlatıyoruz.
Neden firewall şart?
Sunucun açık her portta saldırı yüzeyi var. Default Linux kurulumunda çalışmayan servislerin de portları erişilebilir olabilir. Firewall sadece istediğin portlara izin verir, geri kalanı reddeder.
UFW kurulumu
Ubuntu’da varsayılan kurulu. Yoksa:
sudo apt update && sudo apt install ufw -y
AlmaLinux/RHEL’de UFW yok, firewalld kullanılır.
Temel kullanım
sudo ufw status # Durum
sudo ufw status verbose # Detaylı
sudo ufw enable # Aktif et
sudo ufw disable # Kapat
sudo ufw reset # TÜM kuralları sıfırla
ÖNEMLİ: SSH’ı kilitleme!
UFW’yi enable etmeden önce SSH portuna izin vermeyi unutma — yoksa sunucudan dışarı kalırsın!
sudo ufw allow 22/tcp # Default SSH
# veya custom port:
sudo ufw allow 2222/tcp
Sonra:
sudo ufw enable
Yaygın port izinleri
# HTTP / HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# Mail (SMTP, IMAP, POP3)
sudo ufw allow 25,465,587,993,995/tcp
# FTP
sudo ufw allow 21/tcp
sudo ufw allow 990/tcp # FTPS
# MySQL (sadece spesifik IP'den)
sudo ufw allow from 1.2.3.4 to any port 3306
# Servis adı ile
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
Belirli IP’den izin / reddetme
# Belirli IP'ye tüm portlardan izin ver
sudo ufw allow from 1.2.3.4
# Belirli IP'ye belirli porttan izin
sudo ufw allow from 1.2.3.4 to any port 22
# IP range
sudo ufw allow from 192.168.1.0/24
# IP'yi tamamen blokla
sudo ufw deny from 5.6.7.8
Port kapatma / kural silme
# Numara ile sil
sudo ufw status numbered # Önce numaraları gör
sudo ufw delete 3 # 3 numaralı kuralı sil
# Direkt eşleşme
sudo ufw delete allow 80/tcp
Rate limit (brute-force koruması)
UFW’nin built-in rate limit özelliği — 30 saniyede 6’dan fazla bağlantı denerse banlar:
sudo ufw limit 22/tcp
SSH için altın kural — fail2ban’a alternatif basit çözüm.
Cloudflare-only mod (web sunucu için)
Sunucuna sadece Cloudflare üzerinden erişilsin istiyorsan:
# Önce 80/443'i tüm dünyaya kapat
sudo ufw deny 80/tcp
sudo ufw deny 443/tcp
# Sonra sadece Cloudflare IP range'lerine izin ver
for ip in $(curl -s https://www.cloudflare.com/ips-v4); do
sudo ufw allow from $ip to any port 80,443 proto tcp
done
DDoS yazımız bu konuyu detaylandırır: DDoS Korunma.
Logging
UFW her aksiyonu loglar:
sudo ufw logging on # Logging aktif (default)
sudo ufw logging high # Daha detaylı
sudo tail -f /var/log/ufw.log
fail2ban entegrasyonu
UFW kuralı + fail2ban = brute-force’a karşı çift katman:
sudo apt install fail2ban -y
sudo systemctl enable --now fail2ban
/etc/fail2ban/jail.local:
[sshd]
enabled = true
port = 22
maxretry = 3
bantime = 3600
banaction = ufw
sudo systemctl restart fail2ban
sudo fail2ban-client status sshd # banlanan IP'leri gör
Sık yapılan hatalar
- Enable etmeden SSH’ı unutma: kilidlenirsen KavesNET VNC console üzerinden bağlan
- Plesk ile çakışma: Plesk kendi firewall’unu yönetir → ya Plesk firewall ya UFW, ikisini birlikte değil. Plesk yazımıza bak
- IPv6 unutma:
/etc/default/ufwiçindeIPV6=yesaktif olduğundan emin ol - Default deny incoming: Yeni kurulan sunucularda default deny olduğunu unutma → her servis için açık komut gerekli
Quick start özeti
Yeni VDS için tipik UFW konfigürasyonu:
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp # SSH
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw limit 22/tcp # SSH rate limit
sudo ufw enable
sudo ufw status verbose
5 satırda güvenli temel firewall kurulmuş olur.
İlgili: SSH ile Bağlanma · DDoS Korunma
İlgili Yazılar
Bunlar da ilgini çekebilir.
3-2-1 Yedekleme Kuralı: Sunucu Verilerini Asla Kaybetmemenin Yolu
3-2-1 yedekleme kuralı, kurumsal sunucu yedekleme stratejisinin altın standardıdır. Bu yazıda kuralı, otomasyon yöntemlerini ve KavesNET yedek altyapısını anlatıyoruz.
Devamını Oku
Plesk'ten Plesk'e Site Nasıl Taşınır? Migrator Aracı Rehberi
Plesk Migrator ile site, mail, DB ve DNS'i tek seferde yeni sunucuya taşı. Adım adım kurulum, migration test ve cutover.
Devamını Oku
FileZilla ile VDS'ten VDS'e Dosya Taşıma Rehberi
Eski sunucudan yeni VDS'e siteni taşı: FileZilla ile FTP/SFTP, hız ipuçları, izin ayarları ve hata kontrolü.
Devamını Oku