GNU/Linux >> Znalost Linux >  >> Panels >> Panels

Jak nakonfigurovat bránu firewall s UFW na Ubuntu 18.04

V tomto článku vám ukážeme, jak nainstalovat a nakonfigurovat UFW na Ubuntu 18.04 VPS. Nejprve si na chvíli představíme a vysvětlíme, co jsou firewally, a poté vám ukážeme, jak používat UFW a jak provést vhodnou konfiguraci UFW.

Firewall je softwarový program, který monitoruje síťový provoz a zabraňuje neoprávněnému přístupu do nebo z privátní sítě. V kernelu Linuxu je implementován subsystém Netfilter, který se používá k manipulaci se síťovým provozem. Téměř všechna moderní řešení firewallů Linux používají tento systém k filtrování síťových paketů. Součástí rámce Netfilter je navíc „iptables“ – nástroj brány firewall přístupný z příkazového řádku. Pro zjednodušení procesu vytváření pravidel firewallu vyvinul Canonical (tvůrci Ubuntu) rozhraní iptables nazvané Uncomplicated Firewall (UFW).

Pokud používáte Ubuntu 18.04 a chcete zabezpečit svou síť, aniž byste se museli učit, jak používat iptables, pak UFW může být tím správným řešením, které hledáte.

Předpoklady

Abyste mohli postupovat podle tohoto návodu, budete potřebovat server s Ubuntu 18.04 a přístupem SSH s uživatelem root (nebo uživatelem s právy sudo). Začněme výukovým programem.

Krok 1:Připojte se k vašemu serveru

Než začneme, budete se muset připojit ke svému serveru přes SSH jako root nebo uživatel s právy sudo. Chcete-li to provést, použijte následující příkaz:

ssh root@IP_Address -p Port_Number

samozřejmě budete muset nahradit IP_Address a Port_Number s vaší skutečnou IP adresou serveru a číslem portu SSH.

Po přihlášení se pomocí následujících příkazů ujistěte, že je váš server aktuální:

sudo apt update
sudo apt upgrade

Krok 2:Nainstalujte UFW

UFW by měl být již standardně nainstalován na Ubuntu 18.04 – ale pokud z nějakého důvodu není nainstalován, můžete jej nainstalovat pomocí tohoto příkazu:

sudo apt install ufw

Po dokončení instalace můžete zkontrolovat stav UFW příkazem:

sudo ufw status verbose

UFW je ve výchozím nastavení zpočátku zakázáno, a pokud jste nikdy předtím neaktivovali, dostanete výstup:

Output
Status: inactive

Pokud již máte na svém serveru aktivovaný UFW, výstup bude vypadat zcela jinak a bude vypadat podobně jako následující:

Output:

Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW IN    Anywhere
80/tcp                     ALLOW IN    Anywhere
443/tcp                    ALLOW IN    Anywhere
22/tcp (v6)                ALLOW IN    Anywhere (v6)
80/tcp (v6)                ALLOW IN    Anywhere (v6)
443/tcp (v6)               ALLOW IN    Anywhere (v6)
....

Krok 3:Výchozí zásady UFW

První věc, kterou potřebujete vědět, jsou výchozí zásady. Ve výchozím nastavení je UFW nakonfigurováno tak, aby odmítalo všechna příchozí připojení a povolovalo všechna odchozí připojení. Jinými slovy, všechna připojení, která se budou pokoušet o přístup k vašemu serveru, budou odmítnuta a všechny vaše aplikace a služby, které se nacházejí lokálně na vašem serveru, se budou moci dostat do vnějšího světa a přistupovat k jiným serverům.

Pokud chcete zkontrolovat nebo změnit výchozí zásady, můžete je najít v /etc/default/ufw konfigurační soubor.

Chcete-li tato pravidla UFW nastavit na výchozí, můžete spustit následující příkazy:

sudo ufw default deny incoming
sudo ufw default allow outgoing

Mějte na paměti, že servery obvykle potřebují reagovat na příchozí požadavek od uživatelů internetu. Ve většině případů tedy nemůžete nastavit firewall tak, aby blokoval všechna příchozí připojení. V dalším kroku se naučíme, jak povolit konkrétní připojení.

Krok 4:Povolte připojení SSH

Než povolíte UFW, musíte na svém serveru povolit přístup SSH přidáním pravidla, které povolí příchozí připojení SSH. V opačném případě budete uzamčeni a nebudete se moci připojit ke svému serveru Ubuntu.

Ke konfiguraci brány firewall UFW tak, aby umožňovala všechna příchozí připojení SSH, můžete použít následující příkaz:

sudo ufw allow ssh

Poté obdržíte následující výstup:

Rules updated
Rules updated (v6)

Upozorňujeme, že tento příkaz je pouze v případě, že váš server naslouchá standardizovanému portu SSH:22. Pokud služba SSH používá vlastní nestandardní port, budete muset tento port otevřít. Pokud služba SSH na vašem serveru používá jedinečný port, například port 900, můžete použít následující příkaz:

sudo ufw allow 900

Upozorňujeme, že budete potřebovat vědět, jaké číslo portu vaše služba aktuálně používá.

Krok 5:Povolte UFW

Nyní je váš firewall nakonfigurován tak, aby umožňoval připojení SSH a jste si jisti, že vaše aktuální připojení SSH nebude ovlivněno, můžete pokračovat v povolení brány firewall UFW.

sudo ufw enable

Poté obdržíte následující výstup:

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

Zobrazí se varování, které vám řekne, že musíte nakonfigurovat povolení pravidel SSH, jinak bude stávající připojení SSH uzavřeno. Protože již máte, zadejte [y] a pokračujte klávesou [Enter].

Krok 6:Povolte připojení na konkrétních portech

Aplikace a služby, které používáte, mohou potřebovat mít otevřené porty pro příchozí a odchozí připojení, v závislosti na účelu aplikace. Nejběžnější porty, které budete muset odblokovat, jsou porty 80 a 443, které používá webový server, a 25, 110, 143, 587 a 993, které používá poštovní server.

Ukážeme vám na několika příkladech, jak povolit příchozí připojení pro některé běžné služby.

Chcete-li povolit všechna připojení HTTP (port 80), spusťte tento příkaz:

sudo ufw allow http

Také, pokud chcete specifikovat port, můžete použít v podstatě stejné pravidlo, ale s jinou syntaxí:

sudo ufw allow 80

Chcete-li povolit všechna připojení HTTPS (port 443), spusťte příkaz:

sudo ufw allow https

Pokud navíc chcete zadat port HTTPS, můžete pravidlo použít s jinou syntaxí:

sudo ufw allow 443

Pokud používáte poštovní server, mohla by být užitečná některá z následujících pravidel.

Chcete-li povolit všechny příchozí SMTP, můžete spustit příkaz:

sudo ufw allow 25

Chcete-li povolit všechna příchozí připojení IMAP, spusťte příkaz:

sudo ufw allow 143

Chcete-li povolit všechny příchozí požadavky IMAPS, můžete použít příkaz:

sudo ufw allow 993

Pokud místo toho používáte POP3, tento příkaz níže povolí všechna příchozí připojení:

sudo ufw allow 110

A pro všechny příchozí požadavky POP3S použijte následující příkaz:

sudo ufw allow 995

A konečně, pokud používáte konkrétní program, který vyžaduje webový přístup, budete muset povolit také port specifický pro tento program. Pokud například na svém serveru spustíte Tomcat, budete potřebovat port 8080. Všechna příchozí připojení k tomuto portu můžete povolit příkazem:

sudo ufw allow <port number>

Můžete to udělat pro všechny konkrétní porty, které můžete potřebovat.

Krok 7:Povolte rozsahy portů

UFW také může povolit přístup k rozsahům portů namísto povolení přístupu k jednomu portu. Pokud chcete povolit rozsahy portů na portu UFW, musíte zadat rozsah portu a protokol, buď TCP nebo UDP.

Pokud například chcete povolit porty od 8069 do 8080 pro TCP i UDP, můžete použít následující příkazy:

sudo ufw allow 8069:8080/tcp
sudo ufw allow 8069:8080/udp

Krok 8:Povolte konkrétní IP adresy

Chcete-li povolit přístup ke všem portům pouze jedné IP adrese (například důvěryhodnému počítači nalezenému ve vaší místní síti), můžete použít příkaz:

sudo ufw allow from 206.207.208.209

Kromě toho můžete také povolit konkrétní IP adresu na konkrétní port! Řekněme, že chcete povolit konkrétní IP adrese používat port MySQL (MySQL používá port 3306), pak můžete jednoduše použít tento příkaz:

sudo ufw allow from 206.207.208.209 to any port 3306

Krok 9:Zamítnout připojení

Jak bylo zmíněno dříve v Kroku 3 , výchozí zásada pro příchozí připojení je nastavena na ‚odmítnout‘. Někdy však může být nutné odmítnout konkrétní připojení na základě zdrojové IP adresy nebo konkrétního portu.

Pravidlo odmítnutí je velmi užitečné, pokud máte útok na váš server z konkrétní IP adresy a vaše porty 80 a 443 jsou otevřené. V tomto případě můžete tuto IP adresu zablokovat pomocí následujícího příkladu. Samozřejmě nezapomeňte změnit IP adresu 24.25.26.27 na skutečnou IP adresu, kterou chcete blokovat:

sudo ufw deny from 24.25.26.27

Tím zablokujete IP adresu v přístupu ke všem vašim otevřeným portům. Pokud však chcete zablokovat přístup IP adresy k určitému portu, můžete použít následující příklad:

sudo ufw deny from 24.25.26.27 to any port 80
sudo ufw deny from 24.25.26.27 to any port 443

Jak si můžete všimnout, vytváření pravidel odmítnutí je podobné pravidlům pro povolení.

Krok 10:Smažte pravidla UFW

Důležitost mazání pravidel UFW je stejně důležitá jako jejich vytváření. Existují dva různé způsoby odstranění pravidla UFW. První metoda je pomocí čísla pravidla a druhá je zadáním skutečného pravidla.

Pokud chcete smazat UFW pravidlo s čísly, budete potřebovat znát číslo pravidla. Chcete-li vypsat čísla pravidel, můžete použít příkaz:

sudo ufw status numbered
Output:

Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 80                         ALLOW IN    Anywhere
[ 2] 443                        ALLOW IN    Anywhere
[ 3] 22                         ALLOW IN    Anywhere
[ 4] Anywhere                   ALLOW IN    206.207.208.209
[ 5] 7022                       ALLOW IN    Anywhere
[ 6] 8069                       ALLOW IN    Anywhere
...

Chcete-li odstranit pravidlo označené jako pravidlo číslo 4, které povoluje připojení z IP adresy 206.207.208.209, můžete použít příkaz:

sudo ufw delete 4

Pokud chcete použít druhý způsob, kterým je odstranění pravidla zadáním skutečného pravidla. Řekněme, že chcete například zavřít port 8069 – v takovém případě byste použili následující příkaz:

sudo ufw delete allow 8069

Krok 11:Deaktivujte nebo resetujte UFW

Pokud z nějakého důvodu potřebujete zastavit všechna pravidla UFW na vašem serveru, můžete je deaktivovat pomocí příkazu:

sudo ufw disable

Tím zastavíte všechna pravidla, která byla aktuálně aktivní na vašem serveru. Pokud však potřebujete znovu aktivovat pravidla brány firewall, můžete je jednoduše znovu povolit.

sudo ufw enable

Pokud z nějakého důvodu chcete smazat všechna pravidla a začít s novým UFW, můžete použít následující příkaz:

sudo ufw reset

Upozorňujeme, že výchozí zásady se nezmění na původní nastavení, pokud již byly upraveny.

V tomto článku jsme vám ukázali, jak nainstalovat UFW a poté jej použít ke konfiguraci brány firewall na Ubuntu 18.04. Nyní můžete využít znalosti této příručky a začít vytvářet vlastní pravidla firewallu UFW a chránit svůj server.

Samozřejmě, pokud jste jedním z našich zákazníků Managed Ubuntu Hosting, nemusíte na svém serveru konfigurovat firewall s UFW – jednoduše se zeptejte našich administrátorů, posaďte se a relaxujte. Naši administrátoři za vás okamžitě nakonfigurují pravidla brány firewall na vašem serveru.

PS. Pokud se vám líbil tento příspěvek o tom, jak nakonfigurovat firewall s UFW na Ubuntu 18.04, sdílejte jej se svými přáteli na sociálních sítích pomocí níže uvedených tlačítek pro sdílení nebo jednoduše zanechte komentář v sekci komentářů. Děkuji.


Panels
  1. Jak nastavit UFW Firewall na Ubuntu 18.04

  2. Jak nastavit bránu firewall s UFW v Ubuntu \ Debian

  3. Jak nastavit bránu firewall s UFW na Ubuntu 16.04

  1. Jak povolit/zakázat UFW Firewall na Ubuntu 18.04

  2. Jak nakonfigurovat bránu firewall s UFW na Debianu 9

  3. Jak nakonfigurovat UFW Firewall na Ubuntu 18.04

  1. Jak nastavit bránu firewall s UFW na Ubuntu 18.04

  2. Jak otevřít/povolit příchozí port brány firewall na Ubuntu 22.04 Jammy Jellyfish

  3. Jak nastavit bránu firewall s UFW na Ubuntu 20.04