Türkçe

VPS'te UFW kurulumu ve yapılandırması

Bu rehber, Linux için basit ama etkili bir güvenlik duvarı olan UFW (Uncomplicated Firewall) kurulumunu ve yapılandırmasını gösterir. UFW, VPS sunucunuzda güvenlik duvarı kurallarını yönetmeyi kolaylaştırır.

📋 Ön koşullar

  • root veya sudo erişimli VPS sunucu
  • Aktif SSH bağlantısı
  • Ubuntu/Debian (komutlar bu dağıtımlara göre uyarlanmıştır)

📥 UFW kurulumu

Ubuntu/Debian'da kurulum

Bash
sudo apt update sudo apt install ufw -y

Kurulum doğrulaması

Bash
# UFW durumunu kontrol et sudo ufw status

UFW etkin değilse şu mesajı görürsünüz: Status: inactive

⚙️ Temel yapılandırma

Önemli: UFW'yi etkinleştirmeden önce SSH portuna (22) izin verdiğinizden emin olun, aksi halde sunucuya erişiminizi kaybedersiniz.

Varsayılan kuralları ayarlama

Bash
# Gelen trafiği engelle, giden trafiğe izin ver sudo ufw default deny incoming sudo ufw default allow outgoing

Gerekli bağlantılara izin verme

Bash
1# SSH (22) 2sudo ufw allow 22/tcp 3 4# HTTP (80) 5sudo ufw allow 80/tcp 6 7# HTTPS (443) 8sudo ufw allow 443/tcp

🔧 UFW'yi etkinleştirme

Temel kuralları yapılandırdıktan sonra UFW'yi etkinleştirin:

Bash
1# UFW'yi etkinleştir 2sudo ufw enable 3 4# Durumu kontrol et 5sudo ufw status verbose

Önemli: UFW'yi etkinleştirmeden önce SSH'ye izin verdiğinizden emin olun!

📝 Gelişmiş kurallar

Belirli IP adreslerine izin verme

Bash
1# Belirli bir IP adresine izin ver 2sudo ufw allow from 192.168.1.100 3 4# Belirli IP'den belirli porta izin ver 5sudo ufw allow from 192.168.1.100 to any port 22

Port aralıkları

Bash
# Port aralığına izin ver sudo ufw allow 8000:9000/tcp

Seçili bağlantıları reddetme

Bash
1# Belirli portu reddet 2sudo ufw deny 8080/tcp 3 4# Belirli IP adresini reddet 5sudo ufw deny from 192.168.1.200

🔍 Kuralları yönetme

Tüm kuralları listeleme

Bash
1# Numaralı liste 2sudo ufw status numbered 3 4# Ayrıntılı durum 5sudo ufw status verbose

Kuralları silme

Bash
1# Numaraya göre kural sil 2sudo ufw delete 3 3 4# İçeriğe göre kural sil 5sudo ufw delete allow 80/tcp

Tüm kuralları sıfırlama

Bash
# UFW'yi varsayılana sıfırla (devre dışı bırak ve kuralları sil) sudo ufw reset

💡 Tipik örnekler

Web sunucusu yapılandırması

Bash
1sudo ufw default deny incoming 2sudo ufw default allow outgoing 3sudo ufw allow 22/tcp 4sudo ufw allow 80/tcp 5sudo ufw allow 443/tcp 6sudo ufw enable

Posta sunucusu yapılandırması

Bash
1sudo ufw allow 25/tcp # SMTP 2sudo ufw allow 587/tcp # SMTP submission 3sudo ufw allow 465/tcp # SMTPS 4sudo ufw allow 993/tcp # IMAPS 5sudo ufw allow 995/tcp # POP3S

Veritabanı sunucusu yapılandırması

Bash
sudo ufw allow from 192.168.1.0/24 to any port 3306 # Yerel ağdan MySQL sudo ufw allow from 192.168.1.0/24 to any port 5432 # Yerel ağdan PostgreSQL

✅ Doğrulama

UFW'nin düzgün çalıştığını kontrol edin:

Bash
1# Durum 2sudo ufw status verbose 3 4# Aktif kurallar (numaralı) 5sudo ufw status numbered 6 7# Başka bir makineden bağlantı testi 8# (port testi için telnet veya nc)

🚫 UFW'yi devre dışı bırakma

UFW'yi geçici olarak devre dışı bırakmak isterseniz:

Bash
1# UFW'yi devre dışı bırak 2sudo ufw disable 3 4# Tekrar etkinleştir 5sudo ufw enable

📚 En iyi uygulamalar

  1. UFW'yi etkinleştirmeden önce her zaman SSH'ye izin verin
  2. Üretime geçmeden kuralları test edin
  3. Mümkünse herkese port açmak yerine belirli IP adreslerini kullanın
  4. Kuralları düzenli gözden geçirin ve kullanılmayanları kaldırın
  5. Bakımı kolaylaştırmak için kuralları belgeleyin
  6. Büyük değişikliklerden önce yapılandırma yedeği alın

🆘 Sorun giderme

UFW etkinleştirdikten sonra SSH bağlantısı yok

Bash
1# Sağlayıcı konsolu üzerinden bağlanın (varsa) 2 3# UFW'yi sıfırla 4sudo ufw reset 5sudo ufw allow 22/tcp 6sudo ufw enable

UFW kuralları çalışmıyor

Bash
1# UFW aktif mi 2sudo ufw status 3 4# UFW'yi yeniden yükle 5sudo ufw reload 6 7# iptables kontrol et (UFW iptables kullanır) 8sudo iptables -L -n

Kural eklendikten sonra port hâlâ engelli

Bash
1# Kural var mı 2sudo ufw status numbered 3 4# deny kuralı öncelikli mi 5sudo ufw status verbose 6 7# Kuralı sil ve yeniden ekle 8sudo ufw delete allow 80/tcp 9sudo ufw allow 80/tcp 10sudo ufw reload

📚 Ek kaynaklar

❓ Sık sorulan sorular

S: UFW'yi başka güvenlik duvarı araçlarıyla birlikte kullanabilir miyim?
C: Hayır — UFW doğrudan iptables'ı yönetir. firewalld vb. ile eşzamanlı kullanım çakışmalara yol açabilir.

S: Belirli bir hizmet için porta nasıl izin verilir?
C: Port numarasıyla: sudo ufw allow 3306/tcp veya tanımlıysa hizmet adıyla: sudo ufw allow mysql.

S: UFW CentOS/RHEL'de çalışır mı?
C: UFW öncelikle Debian/Ubuntu içindir. CentOS/RHEL'de firewalld tercih edin.

S: Açık portları nasıl görürüm?
C: sudo ufw status verbose aktif kuralları ve portları gösterir.

S: Docker konteynerinde UFW?
C: UFW ana makine düzeyinde çalışır. Konteynerlerde Docker ağı ve güvenliğini kullanın.

Yardıma mı ihtiyacınız var?

Bu rehber hakkında sorularınız mı var? Ekibimiz ve topluluğumuz yardımcı olmaya hazır.

En yeni teklifler, indirimler ve özel promosyonlardan haberdar olun.

Promosyonları gör