Ubuntu ve Debian'da UFW Güvenlik Duvarı Nasıl Kurulur


Doğru çalışan bir güvenlik duvarı, Linux sistem güvenliğinin tamamının en önemli parçasıdır. Varsayılan olarak, Debian ve Ubuntu dağıtımı, UFW (Karmaşık Güvenlik Duvarı) adı verilen bir güvenlik duvarı yapılandırma aracıyla birlikte gelir; bu, yapılandırma ve yapılandırma için en popüler ve kullanımı kolay bir komut satırı aracıdır. Ubuntu ve Debian dağıtımlarında güvenlik duvarını yönetme.

Bu makalede, Ubuntu ve Debian dağıtımlarında UFW güvenlik duvarının nasıl kurulacağını ve kurulacağını açıklayacağız.

Önkoşullar

Bu yazıya başlamadan önce Ubuntu veya Debian sunucunuza sudo kullanıcısı veya root hesabıyla giriş yaptığınızdan emin olun. Eğer bir sudo kullanıcınız yoksa root kullanıcısı olarak aşağıdaki talimatları kullanarak bir tane oluşturabilirsiniz.

adduser username
usermod -aG sudo username 
su - username
sudo whoami

UFW Güvenlik Duvarını Ubuntu ve Debian'a yükleyin

UFW (Karmaşık Olmayan Güvenlik Duvarı) Ubuntu ve Debian'da varsayılan olarak kurulmalıdır, kurulu değilse aşağıdaki komutu kullanarak APT paket yöneticisini kullanarak kurun.

sudo apt install ufw

UFW Güvenlik Duvarını kontrol edin

Kurulum tamamlandıktan sonra yazarak UFW'nin durumunu kontrol edebilirsiniz.

sudo ufw status verbose

İlk kurulumda UFW güvenlik duvarı varsayılan olarak devre dışıdır, çıktı aşağıdakine benzer olacaktır.

Status: inactive

UFW Güvenlik Duvarını Etkinleştir

Güvenlik duvarını yüklemesi ve önyükleme sırasında başlamasını sağlaması gereken aşağıdaki komutu kullanarak UFW güvenlik duvarını etkinleştirebilir veya etkinleştirebilirsiniz.

sudo ufw enable

UFW güvenlik duvarını devre dışı bırakmak için güvenlik duvarını kaldıran ve önyükleme sırasında başlatılmasını devre dışı bırakan aşağıdaki komutu kullanın.

sudo ufw disable 

UFW Varsayılan Politikaları

Varsayılan olarak, UFW güvenlik duvarı gelen tüm bağlantıları reddeder ve yalnızca sunucuya giden tüm bağlantılara izin verir. Bu, siz özellikle bağlantı noktasını açmadığınız sürece hiç kimsenin sunucunuza erişemeyeceği, sunucunuzda çalışan tüm hizmetler veya uygulamaların dış ağa erişebileceği anlamına gelir.

Varsayılan UFW güvenlik duvarı politikaları /etc/default/ufw dosyasına yerleştirilir ve aşağıdaki komut kullanılarak değiştirilebilir.

sudo ufw default deny incoming
sudo ufw default allow outgoing

UFW Uygulama Profilleri

APT paket yöneticisini kullanarak bir yazılım paketi yüklerken, /etc/ufw/applications.d dizininde hizmeti tanımlayan ve UFW ayarlarını barındıran bir uygulama profili içerecektir.

Aşağıdaki komutu kullanarak sunucunuzdaki tüm mevcut uygulama profillerini listeleyebilirsiniz.

sudo ufw app list

Sisteminizdeki yazılım paketi kurulumlarına bağlı olarak çıktı aşağıdakine benzer olacaktır:

Available applications:
  APACHE
  APACHE Full
  APACHE SECURE
  CUPS
  OpenSSH
  Postfix
  Postfix SMTPS
  Postfix Submission

Belirli bir profil ve tanımlanmış kurallar hakkında daha fazla bilgi almak istiyorsanız aşağıdaki komutu kullanabilirsiniz.

sudo ufw app info 'Apache'
Profile: Apache
Title: Web Server 
Description: Apache V2 is the next generation f the omnipresent Apache web server.

Ports:
  80/tcp

UFW ile IPv6'yı etkinleştirin

Sunucunuz IPv6 ile yapılandırılmışsa UFW'nizin IPv6 ve IPv4 desteğiyle yapılandırıldığından emin olun. Bunu doğrulamak için favori düzenleyicinizi kullanarak UFW yapılandırma dosyasını açın.

sudo vi /etc/default/ufw

Ardından, gösterildiği gibi yapılandırma dosyasında “IPV6”'nın "yes" olarak ayarlandığından emin olun.

IPV6=yes

Kaydet ve çık. Ardından güvenlik duvarınızı aşağıdaki komutlarla yeniden başlatın:

sudo ufw disable
sudo ufw enable

UFW'de SSH Bağlantılarına İzin Ver

UFW güvenlik duvarını şimdiye kadar etkinleştirdiyseniz tüm gelen bağlantıları engeller ve sunucunuza uzak bir yerden SSH üzerinden bağlanıyorsanız artık tekrar bağlanamazsınız.

Aşağıdaki komutu kullanarak bunun olmasını engellemek için sunucumuza SSH bağlantılarını etkinleştirelim:

sudo ufw allow ssh

Özel SSH bağlantı noktası kullanıyorsanız (örneğin 2222 bağlantı noktası), aşağıdaki komutu kullanarak bu bağlantı noktasını UFW güvenlik duvarında açmanız gerekir.

sudo ufw allow 2222/tcp

Tüm SSH bağlantılarını engellemek için aşağıdaki komutu yazın.

sudo ufw deny ssh/tcp
sudo ufw deny 2222/tcp  [If using custom SSH port]

UFW'de Belirli Bağlantı Noktalarını Etkinleştir

Ayrıca, güvenlik duvarında belirli bir bağlantı noktası üzerinden belirli bir hizmete bağlantı yapılmasına izin vermek için de açabilirsiniz. Örneğin, 80 (HTTP) ve 443 (HTTPS) bağlantı noktalarını dinleyen bir web sunucusu kurmak istiyorsanız >) varsayılan olarak.

Aşağıda Apache hizmetlerine gelen bağlantılara nasıl izin verileceğiyle ilgili birkaç örnek verilmiştir.

UFW'de Bağlantı Noktası 80 HTTP'yi açın
sudo ufw allow http     [By service name]
sudo ufw allow 80/tcp   [By port number]
sudo ufw allow 'Apache' [By application profile]
UFW'de Bağlantı Noktası 443 HTTPS'yi açın
sudo ufw allow https
sudo ufw allow 443/tcp
sudo ufw allow 'Apache Secure'

UFW'de Bağlantı Noktası Aralıklarına İzin Ver

Çeşitli bağlantı noktalarında (5000-5003) çalıştırmak istediğiniz bazı uygulamalarınız olduğunu varsayarak, aşağıdaki komutları kullanarak tüm bu bağlantı noktalarını ekleyebilirsiniz.

sudo ufw allow 5000:5003/tcp
sudo ufw allow 5000:5003/udp

Belirli IP Adreslerine İzin Ver

Belirli bir IP adresinden (192.168.56.1) tüm bağlantı noktalarında bağlantılara izin vermek istiyorsanız IP adresinden önce from'u belirtmeniz gerekir.

sudo ufw allow from 192.168.56.1

Belirli Bağlantı Noktasında Belirli IP Adreslerine İzin Ver

Ev makinenizden 192.168.56.1 IP adresine sahip belirli bir bağlantı noktasında (örneğin bağlantı noktası 22) bağlantıya izin vermek için herhangi bir bağlantı noktasını< eklemeniz gerekir. ve gösterildiği gibi IP adresinden sonra bağlantı noktası numarası.

sudo ufw allow from 192.168.56.1 to any port 22

Ağ Alt Ağlarının Belirli Bağlantı Noktasına İzin Verilmesi

192.168.1.1 ila 192.168.1.254 ile 22 bağlantı noktasına (SSH) kadar belirli IP adresleri için bağlantılara izin vermek için , aşağıdaki komutu çalıştırın.

sudo ufw allow from 192.168.1.0/24 to any port 22

Belirli Ağ Arayüzüne İzin Ver

Belirli bir bağlantı noktası 22 (SSH) için belirli eth2 ağ arayüzüne bağlantılara izin vermek için aşağıdaki komutu çalıştırın.

sudo ufw allow in on eth2 to any port 22

UFW'de Bağlantıları Reddet

Bağlantıyı UFW'de özel olarak açmadığınız sürece, varsayılan olarak tüm gelen bağlantılar engellenir. Örneğin, 80 ve 443 bağlantı noktalarını açtınız ve web sunucunuz bilinmeyen 11.12.13.0/24 ağının saldırısı altında.

Bu belirli 11.12.13.0/24 ağ aralığındaki tüm bağlantıları engellemek için aşağıdaki komutu kullanabilirsiniz.

sudo ufw deny from 11.12.13.0/24

Yalnızca 80 ve 443 bağlantı noktalarındaki bağlantıları engellemek istiyorsanız aşağıdaki komutları kullanabilirsiniz.

sudo ufw deny from 11.12.13.0/24 to any port 80
sudo ufw deny from 11.12.13.0/24 to any port 443

UFW Kurallarını Sil

UFW kurallarını silmenin kural numarasına ve gerçek kurala göre 2 yolu vardır.

Kural numarasını kullanarak bir UFW kuralını silmek için öncelikle aşağıdaki komutu kullanarak kuralları numaralara göre listelemeniz gerekir.

sudo ufw status numbered
Örnek Çıktı
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 80/tcp                     ALLOW IN    Anywhere

1 numaralı kuralı silmek için aşağıdaki komutu kullanın.

sudo ufw delete 1

İkinci yöntem, gerçek kuralı kullanarak bir kuralı silmektir; örneğin bir kuralı silmek için, gösterildiği gibi protokolle birlikte bağlantı noktası numarasını belirtin.

sudo ufw delete allow 22/tcp

Prova UFW Kuralları

--dry-run işaretini kullanarak sistem güvenlik duvarında herhangi bir değişiklik yapmadan herhangi bir ufw komutunu çalıştırabilirsiniz; bu sadece olması gereken değişiklikleri gösterir.

sudo ufw --dry-run enable

UFW Güvenlik Duvarını Sıfırla

Herhangi bir nedenle, tüm güvenlik duvarı kurallarını silmek/sıfırlamak istiyorsanız, aşağıdaki komutları yazın, tüm değişikliklerinizi geri alacak ve yeniden başlayacaktır.

sudo ufw reset
sudo ufw status

UFW Gelişmiş İşlevsellik

UFW güvenlik duvarı iptables'ın yaptığı her şeyi yapabilir. Bu, basit iptables-restore metin dosyalarından başka bir şey olmayan farklı kural dosyaları kümeleriyle yapılabilir.

UFW güvenlik duvarının ayarlanmasına veya ek iptables komutlarının eklenmesine ufw komutu aracılığıyla izin verilmez, yalnızca aşağıdaki metin dosyalarının değiştirilmesi meselesidir

  • /etc/default/ufw: Önceden tanımlanmış kurallara sahip ana yapılandırma dosyası.
  • /etc/ufw/before[6].rules: Bu dosyada kurallar ufw komutu ile eklenmeden önce hesaplanır.
  • /etc/ufw/after[6].rules: Bu dosyada kurallar ufw komutu ile eklendikten sonra hesaplanır.
  • /etc/ufw/sysctl.conf: Bu dosya çekirdek ağını ayarlamak için kullanılır.
  • /etc/ufw/ufw.conf: Bu dosya açılışta ufw'yi etkinleştirir.

Bu kadar! UFW, tek bir ufw komutuyla karmaşık kuralları tanımlamak için kullanıcı dostu bir arayüze sahip, iptables için mükemmel bir ön uçtur.

Bu ufw makalesi hakkında paylaşmak istediğiniz sorularınız veya düşünceleriniz varsa bize ulaşmak için aşağıdaki yorum formunu kullanın.