UFW Güvenlik Duvarı Kurulumu ve Kural Yönetimi (Ubuntu)

Son gözden geçirme: Eylül 2026 · Ubuntu 24.04 resmî dokümanına göre

Hızlı çözüm

UFW güvenlik duvarı kurulumu Ubuntu’da tek kurala bağlıdır: güvenlik duvarını açmadan önce SSH iznini ekleyin. Sıra şöyledir:

  1. sudo ufw allow OpenSSH (SSH portunu değiştirdiyseniz sudo ufw allow 2222/tcp).
  2. sudo ufw default deny incoming ve sudo ufw default allow outgoing.
  3. Web sunucusu varsa sudo ufw allow 80/tcp ve sudo ufw allow 443/tcp.
  4. sudo ufw enable, ardından sudo ufw status verbose ile kontrol.
Panel Yok — VPS/VDS yönetimsizdir; kurallar sunucunuzda SSH ile yazılır
Sistem Ubuntu 22.04/24.04 (UFW önceden kurulu, kapalı gelir), Debian 12’de apt install ufw
Yetki root ya da sudo yetkili kullanıcı
Narhost ürünü VPS Sunucu, VDS Sunucu

Başlamadan önce

  • SSH’ın hangi portta çalıştığını bilin: sudo ss -tlnp | grep ssh.
  • Sunucuda dışarıya açık olması gereken servisleri listeleyin (web, e-posta, panel, veritabanı uzaktan erişimi).
  • Açık SSH oturumunuzu kapatmayın; kurallar tamamlanınca ikinci bir pencereden bağlantıyı test edeceksiniz.

UFW Ne İşe Yarar

UFW (Uncomplicated Firewall), Ubuntu’nun çekirdekteki paket filtresini tek satırlık komutlarla yönetmenizi sağlayan ön yüzdür. Açık bir VPS, siz kurmasanız da çalışan her servisi internete gösterir: test için kurduğunuz bir veritabanı ya da yönetim arayüzü herkesin taramasına açık kalır. Varsayılan olarak gelen bağlantıları reddeden, yalnız izin verdiğiniz portları açan bir politika bu riski kapatır.

Ubuntu 24.04’te paket kurulu ama kapalı gelir. Komutların tamamı Ubuntu Server güvenlik duvarı dokümanında anlatılır.

Adım Adım UFW Güvenlik Duvarı Kurulumu

Dikkat

SSH iznini eklemeden ufw enable çalıştırırsanız varsayılan politika SSH bağlantınızı da reddeder ve sunucudan kilitlenirsiniz. Bu durumda tek yol ürünle gelen tarayıcı terminali ya da konsol bağlantısıdır; oradan sudo ufw allow OpenSSH ya da sudo ufw disable çalıştırılır.

  1. Durumu ve hazır uygulama profillerini görün:
    sudo ufw status
    sudo ufw app list

    Beklenen sonuç: Status: inactive ve profil listesinde OpenSSH. Nginx ya da Apache kuruluysa onların profilleri de görünür.

  2. SSH iznini ilk kural olarak ekleyin:
    sudo ufw allow OpenSSH

    Beklenen sonuç: Rules updated ve Rules updated (v6). SSH’ı 22 dışında bir porta taşıdıysanız profil yerine sudo ufw allow 2222/tcp yazın; OpenSSH profili yalnız 22’yi açar.

  3. Varsayılan politikayı belirleyin:
    sudo ufw default deny incoming
    sudo ufw default allow outgoing

    Beklenen sonuç: Default incoming policy changed to 'deny'; politika henüz uygulanmaz, UFW kapalıdır.

  4. İhtiyacınız olan servisleri açın:
    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    sudo ufw allow from 203.0.113.10 to any port 3306 proto tcp

    Beklenen sonuç: her satır için Rules updated. Son satır veritabanını yalnız tek bir IP adresine açar; veritabanını herkese açmayın.

  5. Güvenlik duvarını etkinleştirin:
    sudo ufw enable

    Beklenen sonuç: Command may disrupt existing ssh connections. Proceed with operation (y|n)? sorusuna y yanıtı verince Firewall is active and enabled on system startup.

  6. Kuralları numaralı listeleyin, gereksizi silin:
    sudo ufw status numbered
    sudo ufw delete 3

    Beklenen sonuç: silme onay ister; her silmeden sonra numaralar kayar, bir sonraki silmeden önce listeyi yeniden alın.

UFW güvenlik duvarı kurulumu akış şeması — önce SSH izni, varsayılan politika, servis portları ve ufw enable ile etkinleştirme
Sıra önemli: SSH izni ilk kural olur, etkinleştirme en son yapılır.

Doğrulama

Sonuç

sudo ufw status verbose çıktısında Status: active ve Default: deny (incoming), allow (outgoing) görünmeli, izin verdiğiniz portlar listede olmalıdır. Açık oturumu kapatmadan ikinci bir pencerede SSH ile bağlanın; bağlantı açılıyorsa UFW güvenlik duvarı kurulumu tamamlanmıştır.

Hâlâ Çözülmediyse

  • SSH bağlantısı kesildi. SSH izni eksik ya da port yanlış. Tarayıcı terminali veya konsoldan girip doğru portu açın; port değişikliği için SSH portu kartındaki sırayı izleyin.
  • Kapattığınız port hâlâ dışarıdan erişilebiliyor.Docker ile yayımlanan portlar UFW kurallarını atlar; yalnız sunucu içinden erişilecek bir konteyneri -p 127.0.0.1:8080:80 biçiminde yerel adrese bağlayın.
  • Kurallar karıştı.sudo ufw reset tüm kuralları siler ve UFW’yi kapatır; ardından SSH izniyle baştan başlayın.

Narhost desteği

Talebe şunları ekleyin: sunucunuzun IP adresi, sudo ufw status verbose çıktısı, erişemediğiniz port ve denediğiniz komutlar. Kilitlendiyseniz konsol erişimi için bize yazın; kuralların kendisi sizin yönetiminizdedir.

Destek talebi aç

Sıkça sorulan sorular

UFW açıkken SSH saldırılarını da sınırlayabilir miyim?

Evet. sudo ufw limit OpenSSH kuralı aynı adresten 30 saniyede 6 ve üzeri bağlantı denemesini reddeder. Daha ayrıntılı koruma için günlük tabanlı bir engelleme aracı eklenir.

UFW’yi geçici olarak nasıl kapatırım?

sudo ufw disable güvenlik duvarını kapatır ama kuralları silmez; sudo ufw enable ile aynı kurallarla geri açılır.

IPv6 için ayrı kural yazmam gerekir mi?

Hayır. /etc/default/ufw dosyasında IPV6=yes varsayılandır; her kural IPv4 ve IPv6 için birlikte eklenir, çıktıdaki (v6) satırları bunu gösterir.

Bu makale sorununuzu çözdü mü?

Çözemediniz mi?

Teknik ekibimiz sunucu tarafındaki ayarları sizin için kontrol edebilir. Destek talebinizde alan adınızı ve aldığınız hata metnini paylaşmanız süreci hızlandırır.

Etiketler: guvenlik

İlgili çözümler