Android

Ubuntu 18.04'te ufw ile güvenlik duvarı nasıl kurulur

Ubuntu Server 18.04.1. Настройка файрвола UFW

Ubuntu Server 18.04.1. Настройка файрвола UFW

İçindekiler:

Anonim

Düzgün yapılandırılmış bir güvenlik duvarı, genel sistem güvenliğinin en önemli yönlerinden biridir. Varsayılan olarak Ubuntu, UFW (Karmaşık Güvenlik Duvarı) adlı bir güvenlik duvarı yapılandırma aracıyla birlikte gelir. UFW iptables güvenlik duvarı kurallarını yönetmek için kullanıcı dostu bir ön uçtur ve asıl amacı iptables yönetimini kolaylaştırmak veya adın karmaşık olmadığını belirtmektir.

Ön şartlar

Bu eğiticiye başlamadan önce, sunucunuza sudo ayrıcalıklarına sahip bir kullanıcı hesabıyla veya kök kullanıcıyla oturum açtığınızdan emin olun. En iyi uygulama, yönetici komutlarını root yerine sudo kullanıcısı olarak çalıştırmaktır. Ubuntu sisteminizde sudo kullanıcısı yoksa, bu talimatları izleyerek bir kullanıcı oluşturabilirsiniz.

UFW'yi yükle

Karmaşık olmayan Güvenlik Duvarı varsayılan olarak Ubuntu 18.04'e yüklenmelidir, ancak sisteminizde yüklü değilse, paketi aşağıdakileri yazarak yükleyebilirsiniz:

sudo apt install ufw

UFW Durumunu Kontrol Et

Kurulum tamamlandıktan sonra, aşağıdaki komutla UFW'nin durumunu kontrol edebilirsiniz:

sudo ufw status verbose

UFW varsayılan olarak devre dışıdır. Daha önce UFW'yi daha önce hiç etkinleştirmediyseniz, çıkış şöyle görünecektir:

Status: inactive

UFW etkinleştirilirse, çıkış aşağıdakine benzer olacaktır:

UFW Varsayılan Politikaları

Varsayılan olarak, UFW gelen tüm bağlantıları engeller ve tüm giden bağlantılara izin verir. Bu, özellikle bağlantı noktasını açmadıkça sunucunuza erişmeye çalışan herkesin bağlanamayacağı, sunucunuzda çalışan tüm uygulamaların ve hizmetlerin dış dünyaya erişebileceği anlamına gelir.

Varsayılan politikalar /etc/default/ufw dosyasında tanımlanmıştır ve sudo ufw default kullanılarak değiştirilebilir Komut.

Güvenlik duvarı politikaları, daha ayrıntılı ve kullanıcı tanımlı kurallar oluşturmanın temelini oluşturur. Çoğu durumda, ilk UFW Varsayılan Politikaları iyi bir başlangıç ​​noktasıdır.

Uygulama Profilleri

apt komutuyla bir paket yüklerken /etc/ufw/applications.d dizinine bir uygulama profili /etc/ufw/applications.d . Profil, servisi açıklar ve UFW ayarlarını içerir.

Sunucunuzda bulunan tüm uygulama profillerini aşağıdakileri yazarak listeleyebilirsiniz:

sudo ufw app list

Sisteminizde kurulu paketlere bağlı olarak, çıktı aşağıdakine benzer olacaktır:

Available applications: Dovecot IMAP Dovecot POP3 Dovecot Secure IMAP Dovecot Secure POP3 Nginx Full Nginx HTTP Nginx HTTPS OpenSSH Postfix Postfix SMTPS Postfix Submission

Belirli bir profil ve dahil edilen kurallar hakkında daha fazla bilgi bulmak için aşağıdaki komutu kullanın:

sudo ufw app info 'Nginx Full'

Profile: Nginx Full Title: Web Server (Nginx, HTTP + HTTPS) Description: Small, but very powerful and efficient web server Ports: 80, 443/tcp

Yukarıdaki çıktıdan görebileceğiniz gibi 'Nginx Full' profili 80 ve 443 bağlantı noktalarını açar.

SSH Bağlantılarına İzin Ver

UFW güvenlik duvarını etkinleştirmeden önce, gelen SSH bağlantılarına izin verecek bir kural eklememiz gerekir. Sunucunuza neredeyse her zaman geçerli olan uzak bir konumdan bağlanıyorsanız ve gelen SSH bağlantılarına açıkça izin vermeden önce UFW güvenlik duvarını etkinleştirirseniz, artık Ubuntu sunucunuza bağlanamayacaksınız.

UFW güvenlik duvarınızı gelen SSH bağlantılarına izin verecek şekilde yapılandırmak için aşağıdaki komutu yazın:

sudo ufw allow ssh

Rules updated Rules updated (v6)

SSH bağlantı noktasını bağlantı noktası 22 yerine özel bir bağlantı noktasına değiştirdiyseniz, bu bağlantı noktasını açmanız gerekir.

Örneğin, ssh arka plan programınız 4422 numaralı bağlantı noktasını dinliyorsa, o bağlantı noktasındaki bağlantılara izin vermek için aşağıdaki komutu kullanabilirsiniz:

sudo ufw allow 4422/tcp

UFW'yi etkinleştir

Artık UFW güvenlik duvarınız gelen SSH bağlantılarına izin verecek şekilde yapılandırıldığına göre, şunu yazarak etkinleştirebiliriz:

sudo ufw enable

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup

Güvenlik duvarını etkinleştirmenin mevcut ssh bağlantılarını bozabileceği konusunda uyarılırsınız, sadece y ve Enter .

Diğer bağlantı noktalarında bağlantılara izin ver

Sunucunuzda çalışan uygulamalara ve özel gereksinimlerinize bağlı olarak diğer bazı bağlantı noktalarına gelen erişime de izin vermeniz gerekir.

Aşağıda, en yaygın hizmetlerden bazılarına gelen bağlantılara nasıl izin verileceğine ilişkin birkaç örnek göstereceğiz:

80 numaralı bağlantı noktasını aç - HTTP

HTTP bağlantılarına aşağıdaki komutla izin verilebilir:

sudo ufw allow

http yerine 80 numaralı bağlantı noktası numarasını kullanabilirsiniz:

sudo ufw allow 80/tcp

veya uygulama profilini (bu durumda 'Nginx HTTP') kullanabilirsiniz:

sudo ufw allow 'Nginx

Açık bağlantı noktası 443 - HTTPS

HTTP bağlantılarına aşağıdaki komutla izin verilebilir:

sudo ufw allow

https profili yerine aynı şeyi elde etmek için 443 numaralı bağlantı noktasını kullanabilirsiniz:

sudo ufw allow 443/tcp

veya 'Nginx HTTPS' uygulama profilini kullanabilirsiniz:

sudo ufw allow 'Nginx

Açık bağlantı noktası 8080

sudo ufw allow 8080/tcp

Bağlantı Noktası Aralıklarına İzin Ver

UFW, tek bağlantı noktalarına erişime izin vermek yerine bağlantı noktası aralıklarına erişime izin vermemizi sağlar. UFW ile bağlantı noktası aralıklarına izin verirken, protokolü tcp veya udp belirtmeniz gerekir. Örneğin, hem tcp hem de udp üzerinde 7100 ile 7200 arasındaki bağlantı noktalarına izin vermek istiyorsanız, aşağıdaki komutu çalıştırın:

sudo ufw allow 7100:7200/tcp sudo ufw allow 7100:7200/udp

Belirli IP Adreslerine İzin Ver

64.63.62.61 IP adresine sahip ev makinenizdeki tüm bağlantı noktalarına erişime izin vermek için from ardından beyaz listeye eklemek istediğiniz IP adresinden belirtin:

sudo ufw allow from 64.63.62.61

Belirli bağlantı noktasında Belirli IP Adreslerine İzin Ver

Belirli bir bağlantı noktasına erişime izin vermek için 64.63.62.61 IP adresine sahip iş makinenizdeki bağlantı noktası 22'yi varsayalım, to any port noktası numarasını izleyen to any port kullanın:

sudo ufw allow from 64.63.62.61 to any port 22

Alt Ağlara İzin Ver

IP adreslerinin bir alt ağına bağlanmaya izin verme komutu, tek bir IP adresi kullanmayla aynıdır, tek fark, ağ maskesini belirtmenizdir. Örneğin, 192.168.1.1 ile 192.168.1.254 ile 3360 bağlantı noktası (MySQL) arasındaki IP adreslerine erişime izin vermek istiyorsanız, bu komutu kullanabilirsiniz:

sudo ufw allow from 192.168.1.0/24 to any port 3306

Belirli Bir Ağ Arayüzüne Bağlantılara İzin Ver

Belirli bir bağlantı noktasına erişime izin vermek için, 3360 numaralı bağlantı noktasını yalnızca belirli ağ arabirimi eth2 , izin ver allow in on ve ağ arabiriminin adını belirtmeniz gerekir:

sudo ufw allow in on eth2 to any port 3306

Bağlantıları reddet

Tüm gelen bağlantılar için varsayılan ilke deny şekilde ayarlanmıştır ve değiştirmediyseniz, bağlantıyı özel olarak açmazsanız UFW tüm gelen bağlantıları engeller.

Diyelim ki 80 ve 443 bağlantı noktalarını 23.24.25.0/24 ve sunucunuz 23.24.25.0/24 ağından saldırı altında. 23.24.25.0/24 itibaren tüm bağlantıları reddetmek için aşağıdaki komutu kullanabilirsiniz:

sudo ufw deny from 23.24.25.0/24

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

Reddetme kuralları yazmak, izin verme kuralları yazmakla aynıdır, yalnızca allow deny ile değiştirmeniz gerekir.

UFW Kurallarını Sil

Kural numarasına ve gerçek kuralı belirterek UFW kurallarını silmenin iki farklı yolu vardır.

Özellikle UFW'de yeniyseniz, UFW kurallarını kural numarasına göre silmek daha kolaydır. Bir kuralı kural numarasına göre silmek için önce silmek istediğiniz kuralın numarasını bulmanız gerekir, bunu aşağıdaki komutla yapabilirsiniz:

sudo ufw status numbered

Status: active To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 80/tcp ALLOW IN Anywhere 8080/tcp ALLOW IN Anywhere

8080 numaralı bağlantı noktasına bağlantılara izin veren kural olan 3 numaralı kuralı silmek için aşağıdaki komutu kullanın:

sudo ufw delete 3

İkinci yöntem, gerçek kuralı belirterek bir kuralı silmektir, örneğin 8069 bağlantı noktasını açmak için bir kural eklediyseniz, silebilirsiniz:

sudo ufw delete allow 8069

UFW'yi devre dışı bırak

Herhangi bir nedenle UFW'yi durdurmak ve kullanabileceğiniz tüm kuralları devre dışı bırakmak istiyorsanız:

sudo ufw disable

Daha sonra UTF'yi yeniden etkinleştirmek ve tüm kuralları etkinleştirmek istiyorsanız sadece şunu yazın:

sudo ufw enable

UFW'yi sıfırla

UFW sıfırlandığında UFW devre dışı bırakılır ve tüm etkin kurallar silinir. Tüm değişikliklerinizi geri almak ve yeni bir başlangıç ​​yapmak istiyorsanız bu yararlıdır.

UFW'yi sıfırlamak için aşağıdaki komutu yazmanız yeterlidir:

sudo ufw reset

Sonuç

Ubuntu 18.04 sunucunuza UFW güvenlik duvarını nasıl kuracağınızı ve yapılandıracağınızı öğrendiniz. Tüm gereksiz bağlantıları sınırlarken, sisteminizin düzgün çalışması için gerekli olan tüm gelen bağlantılara izin verdiğinizden emin olun.

ufw güvenlik duvarı iptables ubuntu güvenlik