Przejdź do głównej zawartości

Instalacja zapory firewall UFW (Debian).

W celu instalacji prostego firewall UFW, którego sama nazwa oznacza Nieskomplikowany Firewall (ang. Uncomplicated Firewall) wykonamy następujące kroki.

Dystrybucja: Debian 10 Debian 11

  • W pierwszej kolejności logujemy się do swojego VPS po SSH np. za pomocą puTTy, na domyślny port 22
  • Następnie po zalogowaniu na konto root wydajemy polecenie aktualizacji listy pakietów poleceniem:
apt-get update
Wynik:
root@adamhitme:~# apt-get update
Hit:1 http://ftp.debian.org/debian buster InRelease
Hit:2 http://security.debian.org buster/updates InRelease
Hit:3 http://ftp.debian.org/debian buster-updates InRelease
Reading package lists... Done

Instalacja UFW.​

apt install ufw

jeśli nie używamy IPv6 możemy wyłączyć w pliku /etc/default/ufw domyślne ustawienie IPV6=no

nano /etc/default/ufw

Domyślne reguły.​

Aby wprowadzić domyślne reguły dla portów usług SSH, FTP oraz HTTP/S wydajemy komendy:

ufw default deny incoming
ufw default allow outgoing
ufw allow ssh
ufw allow ftp
ufw allow http
ufw allow https

Aktywacja UFW.​

Aby zapora zaczęła działać musimy ją aktywować poleceniem ufw enable

ostrzeżenie

Port SSH! Uwaga, przed aktywacją upewnij się że dodałeś port SSH do aktywowanych.

Wynik:
root@adamhitme:~# ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

Status firewall sprawdzamy poleceniem ufw status

Wynik:
root@adamhitme:~# ufw status
Status: active

To Action From
-- ------ ----
22/tcp ALLOW Anywhere
21/tcp ALLOW Anywhere
80/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere

root@adamhitme:~#

Blokowanie adresu IP.​

Jeżeli chcemy zablokować połączenie z jakiegoś IP wykonujemy to poleceniem: ufw deny from <adres IP>

ufw deny from 203.0.113.4
Wynik:
root@adamhitme:~# ufw deny from 223.0.113.4
Rule added

Możemy teraz sprawdzić status poleceniem ufw status numbered

Wynik:
root@adamhitme:~# ufw status numbered
Status: active

To Action From
-- ------ ----
[ 1] 22/tcp ALLOW IN Anywhere
[ 2] 21/tcp ALLOW IN Anywhere
[ 3] 80/tcp ALLOW IN Anywhere
[ 4] 443/tcp ALLOW IN Anywhere
[ 5] Anywhere DENY IN 223.0.113.4

Odblokowywanie IP.​

Jeżeli chcemy odblokować, wydajemy najpierw polecenie status poleceniem ufw status numbered aby zdobyć numer linii, a następnie używamy ufw delete <numer linii> i potwierdzamy 'y'

Wynik:
root@adamhitme:~# ufw delete 5
Deleting:
deny from 223.0.113.4
Proceed with operation (y|n)? y
Rule deleted
root@adamhitme:~#

Status usługi i reguł.​

Aby sprawdzić czy zapora jest aktywna wydajemy polecenie ufw status verbose

Wynik:
root@adamhitme:~# ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), deny (routed)
New profiles: skip

To Action From
-- ------ ----
22/tcp ALLOW IN Anywhere
21/tcp ALLOW IN Anywhere
80/tcp ALLOW IN Anywhere
443/tcp ALLOW IN Anywhere

root@adamhitme:~#

Inne polecenia UFW.​

ufw delete allow http lub ufw delete allow 80 usuwamy port 80/http z regułek

ufw allow 6000:6007/tcp - dodajemy zakres 6000-6007 TCP

ufw allow 6000:6007/udp - dodajemy zakres 6000-6007 UDP

ufw allow from 223.0.113.4 to any port 22 - pozwalamy adresowi 223.0.113.4 na połączenie z portem 22

ufw allow from 223.0.113.4 proto tcp to any port 22 - pozwalamy adresowi 223.0.113.4 na połączenie po protokole TCP z portem 22

ufw allow from 223.0.113.4 proto tcp to any port 22 comment 'twoj komentarz' - pozwalamy adresowi 223.0.113.4 na połączenie po protokole TCP z portem 22 dodając komentarz

ufw allow from 223.0.113.0/24 - pozwolenie dla całej maski

ufw disable - dezaktywujemy firewall

ufw reset - resetujemy regułki

ufw logging off - wyłączenie zapisu ruchu do logów systemowych (niezalecane)