GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nastavit a nakonfigurovat UFW Firewall na Ubuntu 20.04

Jedním ze základních kamenů každého operačního systému je správně nakonfigurovaný firewall pro úplné zabezpečení systému. UFW (Uncomplicated Firewall) je standardně nainstalován na operačních systémech Ubuntu; není však povolena. Jednou z velkých výhod UFW je jeho jednoduchost, uživatelsky přívětivý a snadno použitelný příkazový řádek, takže je skvělý pro začátečníky v Linuxu až po nejpokročilejší pokročilé uživatele.

V následujícím tutoriálu se naučíte nainstalovat a nastavit UFW Firewall buď na Ubuntu 20.04 LTS Focal Fossa Desktop nebo Server pomocí příkazového terminálu.

Předpoklady

  • Doporučený operační systém: Ubuntu 20.04
  • Uživatelský účet: Uživatelský účet s sudo nebo root přístup.

Aktualizujte operační systém

Aktualizujte své Ubuntu operační systém, abyste se ujistili, že všechny existující balíčky jsou aktuální:

sudo apt update && sudo apt upgrade -y

Výukový program bude používatpříkaz sudo a za předpokladu, že máte status sudo .

Chcete-li ověřit stav sudo na vašem účtu:

sudo whoami

Ukázkový výstup zobrazující stav sudo:

[joshua@ubuntu ~]$ sudo whoami
root

Chcete-li nastavit stávající nebo nový účet sudo, navštivte náš návod Jak přidat uživatele do Sudoers na Ubuntu .

Chcete-li použít rootový účet , použijte k přihlášení následující příkaz s heslem uživatele root.

su

Jak povolit, nainstalovat nebo odebrat UFW

Prvním krokem při nastavení firewallu UFW bude povolení firewallu.

sudo ufw enable

Příklad výstupu:

Firewall is active and enabled on system startup

Ve výchozím nastavení je veškerý příchozí provoz automaticky blokován a veškerý odchozí provoz je povolen, jakmile je brána firewall aktivní. To okamžitě ochrání váš systém tím, že zabrání komukoli ve vzdáleném připojení k vašemu systému.

Pokud byl UFW odstraněn dříve a chcete znovu nainstalovat firewall pomocí následujícího příkazu.

sudo apt install ufw -y

Dále ověřte stav UFW, abyste se ujistili, že je aktivní a bez chyb.

sudo systemctl status ufw

Příklad výstupu:

Pokud v budoucnu budete potřebovat na dočasnou dobu deaktivovat UFW, použijte následující příkaz.

sudo ufw disable

Chcete-li zcela odebrat UFW z vašeho systému Ubuntu.

sudo apt autoremove ufw --purge

Neodstraňujte UFW, pokud nemáte solidní možnost nebo nevíte, jak používat IPTables, zvláště když běží serverové prostředí připojené k veřejnosti. To bude katastrofální.

Jak zkontrolovat stav UFW

Jakmile je UFW povoleno, podívejte se na stav pravidel brány firewall a na to, co je aktivní, použijte následující.

sudo ufw status verbose

Příklad výstupu:

Ve výše uvedeném příkladu byl použit podrobný příznak a alternativní možností je vypsat pravidla v číselné řadě, což je mnohem lépe zvládnutelné později při mazání pravidel.

sudo ufw status numbered

Příklad výstupu:

Nyní máte [ 1], [ 2] číselné štítky na vašich pravidlech UFW pro identifikaci, jak je má výše uvedený výstup.

Jak nastavit výchozí zásady UFW

Výchozí zásada brány firewall UFW je odmítnout všechna příchozí připojení a povolit pouze odchozí připojení k systému. Obvykle je to nejbezpečnější výchozí způsob, kdy se k vašemu serveru nikdo nedostane, pokud nepovolíte IP adresy/rozsahy, programy, porty nebo kombinace všech. Váš systém má ve výchozím nastavení přístup ven, což byste neměli upravovat, pokud nemáte specifické požadavky na zabezpečení.

Výchozí zásady brány firewall UFW lze nalézt v umístění /etc/default/ufw .

Chcete-li upravit pravidla, zadejte následující příkaz:

Chcete-li odmítnout všechna příchozí spojení:

sudo ufw default deny incoming

Povolení všech odchozích připojení:

sudo ufw default allow outgoing

Toto je již nastaveno jako výchozí pravidla, když je povoleno, ale můžete použít stejný princip k jejich změně tak, aby vyhovovaly vašemu účelu.

Například veškerá příchozí komunikace je ve výchozím nastavení blokována, ale chcete, aby byla všechna odchozí blokována a odchozí povolena pouze schválená připojení, pak použijte následující příkaz.

Zablokování všech odchozích připojení:

sudo ufw default deny outgoing

Toto je extrémní opatření; blokování příchozích připojení je obvykle dostatečné pro průměrný server a desktop, ale specifická prostředí mohou těžit z mimořádného bezpečnostního opatření. Nevýhodou je, že musíte udržovat všechna odchozí připojení, což může být časově náročné a neustále nastavovat nová pravidla.

Jak zobrazit profily aplikací UFW

Chcete-li zobrazit všechny profily aplikací, můžete tak učinit zadáním následujícího.

sudo ufw app list

Příklad výstupu:

Výše uvedené je pouze příklad a každý bude mít různé seznamy, protože nikdo nebude mít nainstalované stejné aplikace.

Praktickou funkcí profilů aplikací je zjistit více o službě uvedené v seznamu aplikací UFW.

Chcete-li to provést, zadejte následující příkaz a vyhledejte další informace o existujícím profilu.

sudo ufw app info CUPS

Příklad výstupu:

Stejně jako výše, výtisk obecného popisu aplikace a portu, který používá. Toto je užitečná funkce, když zkoumáte otevřené porty a nejste si jisti, kterých aplikací se týkají a co aplikace dělá.

Jak povolit IPv6 na UFW

Pokud je váš systém Ubuntu nakonfigurován s IPv6, musíte zajistit, aby byl UFW nakonfigurován s podporou IPv6 a IPv4. Ve výchozím nastavení by to mělo být automaticky povoleno; měli byste jej však zkontrolovat a v případě potřeby upravit. Můžete to udělat v následujícím.

Otevřete výchozí soubor brány firewall UFW.

sudo nano /etc/default/ufw

Pokud není nastaveno, upravte následující řádek na ano.

IPV6=yes

CTRL+O uložte nové změny do souboru a poté stiskněte CTRL+X pro ukončení souboru.

Nyní restartujte službu brány firewall UFW, aby byly změny aktivní.

sudo systemctl restart ufw

Jak povolit připojení UFW SSH

Ve výchozím nastavení UFW neumožňuje připojení SSH. Pokud jste již povolili firewall na dálku, všimli byste si, že jste zablokováni.

Chcete-li tento problém vyřešit, musíte před povolením UFW firewallu nastavit následující konfiguraci SSH, zejména pokud jste připojeni ke vzdálenému serveru.

Nejprve povolte profil aplikace SSH.

sudo ufw allow ssh

Pokud jste nastavili vlastní naslouchací port pro připojení SSH jiný než výchozí port 22, například port 3541, otevřete port na firewallu UFW zadáním následujícího.

sudo ufw allow 3541/tcp

Pokud chcete zablokovat všechna připojení SSH nebo změnit port a zablokovat stará.

Chcete-li zablokovat všechna připojení SSH (Ujistěte se, že je možný místní přístup) , použijte následující příkaz.

sudo ufw deny ssh/tcp

Pokud měníte vlastní port SSH, otevřete nový port a zavřete stávající; příkladem výukového programu je port 3541.

sudo ufw deny 3541/tcp 

Jak povolit porty UFW

Pomocí UFW můžete otevřít specifické porty ve bráně firewall a umožnit tak připojení specifikovaná pro konkrétní aplikaci. Pro aplikaci můžete nastavit vlastní pravidla. Vynikajícím příkladem tohoto pravidla je nastavení webového serveru, který naslouchá na portu 80 (HTTP) a 443 (HTTPS) ve výchozím nastavení.

Povolit port HTTP 80

Povolit podle profilu aplikace:

sudo ufw allow 'Nginx HTTP'

Povolit podle názvu služby:

sudo ufw allow http

Povolit podle čísla portu:

sudo ufw allow 80/tcp

Povolit port HTTPS 443

Povolit podle profilu aplikace:

sudo ufw allow 'Nginx HTTPS'

Povolit podle názvu služby:

sudo ufw allow https

Povolit podle čísla portu:

sudo ufw allow 443/tcp

Poznámka:Všechna pravidla můžete ve výchozím nastavení povolit společně pomocí následujícího příkazu.

sudo ufw allow 'Nginx Full'

UFW povolit rozsahy portů

UFW může umožnit přístup k rozsahům portů. Upozorňujeme, že při otevírání rozsahu portů musíte identifikovat protokol portu.

Povolit rozsah portů s TCP a UDP:

sudo ufw allow 6500:6800/tcp
sudo ufw allow 6500:6800/udp

Alternativně můžete povolit více portů v jednom přístupu, ale povolení rozsahu může být přístupnější, jak je uvedeno výše.

sudo ufw allow 6500, 6501, 6505, 6509/tcp
sudo ufw allow 6500, 6501, 6505, 6509/udp

Jak povolit vzdálená připojení na UFW

UFW povolit konkrétní IP adresu

Chcete-li například povolit zadané adresy IP, jste v interní síti a vyžadujete, aby systémy spolu komunikovaly, použijte následující příkaz.

sudo ufw allow from 192.168.55.131

UFW povolí konkrétní IP adresu na konkrétním portu

Chcete-li povolit připojení IP k vašemu systému na definovaném portu (příklad portu “3900“) , zadejte následující.

sudo ufw allow from 192.168.55.131 to any port 3900

Povolit připojení k podsíti k určenému portu

Pokud požadujete celou řadu připojení z podsítě rozsahu IP k určitému portu, můžete to povolit vytvořením následujícího pravidla.

sudo ufw allow from 192.168.1.0/24 to any port 3900

To umožní všem IP adresám od 192.168.1.1 do 192.168.1.254 připojit se k portu 3900.

Povolit konkrétní síťové rozhraní

Například povolte připojení k určitému síťovému rozhraní, „eth2“ k určenému portu 3900. Toho můžete dosáhnout vytvořením následujícího pravidla.

sudo ufw allow in on eth2 to any port 3900

Jak odepřít vzdálená připojení na UFW

Podle výchozích zásad nastavení UFW jsou při instalaci všechna příchozí připojení nastavena na „zakázat.“ To odmítne veškerý příchozí provoz, pokud nevytvoříte pravidlo povolující připojení.

Ve svých protokolech jste si však všimli konkrétní IP adresy, která na vás neustále útočí. Zablokujte jej pomocí následujícího.

sudo ufw deny from 203.13.56.121

Hacker používá několik IP adres ze stejné podsítě a pokouší se vás napadnout. Vytvořte následující pro blokování.

sudo ufw deny from 203.13.56.121/24

Pokud chcete odepřít přístup ke konkrétním portům, můžete vytvořit specifická pravidla. Zadejte následující příklad.

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

Jak smazat pravidla UFW

Vytvořili jste a odepřeli jste pravidla, ale musíte je smazat, protože je již nepotřebujete. Toho lze dosáhnout dvěma různými způsoby.

Nejprve, chcete-li odstranit UFW pravidlo pomocí čísla pravidla, musíte vypsat čísla pravidel zadáním následujícího.

sudo ufw status numbered

Příklad výstupu:

Příklad odstraní čtvrté pravidlo pro IP adresu 1.1.1.1, které je zvýrazněno výše.

Do terminálu zadejte následující.

sudo ufw delete 1

Za druhé, pravidlo UFW můžete odstranit pomocí samotného pravidla.

sudo ufw delete allow 80/tcp

Když jsou pravidla odstraněna a úspěšná, získáte následující výstup.

Rule deleted
Rule deleted (v6)

Jak získat přístup a zobrazit protokoly UFW

Ve výchozím nastavení je protokolování UFW nastaveno na nízkou hodnotu. To je v pořádku pro většinu stolních systémů. Servery však mohou vyžadovat vyšší úroveň protokolování.

Chcete-li nastavit protokolování UFW na nízkou hodnotu (výchozí):

sudo ufw logging low

Chcete-li nastavit protokolování UFW na střední:

sudo ufw logging medium

Chcete-li nastavit protokolování UFW na vysoké:

sudo ufw logging high

Poslední možností je zakázat protokolování úplně, ujistěte se, že jste s tím spokojeni a nebudete vyžadovat kontrolu protokolů.

sudo ufw logging off

Chcete-li zobrazit protokoly UFW, jsou uloženy ve výchozím umístění /var/log/ufw.log .

Jednoduchým a rychlým způsobem zobrazení živých protokolů je použití příkazu tail.

sudo ufw tail -f /var/log/ufw.log

Alternativně můžete vytisknout nastavené množství posledních řádků pomocí -n <číslicové příznaky> .

sudo ufw tail /var/log/ufw.log -n 30

Tím se vytiskne posledních 30 řádků protokolu. Můžete dále doladit pomocí GREP a dalších příkazů řazení.

Jak otestovat pravidla UFW

Vysoce kritické systémy, dobrá volba při hraní s nastavením firewallu, mohou přidat příznak –suché spuštění . To umožňuje vidět příklad změn, ke kterým by došlo, ale nezpracovat je.

sudo ufw --dry-run enable

Chcete-li zakázat příznak –suché spuštění , použijte následující příkaz.

sudo ufw --dry-run disable

Jak resetovat pravidla UFW

Chcete-li resetovat firewall zpět do původního stavu se všemi příchozími blokovanými a odchozími nastavenými tak, aby byly povoleny, resetujte zadáním následujícího příkazu.

sudo ufw reset

Potvrďte reset, zadejte následující:

sudo ufw status

Výstup by měl být:

Status: inactive 

S resetem UFW firewallu budete nyní muset firewall znovu povolit a spustit celý proces přidávání pravidel. Příkaz reset by měl být používán pokud možno střídmě.

Jak najít všechny otevřené porty (kontrola zabezpečení)

Většina systémů si neuvědomuje, že mohou mít otevřené porty. V době, kdy je každá IP adresa na internetu denně skenována, je klíčové sledovat, co se děje v zákulisí.

Nejlepší možností je nainstalovat Nmap a poté pomocí této slavné aplikace vypsat seznam otevřených portů.

sudo apt install nmap

Dále najděte interní IP adresu systému.

hostname -I

Příklad výstupu:

192.168.50.45

Nyní použijte následující příkaz Nmap s IP adresou serveru.

sudo nmap 192.168.50.45

Příklad výstupu:

Jak je uvedeno výše, porty 9090 a 80 jsou otevřené. Než zablokujete porty, prozkoumejte nejprve, co to je, pokud si nejste jisti.

Od tohoto bodu můžete vytvářet vlastní pravidla UFW, která jste se naučili v tutoriálu, pro uzavření nebo omezení otevřených portů.


Ubuntu
  1. Jak nastavit UFW Firewall na Ubuntu 18.04

  2. Jak nakonfigurovat bránu firewall s UFW na Ubuntu 18.04

  3. Jak nakonfigurovat UFW Firewall na Ubuntu 18.04

  1. Jak nainstalovat a nakonfigurovat Nginx na Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat GitLab na Ubuntu 18.04

  3. Jak nainstalovat a nakonfigurovat lak na Ubuntu 20.04?

  1. Jak nainstalovat a nakonfigurovat Nagios na Ubuntu 18.04

  2. Jak nakonfigurovat bránu firewall Ubuntu pomocí UFW a nastavit pravidla brány firewall

  3. Jak nastavit a nakonfigurovat Docker Swarm Cluster na Ubuntu