Debian, Ubuntu, Linux Mint’te UFW Güvenlik Duvarı Nasıl Kullanılır ?

Merhabalar,

Bu eğitim, bazı gerçek dünyadan örneklerle Debian / Ubuntu / Linux Mint üzerinde UFW’yi (Komplike Olmayan Güvenlik Duvarı) nasıl kullanacağınızı gösterecektir. Güvenlik duvarını yönetmek, her sistem yöneticisinin bilmesi gereken temel bir beceridir. Bu makale okuyucunun UFW ile başlamasını amaçlamaktadır, ancak UFW’nin giriş ve çıkışlarını açıklamayacaktır.

 

UFW, bir Netfilter güvenlik duvarının yönetilmesini kolaylaştırmak için iptables için bir ön uçtur, dolayısıyla “Komplike Olmayan Güvenlik Duvarı” adı verilir. OpenBSD’nin Paket Filtresine benzer sözdizimine sahip bir komut satırı arayüzü sağlar. Özellikle ana bilgisayar tabanlı bir güvenlik duvarı olarak çok uygundur. UFW, Debian tabanlı Linux Distros’ta önerilen iptables ön ucudur ve genellikle bu dağıtımlara önceden yüklenmiştir. Varsayılan olarak, UFW hem IPv4 hem de IPv6 adresi için güvenlik duvarı kuralları belirler. Bir başka iyi bilinen iptables ön ucu, RPM tabanlı Linux dağıtımlarında (RHEL, CentOS, Fedora, OpenSUSE, vb.) Varsayılan güvenlik duvarı uygulaması olan güvenlik duvarıdır.

 

Diğer Iptables Restore Servisini Devre Dışı Bırakma:

Muhtemelen bildiğiniz gibi, iptables güvenlik duvarı kuralları, işletim sistemi kapandığında ve iptables programının kendisi güvenlik duvarı kurallarını geri yüklemediğinde temizlenir. Varsayılan olarak UFW, sistem yeniden başlatıldıktan sonra güvenlik duvarı kurallarını geri yükler. UFW’yi kullanmadan önce, sisteminizde başka bir iptables geri yükleme hizmeti olup olmadığını kontrol etmeniz önemlidir. İki geri yükleme hizmeti varsa, bunlar birbiriyle çakışır ve bu da genellikle sistem yeniden başlatıldıktan sonra web uygulamalarının kullanılamamasına neden olur.

 

Doğrudan iptables güvenlik duvarını kullanıyorsanız ve şimdi UFW’ye geçmek istiyorsanız, iptables geri yükleme hizmetinizi devre dışı bırakmanız yeterlidir. Iptables-persistent, Debian / Ubuntu’da iyi bilinen bir iptables geri yükleme hizmetidir. Aşağıdaki komutla çalışıp çalışmadığını kontrol edebilirsiniz.

systemctl status iptables-persistent

Çalışıyorsa, durdurabilir ve devre dışı bırakabilirsiniz.

sudo systemctl stop iptables-persistent
sudo systemctl disable iptables-persistent

 

sisteminizden kaldırabilirsiniz.

sudo apt remove iptables-persistent

 

 

 

Aynı işlemi iptable içinde yapıyorum.

systemctl status iptables

 

Bu iptables hizmeti, iptables güvenlik duvarı kurallarını geri yüklemek için iRedMail ile birlikte gönderilir. Çalışıyorsa, durdurabilir ve devre dışı bırakabilirsiniz.Benim sistemde bu kurulu olmadığı için kaldırma işlemini yapmama gerek yok.Fakat sizler için kaldırma komutlarını aşağıda paylaşıyorum.

sudo systemctl stop iptables
sudo systemctl disable iptables

 

Şimdi UFW’yi nasıl kullanacağımızı öğrenelim

 

Debian / Ubuntu / Linux Mint Sunucusunda UFW kurulumu:

 

UFW genellikle Debian / Ubuntu / Linux Mint’e önceden yüklenir, ancak yüklemek için aşağıdaki komutu her zaman çalıştırabilirsiniz.

sudo apt install ufw

 

 

 

Kurulumda ufw devre dışı bırakılır. UFW durumunu şu şekilde kontrol edebilirsiniz

sudo ufw status

 

 

UFW, varsayılan gelen reddetme politikası, varsayılan iletme reddetme politikası ve varsayılan giden izin politikası ile gelen ve yönlendirilen bağlantılar için yeni bağlantılar için durum bilgisi içeren izleme ile birlikte gelir. UFW’yi etkinleştirmeden önce, sunucunuzun nmap (Network Mapper) yardımıyla elde edilebilecek genel IP adresinde hangi portların açıldığını bilmeniz gerekir.

Debian/Ubuntu/Linux Mint sunucunuza nmap yükleyin ve açık IP adresindeki açık portları tarayın.

sudo apt install nmap
sudo nmap 192.168.88.127

 

 

Ayrıca, sudo nmap localhost çalıştırılarak elde edilebilen, yalnızca localhost’ta dinleyen açık bağlantı noktaları da vardır, ancak bunlar için endişelenmemize gerek yoktur.

Nmap varsayılan olarak yalnızca TCP bağlantı noktalarını tarar. UDP bağlantı noktalarını taramak için aşağıdaki komutu kullanabiliriz.

sudo nmap -sU 192.168.88.127

 

 

Ancak, UDP taraması çok yavaş. Bu kadar uzun süre bekleyemezseniz, UDP bağlantı noktalarını listelemek için netstat’ı kullanabilirsiniz.

sudo netstat -lnpu

 

Sunucunuzda açık olan TCP ve UDP portlarını aldıktan sonra, hangi portların gelen bağlantıları kabul etmesine izin verileceğine karar vermeniz gerekir. Çalışan bir openSSH sunucusu varsa, UFW’yi etkinleştirmeden önce her zaman TCP bağlantı noktası 22’ye izin vermelisiniz. Bu, aşağıdaki komutla gerçekleştirilir.

sudo ufw allow 22/tcp

veya aşağıdaki şekilde

sudo ufw allow ssh

 

 

Muhtemelen HTTP ve HTTPS trafiğine izin vermek istiyorsunuz, bu nedenle 80 ve 443 numaralı TCP bağlantı noktalarında gelen bağlantıya izin vermek için aşağıdaki komutu çalıştırın.

sudo ufw allow 80/tcp 
sudo ufw allow 443/tcp

 

 

Aynı Anda Birden Çok Bağlantı Noktası Açma

sudo ufw allow 80,443,22/tcp

 

UFW’yi etkinleştirme

UFW’de izin verilen bağlantı noktalarını ayarladıktan sonra UFW’yi etkinleştirmeniz gerekir. Ancak bunu yapmadan önce, güvenlik duvarınızın doğru çalışıp çalışmadığını daha iyi anlayabilmeniz için aşağıdaki komutla günlük kaydını etkinleştirmeniz önerilir.

sudo ufw logging on

 

Varsayılan günlük düzeyi ‘düşük’tür. Günlük dosyası /var/log/ufw.log‘ dur. Genellikle “orta” günlük seviyesini kullanırım.

sudo ufw logging medium

 

Şimdi Aktifleştirelim.

sudo ufw enable

 

Servisin durumunu kontrol edelim.

sudo ufw status

 

 

Daha fazla bilgi görüntülemek için;

 

 

Artık hangi bağlantı noktalarının hala açık olduğunu bulmak için sunucunuzu yeniden tarayabilirsiniz.

sudo nmap 192.168.88.127

 

 

Güvenlik Duvarı Kuralı Nasıl Silinir:

Öncelikle aşağıdaki komutla silmek istediğiniz güvenlik duvarı kuralının referans numarasını almanız gerekir.

sudo ufw status numbered

 

daha sonra bir kuralı, örneğin 3. kuralı silebiliriz.

sudo ufw delete 3

Bir kuralı sildikten sonra referans numarasının değişeceğini unutmayın, bu nedenle başka bir kuralı silmek için sudo ufw status numaralı tekrar çalıştırmanız gerekir.

 

 

UFW’yi sıfırla:

Bir hata yaptıysanız, güvenlik duvarını devre dışı bırakabilir ve kurulum varsayılanlarına sıfırlayabilirsiniz.

sudo ufw reset

 

 

Bu özellikle yeni başlayanlar için kullanışlıdır.

 

UFW Uygulama Profili:

Birçok sunucu programı UFW profilleriyle birlikte gelir. Tüm uygulama profillerini aşağıdakilerle listeleyebilirsiniz:

sudo ufw app list

 

 

Belirli bir uygulama profili, örneğin “OpenSSH” profili hakkında bilgi gösterebiliriz.

sudo ufw app info OpenSSH

 

Bu profilin kullandığı portun TCP port 22 olduğunu görebiliriz. Bu uygulama profilini aşağıdaki komutla etkinleştirirsek, TCP port 22’e izin verilecektir.

sudo ufw allow OpenSSH

 

 

UFW ile IP Adresi Blaacklist Oluşturma:

Posta sunucunuza sürekli olarak spam göndermeye çalışan bir spam gönderici olduğunu varsayalım. Aşağıdaki komutu kullanarak, spam göndericinin IP adresinin posta sunucunuzun 25 numaralı TCP bağlantı noktasına erişmesini engellemek için UFW’yi kullanabilirsiniz. 192.168.88.115 ‘i spam gönderenin IP adresiyle değiştirin.Ben burada spam gönderen IP olarak 192.168.88.115 tanımlıyorum.

sudo ufw insert 1 deny in from 192.168.88.115 to any port 25 proto tcp

 

Yeni eklenen güvenlik duvarı kurallarının varsayılan olarak en altta yer aldığını unutmayın. Daha önce herhangi bir yerden 25 numaralı bağlantı noktasına erişime izin verdiyseniz, yukarıda olduğu gibi reddetme kuralını ilk kural olarak eklemeniz gerekir, böylece önce reddetme kuralı uygulanacaktır. Her zaman ilk kural olarak yeni reddetme kuralı ekleyebilirsiniz.

sudo ufw insert 1 deny in from 192.168.88.120 to any port 25 proto tcp

 

Ayrıca aşağıdaki gibi bir IP adresi aralığını da engelleyebilirsiniz.

sudo ufw insert 1 deny in from 192.168.0.0/24 to any port 25 proto tcp

 

Bir IP adresinin sunucunuzdaki tüm bağlantı noktalarına erişmesini engellemek için şunu çalıştırın

sudo ufw insert 1 deny in from 192.168.88.150

 

 

UFW ile IP Adresi Beyaz Listesi Oluşturma:

 

Şimdi bir OpenSSH sunucusu çalıştırdığınızı ve yalnızca belirli IP adreslerinin sunucunuzda SSH üzerinden oturum açmasına izin vermek istediğinizi varsayalım. Bir IP adresi beyaz listesi oluşturmak için UFW’yi kullanabilirsiniz. Örneğin, evimde statik IP adresim yok, ancak bulutta birkaç VPN sunucusu kurdum, bu nedenle artık UFW’yi yalnızca VPN sunucumun IP adresinden 22 numaralı bağlantı noktasına gelen bağlantıya izin verecek şekilde yapılandırabilirim.

 

 

İlk olarak, IP adresini izin verilenler listesine ekleyin.

sudo ufw insert 1 allow in from 192.168.88.160 to any port 22 proto tcp

 

 

Ardından her yerden izin ver kuralının referans numarasını almanız ve bu kuralı silmeniz gerekir.

sudo ufw status numbered

 

 

Şimdi Her yerden gelen SSH bağlantılarını kabul eden kuralları silelim.Benim için 6, 8,9, 12  dir.Bunların hepsini silmeliyim.

sudo ufw delete reference-number 

Hem IPv4 hem de IPv6 kuralını silmeniz gerektiğini unutmayın. Ayrıca, önce üst kuralı silerseniz, alt kuralın referans numarasının değişeceğine dikkat edin.

Buradan itibaren, yalnızca IP adresiniz 22 numaralı TCP bağlantı noktasına erişebilir.

 

 

UFW ile IP Maskeleme Nasıl Kurulur:

Bazen kendi VPN sunucunuzu kurmak istersiniz, o zaman VPN istemcileri için sanal bir yönlendirici olması için VPN sunucunuzda IP maskeleme kurmanız gerekir. Ne yazık ki, UFW bunu yapmak için uygun bir yol sağlamaz. Bir UFW yapılandırma dosyasına iptables komutunu eklememiz gerekiyor.

sudo nano /etc/ufw/before.rules

 

Varsayılan olarak, filtre tablosu için bazı kurallar vardır. Bu dosyanın sonuna aşağıdaki satırları ekleyelim

# NAT table rules/* Your code... */
*nat
:POSTROUTING ACCEPT [0:0]
# Forward traffic through eth0 - Change eth0 to match your network interface
-A POSTROUTING -o eth0 -j MASQUERADE

# End each table with the 'COMMIT' line or these rules won't be processed
COMMIT

Ana ağ arabiriminiz eth0 değilse, eth0’ı ip addr komutuyla elde edilebilen ağ arabirim adınız olarak değiştirmeniz gerektiğine dikkat edin. Ve yeni bir tabloya, yani nat tablosuna güvenlik duvarı kuralları eklediğimiz için, ‘COMMIT’ satırını eklememiz gerekiyor.Benim ağ bağdaştırıcımın adı ens33 olduğu için bu şekilde değiştirdim.

 

Varsayılan olarak, UFW paket iletmeyi yasaklar, bu harika çünkü İnternet’teki rastgele kişilerin kötü amaçlı şeyler yapmak için kutunuzu kullanmasını önler. Ancak özel ağımız için yönlendirmeye izin vermemiz gerekiyor. Bu dosyada ufw-önce-iletme zincirini bulun ve aşağıdaki 3 satırı ekleyin; kaynak IP veya hedef IP 192.168.88.0/24 aralığındaysa paket iletimini kabul eder.Bu arada 192.168.88.0/24 benim network aralığım siz kendi trusted network aralığını belirtmelisiniz.

# allow forwarding for trusted network
-A ufw-before-forward -s 192.168.88.0/24 -j ACCEPT
-A ufw-before-forward -d 192.168.88.0/24 -j ACCEPT

 

Dosyayı kaydedin ve kapatın. Ardından UFW’yi yeniden başlatalım.

sudo systemctl restart ufw

Bu, UFW yapılandırmasıyla ilgili olmasa da, paketleri yönlendirmek için IP iletmeyi de ayarlamanız gerekir. Bu, /etc/sysctl.conf dosyasının sonunda aşağıdakileri ayarlayarak yapılabilir.

net.ipv4.ip_forward = 1

Ardından aşağıdaki komutla değişiklikleri uygulayın.

sudo sysctl -p

 

UFW’de Port Yönlendirme Nasıl Kurulur:

Yönlendiricinizde UFW kullanıyorsanız ve HTTP istekleri gibi paketleri dahili LAN ana bilgisayarlarına yönlendirmek istiyorsanız ne olur? Bu durumda, port yönlendirmeyi ayarlamanız gerekir. /etc/ufw/before.rules dosyasını düzenleyin.

sudo nano /etc/ufw/before.rules
Ardından NAT tablosuna COMMIT satırının üstüne aşağıdaki satırları ekleyin. 192.168.88.127i yönlendiricinizin genel IP adresiyle değiştirin.
:PREROUTING ACCEPT [0:0]
# forward 12.34.56.78  port 80 to 192.168.1.100:80
# forward 12.34.56.78  port 443 to 192.168.1.100:443
-A PREROUTING -i eth0 -d 12.34.56.78  -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100:80
-A PREROUTING -i eth0 -d 12.34.56.78  -p tcp --dport 443 -j DNAT --to-destination 192.168.1.100:443

Bu, UFW’ye yerel ağdaki 10.10.10.198 ana bilgisayarına HTTP ve HTTPS isteklerini iletmek için DNAT hedefini kullanmasını söyler.

Önemli Bilgi :DNAT (Hedef NAT), hedef IP adresini değiştirir.Tipik bir örnek, port yönlendirmedir. SNAT (Kaynak NAT), kaynak IP adresini değiştirir. Tipik bir örnek, bir Wifi yönlendiricinin arkasındaki bir ana bilgisayarın İnternet’te gezinmek istemesidir.
Değişikliklerin etkili olması için UFW’yi yeniden başlatın.
sudo systemctl restart ufw
Ayrıca, yukarıda belirtildiği gibi /etc/sysctl.conf dosyasında IP iletmeyi etkinleştirmeniz gerekir.
10.10.10.198 ana bilgisayarı da UFW çalıştırıyorsa, UFW’de 80 ve 443 numaralı bağlantı noktalarına izin vermeniz gerekir.
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
10.10.10.198  LAN ana bilgisayarının ağ geçidi olarak UFW yönlendiriciyi kullanması gerektiğini unutmayın. Ağ geçidi olarak başka bir IP adresi kullanıyorsa, bağlantı noktası iletme çalışmaz.
Bulut Sunucularında BitTorrent Trafiği Nasıl Engellenir:
Bulut üzerinde bir sunucu çalıştırırsanız, muhtemelen sunucudaki BitTorrent trafiğini engellemek istersiniz, çünkü siz veya başka biri yanlışlıkla BitTorrent aracılığıyla yasa dışı içerik (Filmler, TV Şovları) indirirseniz ve yakalanırsanız, barındırma sağlayıcınız muhtemelen sunucunuzu askıya alacaktır. hesap.
Modern BitTorrent istemcileri, eşler arasındaki trafiği şifreler, bu nedenle BitTorrent trafiğini diğer trafik türlerinden ayırt etmek kolay değildir. BitTorrent trafiğini engellemenin mükemmel bir yolu olmasa da, işte basit bir çözüm.
Varsayılan olarak giden trafiği engelle.
sudo ufw default deny outgoing

Ardından belirli giden bağlantı noktalarına izin verin. Örneğin, DNS bağlantı noktasına izin vermeniz gerekir.

sudo ufw allow out 53
Ayrıca yazılım paketlerinizi depodan güncellemek için 80 ve 443 numaralı bağlantı noktalarına izin vermeniz gerekir.
sudo ufw allow out 80/tcp
sudo ufw allow out 443/tcp
Bu sizin posta sunucunuzsa, 25 numaralı bağlantı noktasına izin vermeniz gerekir.
sudo ufw allow out 25/tcp
Değişikliklerin etkili olması için UFW’yi yeniden başlatın.
sudo systemctl restart ufw
Bu mükemmel bir çözüm olmasa da, bazı kullanıcılar BitTorrent istemcilerini 80 veya 443 numaralı bağlantı noktasını kullanacak şekilde yapılandırabileceğinden, gerçekte bu durum oldukça nadirdir. Çoğu kullanıcı yalnızca varsayılan ayarları kullanır ve sunucudaki BitTorrent istemcim, güvenlik duvarında yukarıdaki kuralları uyguladığımda tüm indirme ve yükleme işlemlerini hemen durdurdu. Durmazsa, BitTorrent istemcinizi veya sunucunuzu yeniden başlatın.
Belirli Bir IP Adresine Giden Bağlantıları Engelleme:
İlk olarak, giden trafiğe izin vermeniz gerekir
sudo ufw default allow outgoing
Ardından, belirli bir IP adresini şununla engelleyin
sudo ufw insert 1 deny out to 12.34.56.78

 

UFW yi yeniden başlatınız

sudo systemctl restart ufw

 

İşte bu uzun yazı sonunda bitti.Umarım bu bilgiler sizler için faydalı olur.

 

 

 

Bu eğiticiye oy ver
[Total: 9 Average: 5]
Firat CANOĞLU TAĞ