UFW + IPtables konfigurace Debian firewall po instalaci ISPconfig

UFW + IPtables konfigurace Debian firewallu po instalaci ISPconfig článek opisuje použití UFW (Uncomplicated Firewall) který umožňuje používat rozhraní příkazového řádku sestávající z malého počtu jednoduchých příkazů pomocí kterých konfiguruje Linux IPtables fw.

Aktuální verze 0.36-7 je z 22. října 2020. Pro UFW Uncomplicated Fw existuje rovněž GUI – grafické uživatelské rozhraní GUFW což ale u serveru jaksi postráda smysl. Aplikace pro správu pravidel podporuje provádění běžných úloh, jako je povolování nebo blokování předem nakonfigurovaných pravidel, běžných P2P pravidel nebo jednotlivých portů. Gufw byl navržen pro Ubuntu, ale je k dispozici také v distribucích založených na Debianu a v Arch Linuxu, jiným slovem všude, kde je k dispozici Python, GTK a UFW.

Ve výchozím nastavení k dispozici ve všech instalacích Ubuntu.

UFW firewall web aplikace

Pro Apache / Nginx povolujeme tři porty. Port 80, 443 a port pro přístup k rozhraní ISPConfig 8080.

ufw allow 80,443,8080 proto tcp
ufw reload

Lze použít i přímo k odepření přístupu IP adresy ke všem službám serveru

ufw deny from 22.33.55.55

Nebo k umožnění přístupu pouze vybrané IP adresy (IP subnetu) k vybrané službě – v příkladu omezení přístupu k portu SSH serveru.

ufw allow from 22.33.44.55 to any port 22
ufw allow from 22.33.44.0/24 to any port 22 proto tcp

S blokováním IP adres to ale není vždy prosté. Doporučuje se IP adresy vkládat na začátek, před všechna ostatní pravidla fw.

ufw insert 1 deny from 11.33.44.55 to any
ufw insert 2 deny from 22.33.44.55 to any
ufw insert 3 deny from 33.33.44.0/18 to any

Jak přidat pravidlo s komentářem či názvem pravidla?

ufw insert 1 deny from 11.33.44.55 to any comment "název pravidla"

Jak odstranit iptables pravidlo?

Zobrazení a odstranění pravidla (č. 10) pomocí ufw status numbered + ufw delete

user@box:/# ufw status numbered

Status: active

To                                      Action           From
 --                                        ------               ----
[ 1] Anywhere                   DENY IN      185.119.81.0/24
[ 2] Anywhere                   DENY IN      114.119.128.0/18
[ 3] 2292/tcp                     ALLOW IN    Anywhere
[ 4] 80/tcp                         ALLOW IN    Anywhere
[ 5] 443/tcp                       ALLOW IN    Anywhere
[ 6] 9152/tcp                    ALLOW IN    Anywhere
[ 7] 9152/udp                   ALLOW IN    Anywhere
[ 8] 20910:20990/tcp      ALLOW IN    Anywhere
[ 9] 20910:20990/udp     ALLOW IN    Anywhere
[10] 9988/tcp                   ALLOW IN    Anywhere

Odstranění pravidla č. 10

user@box:/# ufw delete 10

UFW pro Pure-FTPd

Pro Pure-FTPd je nutno nastavit pasivní příjem jak na straně serveru tak na straně klienta. Nastavení pasivního rozsahu portů straně Pure-FTPd serveru pomocí příkazu echo

echo "20910 20990" > /etc/pure-ftpd/conf/PassivePortRange
systemctl restart pure-ftpd-mysql restart

Přidání rozsahů pasivních portů 20910 až 20990 do fw pravidel

ufw allow 20910:20990/tcp
ufw allow 20990:20990/udp

Deaktivace IPv6

nano /etc/default/ufw

zmeníme IPV6=yes na IPV6=no

Obecné příkazy UFW

ufw status
* status numbered
* status verbose
* disable
* enable
* reload

Výpis příkazu ufw status numbered

UFW IPtabless firewall status
UFW IPtabless firewall status

Poznámka

Stávající pravidla zapsaných pomocí IPSconfig v kombinaci s UFW budou fungovat. Technicky vzato ale není důvod kombinovat je respektive používat UFW na instalaci která používá ISPconfig administraci. Jak používat IPtables bez UFW se dočtete v textu Netfilter IPtables Linux.

Užitečné odkazy

Launchpad repo.
Launchpad git.
Článku ISPconfig fw.
Odkaz na článek UFW + IPtables konfigurace Debian fw po instalaci ISPconfig.

ICTIS.CZ