GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nastavit UFW Firewall na Ubuntu 18.04

V tomto článku vám ukážu, jak nastavit UFW firewall na Ubuntu 18.04. V Ubuntu je výchozí firewall UFW, zkratka pro Uncomplicated FireWall . Existuje již od vydání Ubuntu 18.04 a byl vytvořen pro zjednodušení konfigurace iptables, která byla poměrně složitá.

Při používání jakékoli operace je firewall jednou z nejdůležitějších funkcí, kterou je třeba vzít v úvahu, pokud jde o bezpečnost vašeho systému. Firewall je štít nebo bariéra, která existuje mezi vaším počítačem a internetem a blokuje neoprávněný provoz, jako je vzdálený přístup k vašemu systému, a pomáhá chránit před škodlivým kódem, který neustále prochází internetem. Firewall může být hardwarový nebo softwarový. Hardwarový firewall je samostatný firewallový systém, který je umístěn v síti, aby přidal ochrannou vrstvu tím, že řídí tok provozu do a ze sítě a také blokuje nežádoucí stránky v přístupu uživatelů. Softwarová brána firewall je zabudována do operačních systémů jako Linux a Windows a pomáhá chránit váš systém před vnějšími útoky.

Čtěte také :

  • Jak povolit, zakázat, povolit a odstranit pravidla na Ubuntu UFW Firewall

Instalace UFW

Ve výchozím nastavení je Ubuntu 18.04 dodáván s nainstalovaným ufw. U starších systémů však budete muset spustit níže uvedený příkaz

apt-get install ufw

Chcete-li zkontrolovat, zda ufw běží, spusťte

systemctl status ufw

Pokud běží, měli byste získat výstup níže

● ufw.service - Uncomplicated firewall
   Loaded: loaded (/lib/systemd/system/ufw.service; enabled; vendor preset: enab
   Active: active (exited) since Tue 2018-04-10 22:03:30 UTC; 4min 1s ago
  Process: 376 ExecStart=/lib/ufw/ufw-init start quiet (code=exited, status=0/SU
 Main PID: 376 (code=exited, status=0/SUCCESS)
    Tasks: 0
   Memory: 0B
      CPU: 0
   CGroup: /system.slice/ufw.service

Apr 10 22:03:30 ip-172-31-41-251 systemd[1]: Started Uncomplicated firewall.
Warning: Journal has been rotated since unit was started. Log output is incomple

Chcete-li zkontrolovat, zda je aktivní nebo neaktivní, spusťte

ufw status

Pokud je neaktivní, dostanete výstup níže

Status: inactive

Chcete-li zapnout UFW s výchozí sadou pravidel, spusťte

ufw enable

Chcete-li zakázat spuštění brány firewall

ufw disable

Nastavení výchozích pravidel ufw

Chcete-li nastavit výchozí pravidla, která povolují všechny odchozí protokoly, přihlaste se jako root a spusťte

ufw default allow outgoing

Výstup

Default outgoing policy changed to 'allow'
(be sure to update your rules accordingly)

Chcete-li odmítnout všechna příchozí připojení, spusťte

ufw default deny incoming

Výstup

Default outgoing policy changed to 'deny'
(be sure to update your rules accordingly)

Výše uvedené příkazy povolí všechna odchozí připojení a odmítnou nebo zablokují všechna příchozí připojení.
V tomto okamžiku možná budete chtít povolit firewall, ale než to uděláte, nejprve povolte ssh. To zabraňuje odpojení k serveru, protože jsme dříve zadali odmítnutí všech příchozích připojení.

Chcete-li povolit ssh, spusťte

ufw allow 22/tcp

Odchozí

Skipping adding existing rule
Skipping adding existing rule (v6)

Ssh přístup může být povolen také názvem služby,

ufw allow ssh

Pokud chcete pravidlo odstranit, spusťte

ufw delete allow 22/ssh

Chcete-li zakázat službu podle názvu, spusťte

ufw deny service-name

Například

ufw deny ssh

Chcete-li zobrazit všechny služby, které lze v systému povolit nebo zakázat, podívejte se na /etc/services soubor.

cat /etc/services | less

Ukázkový výstup

ftp-data        20/tcp
ftp             21/tcp
fsp             21/udp          fspd
ssh             22/tcp                          # SSH Remote Login Protocol
ssh             22/udp
telnet          23/tcp
smtp            25/tcp          mail
time            37/tcp          timserver
time            37/udp          timserver
rlp             39/udp          resource        # resource location
nameserver      42/tcp          name            # IEN 116
whois           43/tcp          nicname
tacacs          49/tcp                          # Login Host Protocol (TACACS)
tacacs          49/udp
re-mail-ck      50/tcp                          # Remote Mail Checking Protocol
re-mail-ck      50/udp
domain          53/tcp                          # Domain Name Server
domain          53/udp

Spouštění brány firewall ufw

Pro aktivaci firewallu se přihlaste jako root a spusťte následující příkaz:

 ufw enable

Může se zobrazit následující upozornění

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y

Pokud zvolíte ano, dostanete výstup níže

Firewall is active and enabled on system startup

Firewall je nyní aktivní a spustí se při každém spuštění. Můžeme se znovu podívat na pravidla brány firewall:

ufw status

Výstup nyní zobrazí stav brány firewall plus povolené služby/porty

Výstup

ufw status active
Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
22                         ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
22 (v6)                    ALLOW       Anywhere (v6)

Povolení připojení v ufw

V ufw můžete snadno povolit příchozí připojení na portu/rozsahu, názvu aplikace, ip adrese/podsíti.
Podívejte se na příklady níže.

a) Povolení aplikací podle názvu nebo čísla portu/rozsahu

ufw allow service-name

NEBO

ufw allow port/tcp

Například

 ufw allow ssh or  ufw allow 22/tcp
 ufw allow ftp or ufw allow 21/tcp

sudo ufw povolit 1500:2000/tcp

b) Povolí IP adresu / podsítě

Níže uvedené příkazy umožňují připojení z konkrétní IP nebo podsítě a také můžeme použít konkrétní čísla portů.
Chcete-li povolit připojení z konkrétní adresy IP

ufw allow from 10.200.20.45

Chcete-li zadat adresu IP, která se může připojit ke konkrétnímu portu, spusťte

ufw allow from 10.200.20.45 to any port 22

Výše uvedené umožňuje IP adrese 10.200.20.45 pouze připojení přes ssh

Chcete-li povolit připojení určité podsítě IP k systému, použijte notaci CIDR pro určení masky sítě

ufw allow from 192.168.1.0/24

Výše uvedené umožňuje připojení IP adres od 192.168.1 do 192.168.1.254 k systému
Můžete také určit cílový port podsítě

ufw allow from 192.168.1.0/24 to any port 22

To znamená, že IP adresy od 192.168.1 do 192.168.1.254 se mohou připojit k systému přes port 22, což je ssh.

c) Povolit podle názvu rozhraní

Pokud potřebujeme povolit připojení přes název rozhraní, je to možné

ufw allow in on eth0 to any port 80

Jak odmítnout připojení v ufw

Ve výchozím nastavení je ufw nakonfigurováno tak, aby odmítalo všechna příchozí připojení.

a) IP adresa / podsíť

Pokud chceme zablokovat přístup k nějaké konkrétní IP adrese, můžeme to udělat následujícím příkazem:

ufw deny from 192.168.1.15

To zablokuje všechna příchozí připojení od hostitele s IP adresou 192.168.1.15

Dále zablokujeme celou podsíť:

ufw deny from 150.165.125.0/24

Tím zablokujete všechna připojení přicházející z této podsítě.

b) Zakázat porty a aplikace

Chcete-li odmítnout port nebo službu

ufw deny 80/tcp

NEBO

ufw deny http

sudo ufw deny 1500:2000/tcp *Toto zakáže rozsahy portů*

Odstranění a sledování pravidel

Když přidáte mnoho pravidel, můžete je lépe sledovat zobrazením jejich čísel. Čísla můžete získat následujícím příkazem:

ufw status numbered

Výstup

ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 22                         ALLOW IN    Anywhere
[ 3] 80/tcp                     ALLOW IN    Anywhere
[ 4] 53/tcp                     ALLOW IN    Anywhere
[ 5] 22/tcp (v6)                ALLOW IN    Anywhere (v6)
[ 6] 22 (v6)                    ALLOW IN    Anywhere (v6)
[ 7] 80/tcp (v6)                ALLOW IN    Anywhere (v6)
[ 8] 53/tcp (v6)                ALLOW IN    Anywhere (v6)

Řekněme, že chceme smazat pravidla číslo 2. Uděláme to následujícím příkazem:

 ufw delete 2

Poznámka:

Po smazání druhého pravidla ve firewallu bude nyní pravidlo 3 novým pravidlem 2. Pokud tedy chcete smazat aktuální pravidlo 3, smažete pomocí čísla 2.

 ufw delete allow http

Resetování pravidel

Pokud nejste spokojeni se současnými pravidly a chcete začít znovu, můžete tak učinit spuštěním

ufw reset

Protokolování a opětovné načítání

Chcete-li povolit protokolování, použijte následující příkaz:

 ufw logging on

Pokud chcete z nějakého důvodu zakázat protokolování (nedoporučuje se), můžete použít tento příkaz:

sudo ufw odhlášení

Protokoly jsou standardně v /var/log/ufw.log Chcete-li je zobrazit v reálném čase, použijte tail -f takto:

tail -f /var/log/ufw.log /pre>

You will see all actions of firewall in that file. If you need to reload firewall for some reason, because you changed some config files manually, use following command.
 ufw reload

Pokud chcete zobrazit pravidla, která byla přidána nedávno

 ufw show added

Konfigurační soubory UFW

Pro většinu scénářů můžete použít terminálové příkazy, ale v některých případech budete chtít konfigurační soubory upravit přímo. ufw má více konfiguračních souborů, jmenovitě:

/etc/ufw/before.rules
/etc/ufw/before6.rules

Tyto dva soubory obsahují pravidla, která jsou vyhodnocena před všemi pravidly, která jste přidali pomocí příkazů ufw. Takže pokud chcete, aby se nějaké pravidlo použilo jako první, chcete to tam. První soubor je pro ipv4 a druhý je pro v6

/etc/ufw/after.rules
/etc/ufw/after6.rules

Ty se vyhodnocují podle pravidel příkazu ufw. Je dobré je použít, pokud chcete přepsat nějaké pravidlo a nechat je platit bez ohledu na to, co. Opět dva soubory pro dvě verze protokolu IP, které se aktuálně používají.

/etc/default/ufw

Zde máme moduly jádra, které ufw používá, a také další obecná nastavení. Kterýkoli z těchto konfiguračních souborů můžete upravovat pouze jako root a můžete použít libovolný textový editor.

Vyhněte se přidávání duplicitních pravidel
Dále umožňuje pozorovat mechanismus proti duplicitním pravidlům. Nejprve otevřeme port 101

 sudo ufw allow 100

Všimněte si, že příkaz bez protokolu jako výše otevře port UDP i TCP. Spusťte tedy znovu stejný příkaz, abychom viděli, co se stane

 ufw allow 100

Výstup

Skipping adding existing rule
Skipping adding existing rule (v6)

Neumožňuje nám přidat duplicitní pravidlo. To je dobré, ale stále existuje šance, že můžeme přidat duplicitní pravidlo pomocí této série příkazů:

 ufw allow 101/udp
 ufw allow 101/tcp

Po povolení TCP i UDP na portu 101 můžeme stále přidat otevřený port 101 pro všechny protokoly a toto je duplicitní pravidlo, protože port 101 je otevřen dvakrát, jednou pro každý protokol a jednou pro všechny.

ufw allow 101

To ponechává prostor pro chyby a obecně to není dobrá praxe. Pokud se chceme vrátit k výchozímu nastavení pro port 101, musíme všechny tři příkazy vrátit zpět pomocí příkazu ufw delete.

Pro uzavření některého portu spustíte stejné příkazy, jen místo toho povolíte a napíšete deny.

V tomto článku jsme pokryli použití UFW, což je nekomplikovaný firewall používaný k povolení nebo omezení provozu. Je to velmi výkonný firewall pro regulaci provozu do vašeho systému. Neváhejte a vyzkoušejte příkazy ve vašem systému.


Ubuntu
  1. Jak nastavit HAProxy v Ubuntu 16.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 Ubuntu 18.04

  3. Jak nakonfigurovat UFW Firewall na Ubuntu 18.04

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

  2. Jak zakázat bránu firewall na Ubuntu 18.04

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