GNU/Linux >> Znalost Linux >  >> Ubuntu

Příklad použití UFW firewallu v Debian/Ubuntu

Úvod:
Právě jsem začal používat firewall UFW, což je firewall založený na příkazech terminálu. Nástroj se zpočátku zdál trochu obtížně pochopitelný, ale s trochou pokusů a chyb jsem nakonec něco udělal. Takže tady je to, co jsem udělal.

Nainstaluji UFW firewall:
apt-get install ufw

Předpoklad:
Chci splnit následující podmínky:
Seznam portů, které mají být povoleny z interní LAN (192.168.100.0/24):VŠECHNY
Seznam portů, které mají být povoleny z localhost (127.0.0.0/16) :VŠECHNY
Seznam portů, které mají být povoleny k internetu:VŠECHNY
Seznam portů, které mají povolit přístup z Internetu:
ssh:22
FTP:21, 20, 20000-20099 (používá čistý-ftp)
HTTP:80
HTTPS:443
Gerrit:2222

Výsledek:kromě výše uvedených portů by měly být všechny ostatní porty blokovány z internetu.

Příkazy UFW ke konfiguraci nad bránou firewall:

ufw povolit z 192.168.100.0/24
ufw povolit z 127.0.0.0/16
ufw povolit z libovolného do libovolného portu 22
ufw povolit z libovolného do libovolného portu 21
ufw povolit 20000:20099/tcp
ufw povolit z libovolného na jakýkoli port 80
ufw povolit z libovolného do jakéhokoli portu 443
ufw povolit z libovolného do jakéhokoli portu 2222

Poznámka: Výše neexistují žádná pravidla pro propouštění všech paketů z aplikací do Internetu. Důvodem je, že výchozí chování tohoto firewallu je, že umožňuje všem aplikacím odesílat cokoli do Internetu.
To lze ověřit po aktivaci UFW firewallu vydáním následujícího příkazu:
iptables - L -n -v | grep 'Chain OUTPUT'
Výsledek:
Řetězový OUTPUT (zásady ACCEPT 0 paketů, 0 bajtů)
Nastavení výchozích zásad
To je zcela samovysvětlující.
ufw default zakázat příchozí
ufw default povolit odchozí

Firewall ještě není aktivní!
VAROVÁNÍ: V případě, že konfigurujete tento firewall přes SSH připojení, ujistěte se, že následující příkaz byl zahrnut do výše uvedených. Pokud tomu tak není, jakmile aktivujete firewall, budete uzamčeni ze serveru a nebudete mít žádný přístup SSH. Špatné zprávy 🙁
ufw povolit z libovolného na jakýkoli port 22
Chcete-li zkontrolovat přidané pravidla před aktivujeme firewall:
ufw show added
Nyní aktivujeme firewall příkazem:
ufw enable
Na konfiguraci UFW se podíváme zadáním příkazu:
ufw status numbered
Měli byste získat následující výsledek:
Stav:aktivní
.
Do akce od
-- ------ ----
[ 1] Kdekoli POVOLEJTE 192.168.100.0/24
[ 2] Kdekoli POVOLEJTE 127.0.0.0/16
[ 3] 22 POVOLEJTE kdekoli
[ 4] 21 POVOLETE VSTUP Kdekoli
[ 5] 20000:20099/tcp POVOLETE VSTUP kdekoli
[ 6] 80 POVOLETE VSTUP kdekoli
[ 7] 443 POVOLETE VSTUP kdekoli
[ 8] 2222 POVOLETE VSTUP kdekoli
[ 9] 22 ALLOW IN kdekoli (v6)
[10] 21 ALLOW IN kdekoli (v6)
[11] 20000:20099/tcp ALLOW IN kdekoli (v6)
[ 12] 80 ALLOW IN Anywhere (v6)
[13] 443 ALLOW IN Anywhere (v6)
[14] 2222 ALLOW IN Anywhere (v6)

Pokud potřebujete restartovat znovu, spusťte následující:
ufw disable
ufw reset

Pokud potřebujete smazat některá pravidla, například pravidla o portu 2222:(pravidlo 8 a 14), smažeme pravidla tak, že použijeme jejich číslo pravidla začínající posledním, které má být odstraněno v seznamu. Logika je taková, že pokud začnete s prvním, čísla pravidel se po prvním smazání posunou a poslední smazané nebude pravidlo 14, ale pravidlo 13 atd.
Příklad:
ufw delete 14
ufw delete 8

Pokud potřebujete vložit pravidlo nad existující, použijete číslo pravidla, které by mělo být po novém. Například pokud chceme přidat pravidlo zakázat port 20005 z Internetu.
Poznámka. Tady to nedává smysl (není praktické), ale jen jako příklad. Nové pravidlo „deny“ bych vložil před pravidlo 11. Zde je příkaz:
ufw insert 11 deny 20005
Podívejme se na výsledek:
ufw status numbered
Výsledek:
Stav:aktivní
.
Do akce od
-- ------ ----
[ 1 ] Kdekoli POVOLEJTE 192.168.100.0/24
[ 2] Kdekoli POVOLEJTE 127.0.0.0/16
[ 3] 22 POVOLEJTE kdekoli
[ 4] 21 POVOLEJTE kdekoli
[ 5] 20005 POVOLEJTE SI kdekoli
[ 6] 20000:20099/tcp POVOLEJTE SI kdekoli
[ 7] 80 POVOLEJTE kdekoli
[ 8] 443 POVOLEJTE kdekoli
[ 9 ] 2222 ALLOW IN Anywhere
[10] 22 ALLOW IN Anywhere (v6)
[11] 21 ALLOW IN Anywhere (v6)
[12] 20005 DENY IN Anywhere (v6)
[13] 20000:20099/tcp ALLOW IN Anywhere (v6)
[14] 80 ALLOW IN Anywhere ( v6)
[15] 443 ALLOW IN kdekoli (v6)
[16] 2222 ALLOW IN kdekoli (v6)

Jak můžete vidět, UFW byl dostatečně chytrý, aby vložil pravidlo pro IPv4 a IPv6 na správné pozice.

Poznámka k restartování:
Kdykoli je UFW firewall „povolen“ a dojde k restartu, všechna pravidla, která jsou již uložena v:/lib/ufw/user.rules
/lib/ufw/user6.rules

NEBO v:
/etc/ufw/user.rules
/etc/ufw/user6.rules

bude znovu aktivován při restartu.
VAROVÁNÍ:Nepokoušejte se měnit tyto výše uvedené soubory, protože nějaký hlídací pes zajišťuje, aby nebyly změněny, a automaticky se vrátí k předupravené verzi.;-(. K provedení jakýchkoli změn ve firewallu použijte příkaz UFW.

Používání UFW na Xen DOM0:
Měl jsem nějaké problémy s používáním UFW na XEN DOM0, protože UFW jako výchozí chování blokuje předávání paketů do DOMU.
Chcete-li to napravit, upravte soubor /etc/default/ufw a změňte následující nastavení pro ACCEPT:
DEFAULT_FORWARD_POLICY="ACCEPT"
To by chránilo pouze DOM0 a přesměrovalo veškerý další provoz na DOMU, přičemž by každý DOMU chránil své rukávy.
Poté restartujte UFW následovně:
ufw vypnout
ufw povolit

Pro více informací na toto téma doporučuji následující odkaz:
https://www.digitalocean.com/community/tutorials/how-to-setup-a-firewall-with-ufw-on-an-ubuntu- a-debian-cloud-server

Protokolování

Logování UFW se standardně provádí do /var/log/syslog . Chcete-li zakázat toto protokolování, postupujte takto:
– Upravte soubor:/etc/rsyslog.d/20-ufw.conf (viz obsah níže), odstraňte znak „#“ začínající na posledním řádku a spusťte následující příkazy k aktualizaci změn brány firewall:
ufw disable
ufw enable

Obsah /etc/rsyslog.d/20-ufw.conf :
# Zaznamenat zprávy protokolu UFW vygenerované jádrem do souboru
:msg,contains,"[UFW " /var/log/ufw.log
#
# Odebrat komentář následujícím způsobem zastavíte protokolování čehokoli, co odpovídá poslednímu pravidlu.
# Tím se zastaví protokolování zpráv protokolu UFW generovaných jádrem do souboru
# normálně obsahujícího zprávy kern.* (např. /var/log/kern. log)
#&~


Ubuntu
  1. Konfigurace brány firewall pomocí Iptables na Ubuntu 14.04

  2. Jak otevřít porty v Ubuntu / Debian

  3. Nastavit UFW Firewall na Ubuntu 18.04 – nejlepší metoda?

  1. Jak nastavit UFW Firewall na Ubuntu 18.04

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

  3. Jak nakonfigurovat bránu firewall s UFW na Ubuntu 18.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