Giriş
Güvenlik duvarı (Firewall), gelen ve giden ağ trafiğini izleyen ve filtreleyen kritik bir araçtır. Belirli trafiğe izin verip vermeyeceğini belirleyen bir dizi güvenlik kuralı tanımlayarak çalışır. Ubuntu, iptables güvenlik duvarı kurallarını yönetmek için kullanıcı dostu bir arayüz olan UFW (Uncomplicated Firewall) ile birlikte gelir. UFW'nin temel amacı, güvenlik duvarı yönetimini basitleştirmektir.
Bu makale, Ubuntu 24.04 üzerinde UFW kullanarak bir güvenlik duvarını nasıl yapılandıracağınızı ve yöneteceğinizi anlatmaktadır. Doğru yapılandırılmış bir güvenlik duvarı, genel sistem güvenliğinin en önemli yönlerinden biridir.
Ön Koşullar
Sistem güvenlik duvarını yönetmek için yalnızca root kullanıcısı veya sudo ayrıcalıklarına sahip kullanıcılar yetkilidir. Yönetim görevlerini bir sudo kullanıcısı olarak çalıştırmak en iyi uygulamadır.
UFW Kurulumu
UFW, standart Ubuntu 24.04 kurulumunun bir parçasıdır ve sisteminizde bulunmalıdır. Herhangi bir nedenle kurulu değilse, aşağıdaki komutlarla paketi kurabilirsiniz:
sudo apt update
sudo apt install ufw
UFW Durumunu Kontrol Etme
UFW varsayılan olarak devre dışıdır. UFW hizmetinin durumunu aşağıdaki komutla kontrol edebilirsiniz:
sudo ufw status verbose
Eğer UFW etkinleştirilmemişse çıktı:
Status: inactive
Eğer etkinse, varsayılan politikaları (genellikle gelen trafiğe DENY, giden trafiğe ALLOW) görebilirsiniz.
UFW Varsayılan Politikaları
UFW'nin varsayılan davranışı, tüm gelen ve yönlendirilen trafiği engellemek ve tüm giden trafiğe izin vermektir. Bu, sunucunuza erişmeye çalışan herkesin, siz açıkça bir port açmadıkça bağlanamayacağı anlamına gelir. Sunucunuzda çalışan uygulamalar ise dış dünyaya erişebilir.
Uygulama Profilleri
UFW, paket kurulumu sırasında /etc/ufw/applications.d dizininde oluşturulan önceden tanımlanmış uygulama profillerini kullanabilir. Bu profiller, hizmete özel güvenlik kurallarını içerir.
Sunucunuzda mevcut olan tüm profilleri listelemek için:
sudo ufw app list
Örneğin, Nginx kuruluysa:
Available applications:
Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSH
Bir profilin içerdiği kuralları görmek için:
sudo ufw app info 'Nginx Full'
UFW'yi Etkinleştirme (SSH İzni Gerekli)
Uzak bir konumdan Ubuntu sunucunuza bağlanıyorsanız, güvenlik duvarını etkinleştirmeden önce mutlaka gelen SSH bağlantılarına izin vermelisiniz. Aksi takdirde bağlantınız kesilir.
- SSH bağlantılarına izin verin (varsayılan port 22 için):
- Eğer SSH standart dışı bir portta çalışıyorsa (örneğin 7722), o portu açın:
- Güvenlik duvarını etkinleştirin:
sudo ufw allow ssh
sudo ufw allow 7722/tcp
sudo ufw enable
UYARI:sudo ufw enablekomutunu çalıştırdığınızda mevcut SSH bağlantılarının kesilebileceği konusunda uyarılacaksınız. Devam etmek içinytuşuna basmalısınız.
Port Açma ve Kapatma
Belirli hizmetler için port açmak yaygın bir gereksinimdir. Genel sözdizimi:
ufw allow port_number/protocol
Örnekler:
- HTTP (80/tcp) izni vermek için:
sudo ufw allow http - Belirli bir IP adresinden (örneğin 64.63.62.61) tüm portlara izin vermek için:
sudo ufw allow from 64.63.62.61 - Belirli bir alt ağdan (Subnet) MySQL portuna (3306) izin vermek için:
sudo ufw allow from 192.168.1.0/24 to any port 3306 - Belirli bir ağ aralığını açmak için (örneğin 7100'den 7200'e kadar TCP):
sudo ufw allow 7100:7200/tcp
Bağlantıları Engelleme (Deny Rules)
Varsayılan olarak gelen trafiği engellediği için, belirli kaynaklardan gelen trafiği açıkça engellemek için deny komutunu kullanabilirsiniz. Örneğin, 23.24.25.0/24 ağından gelen tüm bağlantıları engellemek:
sudo ufw deny from 23.24.25.0/24
UFW Kurallarını Silme
Kuralları silmenin en kolay yolu numaralandırılmış durumu kullanmaktır.
- Kuralları numaralandırılmış olarak listeleyin:
- Silmek istediğiniz kuralın numarasını kullanarak silin (örneğin kural 3'ü silmek için):
sudo ufw status numbered
sudo ufw delete 3
Sorun Giderme
UFW SSH'yi engelledi: Uzak bir sunucuda SSH izni vermeden UFW'yi etkinleştirdiyseniz, konsol erişimi (hosting sağlayıcınız aracılığıyla) kullanarak sudo ufw allow ssh komutunu çalıştırmalı ve ardından sudo ufw enable yapmalısınız.
UFW Sıfırlama: sudo ufw reset komutu, UFW'yi devre dışı bırakır ve tüm kuralları siler. Yeniden yapılandırmak için kuralları tekrar eklemeli ve sudo ufw enable çalıştırmalısınız.
Sonuç
Bu kılavuz, Ubuntu 24.04 sunucunuzda UFW güvenlik duvarını kurma, temel kuralları uygulama ve yönetme adımlarını kapsamaktadır. Daha kapsamlı komut referansı için UFW man sayfası'nı inceleyebilirsiniz.



