Vyhledávání na webu

Jak nainstalovat a nakonfigurovat UFW - Nekomplikovaný FireWall v Debian/Ubuntu


Vzhledem k tomu, že počítače jsou vzájemně propojeny, služby rychle rostou. E-mail, Sociální média, Internetový obchod, Chat až po Webové konference jsou služby, které používané uživatelem. Ale na druhou stranu tato konektivita má rád oboustranný nůž. Do těchto počítačů je také možné odesílat špatné zprávy, jako jsou viry, malware nebo trojské koně.

Internet jako největší počítačová síť není vždy naplněn dobrými lidmi. Abychom se ujistili, že naše počítače/servery jsou bezpečné, musíme je chránit.

Jednou z nezbytných součástí na vašem počítači/serverech je Firewall. Z Wikipedie je definice:

V oblasti výpočetní techniky je firewall softwarový nebo hardwarový systém zabezpečení sítě, který řídí příchozí a odchozí síťový provoz analýzou datových paketů a určením, zda by měly být povoleny nebo ne, na základě použité sady pravidel.

Iptables je jednou z bran firewall, kterou servery široce používají. Je to program používaný ke správě příchozího a odchozího provozu na serveru na základě sady pravidel. Obecně platí, že na server je povolen přístup pouze důvěryhodnému připojení. Ale IPTables běží v režimu konzoly a je to komplikované. Ti, kteří znají pravidla a příkazy iptables, si mohou přečíst následující článek, který popisuje, jak používat firewall iptables.

  1. Průvodce základními IPTables (Linux Firewall).

Instalace UFW Firewallu v Debian/Ubuntu

Ke snížení složitosti nastavení IPTtables existuje mnoho fronted. Pokud používáte Ubuntu Linux, najdete ufw jako výchozí nástroj brány firewall. Začněme prozkoumávat firewall ufw.

Co je ufw

ufw (Uncomplicated Firewall) je rozhraní pro nejrozšířenější iptables firewall a je velmi pohodlné pro hostitelské firewally. ufw poskytuje rámec pro správu netfilter a také poskytuje rozhraní příkazového řádku pro ovládání brány firewall. Poskytuje uživatelsky přívětivé a snadno použitelné rozhraní pro nováčky Linuxu, kteří nejsou příliš obeznámeni s koncepty brány firewall.

Zatímco na druhé straně stejné komplikované příkazy pomáhají správcům nastavit komplikovaná pravidla pomocí rozhraní příkazového řádku. ufw je upstream pro jiné distribuce, jako jsou Debian, Ubuntu a Linux Mint.

Základní použití ufw

Nejprve zkontrolujte, zda je ufw nainstalován pomocí následujícího příkazu.

sudo dpkg --get-selections | grep ufw

ufw 		install

Pokud není nainstalován, můžete jej nainstalovat pomocí příkazu apt, jak je znázorněno níže.

sudo apt-get install ufw

Před použitím byste měli zkontrolovat, zda ufw běží nebo ne. Pro kontrolu použijte následující příkaz.

sudo ufw status

Pokud jste našli Stav: neaktivní, znamená to, že není aktivní nebo je zakázáno.

NOVINKA! Nepostradatelná e-kniha pro každého správce Linuxu!

Stáhněte si zdarma e-knihu s 696 stránkami

Povolení/zakázání ufw

Chcete-li to povolit, stačí zadat následující příkaz na terminálu.

sudo ufw enable

Firewall is active and enabled on system startup

Chcete-li jej zakázat, stačí zadat.

sudo ufw disable

Uveďte aktuální pravidla ufw

Po aktivaci firewallu do něj můžete přidat svá pravidla. Pokud chcete vidět, jaká jsou výchozí pravidla, můžete napsat.

sudo ufw status verbose
Ukázkový výstup
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
$

Jak přidat pravidla ufw

Jak vidíte, ve výchozím nastavení je každé příchozí spojení odmítnuto. Pokud chcete vzdáleně váš počítač, musíte povolit správný port. Chcete například povolit připojení ssh. Zde je příkaz k povolení.

Povolit přístup
sudo ufw allow ssh

[sudo] password for pungki :
Rule added
Rule added (v6)
$

Pokud znovu zkontrolujete stav, uvidíte výstup jako je tento.

sudo ufw status

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

Pokud máte mnoho pravidel a chcete do všech pravidel vkládat čísla za běhu, použijte parametr číslovaný.

sudo ufw status numbered

To 		Action 			From
------ 		----------- 		------
[1] 22 		ALLOW 			Anywhere
[2] 22 		ALLOW 			Anywhere (v6)

První pravidlo říká, že příchozí připojení k portu 22 z Anywhere je povoleno jak pakety tcp, tak udp. Co když chcete povolit pouze pakety tcp? Poté můžete za číslo port přidat parametr tcp. Zde je příklad s ukázkovým výstupem.

sudo ufw allow ssh/tcp

To 		Action 			From
------ 		----------- 		------
22/tcp 		ALLOW 			Anywhere
22/tcp 		ALLOW 			Anywhere (v6)
Zamítnout přístup

Stejné triky se použijí na pravidlo Odmítnout. Řekněme, že chcete zamítnout ftp pravidlo. Stačí tedy pouze psát.

sudo ufw deny ftp

To 		Action 			From
------ 		----------- 		------
21/tcp 		DENY 			Anywhere
21/tcp 		DENY 			Anywhere (v6)

Přidání konkrétního portu

Někdy máme vlastní port, který nedodržuje žádné standardy. Řekněme, že změníme port ssh na našem počítači z 22 na 2290. Poté, abychom povolili port 2290, jej můžeme přidat takto.

sudo ufw allow

To 		Action 			From
-- 		----------- 		------
2290 		ALLOW 			Anywhere
2290 		ALLOW 			Anywhere (v6)

Je také možné do pravidla přidat rozsah portu. Pokud chceme otevřít port z 22902300 pomocí protokolu tcp, bude příkaz vypadat takto.

sudo ufw allow 2290:2300/tcp

To 			Action 			From
------ 			----------- 		------
2290:2300/tcp 		ALLOW 			Anywhere
2290:2300/tcp 		ALLOW			Anywhere (v6)

zatímco pokud chcete použít udp, stačí použít následující příkaz.

sudo ufw allow 2290:2300/udp

To 			Action 			From
------ 			----------- 		------
2290:2300/udp 		ALLOW 			Anywhere
2290:2300/udp 		ALLOW			Anywhere (v6)

Pamatujte, že „tcp“ nebo „udp“ musíte zadat výslovně, jinak se zobrazí chybová zpráva podobná níže.

ERROR: Must specify ‘tcp’ or ‘udp’ with multiple ports

Přidání konkrétní IP

Dříve jsme přidali pravidla založená na službě nebo portu. Ufw také umožňuje přidat pravidla na základě IP adresy. Zde je ukázkový příkaz.

sudo ufw allow from 192.168.0.104

K rozšíření rozsahu můžete také použít masku podsítě.

sudo ufw allow form 192.168.0.0/24

To 		Action 			From
-- 		----------- 		------
Anywhere	ALLOW 			192.168.0.104
Anywhere	ALLOW 			192.168.0.0/24

Jak vidíte, parametr z omezí pouze zdroj připojení. Zatímco cíl – který je reprezentován sloupcem Do – je Kamkoli. Cíl můžete také spravovat pomocí parametru „Do“. Podívejme se na ukázku povolení přístupu kportu 22 (ssh).

sudo ufw allow to any port 22

Výše uvedený příkaz umožní přístup odkudkoli a z jakéhokoli protokolu k portu 22.

Kombinování parametrů

Pro specifičtější pravidla můžete také zkombinovat IP adresu, protokol a port. Řekněme, že chceme vytvořit pravidlo, které omezí připojení pouze z IP 192.168.0.104, pouze protokol tcp a port 22. Poté bude příkaz vypadat jako níže.

sudo ufw allow from 192.168.0.104 proto tcp to any port 22

Syntaxe pro vytvoření pravidla odepřít je podobná jako u pravidla povolení. Stačí změnit parametr z povolit na zakázat.

Mazání pravidel

Někdy může být nutné stávající pravidlo odstranit. S ufw je opět snadné smazat pravidla. Z výše uvedeného příkladu máte níže pravidlo a chcete ho smazat.

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

Existují dva způsoby odstranění pravidel.

Metoda 1

Níže uvedený příkaz smaže pravidla, která odpovídají službě ftp. Takže 21/tcp, což znamená ftp port, bude smazán.

sudo ufw delete allow ftp
Metoda 2

Ale když jste se pokusili odstranit první pravidlo ve výše uvedeném příkladu pomocí příkazu níže.

sudo ufw delete allow ssh

Or 

sudo ufw delete allow 22/tcp

Můžete najít chybovou zprávu, např.

Could not delete non-existent rule
Could not delete non-existent rule (v6)

Pak můžete udělat tento trik. Jak jsme uvedli výše, můžete zobrazit číslo pravidla, abyste určili, které pravidlo chceme odstranit. Dovolte, abychom vám to ukázali.

sudo ufw status numbered

To 		Action 			From
-- 		----------- 		------
[1] 22/tcp		ALLOW 			192.168.0.104
[2] 21/tcp		ALLOW 			Anywhere
[3] 21/tcp 		ALLOW 			Anywhere (v6)

Poté můžete odstranit první pravidlo pomocí. Stisknutím „y “ pravidlo trvale smažete.

sudo ufw delete 1

Deleting :
Allow from 192.168.0.104 to any port 22 proto tcp
Proceed with operation (y|n)? y

Z těchto metod uvidíte rozdíl. Metoda 2 si před smazáním pravidla vyžádá potvrzení uživatele, zatímco metoda 1 nikoli.

Jak obnovit pravidla

V některých situacích můžete chtít smazat/resetovat všechna pravidla. Můžete to udělat zadáním.

sudo ufw reset

Resetting all rules to installed defaults. Proceed with operation (y|n)? y

Pokud stisknete „y “, pak ufw zazálohuje všechna existující pravidla, než provede reset vašeho ufw. Resetováním pravidel také deaktivujete bránu firewall. Pokud ji chcete používat, musíte ji znovu povolit.

Pokročilá funkčnost

Jak jsem uvedl výše, ufw firewall může dělat vše, co umí iptables. Toho je dosaženo pomocí různých sad souborů pravidel, které nejsou ničím jiným než příslušnými textovými soubory iptables-restore. Jemné doladění ufw a/nebo umístění dalších příkazů iptables, které nejsou povoleny prostřednictvím příkazu ufw, je záležitostí úpravy několika textových souborů.

  1. /etc/default/ufw: Hlavní konfigurace pro výchozí zásady, podporu IPv6 a moduly jádra.
  2. /etc/ufw/before[6].rules: pravidla v těchto souborech se počítají před jakýmikoli pravidly přidanými pomocí příkazu ufw.
  3. /etc/ufw/after[6].rules: pravidla v těchto souborech se vypočítávají po všech pravidlech přidaných pomocí příkazu ufw.
  4. /etc/ufw/sysctl.conf: laditelné sítě jádra.
  5. /etc/ufw/ufw.conf: nastavuje, zda je nebo není ufw povoleno při spouštění, a nastavuje LOGLEVEL.

Závěr

UFW jako front-end pro iptables jistě uživatelům usnadňuje rozhraní. Uživatel si nemusí pamatovat složitou syntaxi iptables. UFW také používá jako parametr „plain english“.

Povolit, zakázat, resetovat jsou jedním z nich. Věřím, že existuje mnohem více front-endů iptables. Ale rozhodně je ufw jednou z nejlepších alternativ pro uživatele, kteří chtějí nastavit svůj firewall rychle, snadno a samozřejmě bezpečně. Navštivte prosím příručkovou stránku ufw zadáním man ufw pro více podrobností.