Як встановити на використовувати Firewalld на Ubuntu 24.04|22.04|20.04

Як встановити на використовувати Firewalld на Ubuntu 24.04 | Ubuntu 22.04 | Ubuntu 20.04

 

Firewalld — це інструмент керування брандмауером Linux із підтримкою IPv4, IPv6, мостів Ethernet і параметрів брандмауера IPSet. Він діє як інтерфейс до фреймворку netfilter ядра Linux. Firewalld — це стандартне програмне забезпечення для керування брандмауером сімейства RHEL 7.

У цьому посібнику я покажу вам базове використання Firewalld у дистрибутивах Linux Ubuntu 24.04|22.04|20.04. Стандартною системою брандмауера для Ubuntu є  ufw  , але за бажанням ви можете встановити та використовувати Firewalld. Firewalld працює добре для мене, оскільки я інтенсивний користувач CentOS 7.

Крок 1 – Встановіть Firewalld

Встановіть Firewalld на Ubuntu, виконавши команди:

sudo apt update
sudo apt install firewalld

За замовчуванням служба має бути запущена, якщо не працює, запустіть і ввімкніть її запуск під час завантаження:

sudo systemctl enable firewalld
sudo systemctl start firewalld

Переконайтеся, що служба працює:

$ sudo firewall-cmd --state
running

Якщо у вас увімкнено ufw, вимкніть його, щоб зробити firewalld стандартним брандмауером

sudo ufw disable

Крок 2: Використання Firewalld на Ubuntu

Тепер, коли пакет встановлено та службу брандмауера запущено, давайте розглянемо кілька прикладів використання

Нижче наведено приклади базового використання брандмауера.

1. Список усіх налаштованих правил брандмауера

$ sudo firewall-cmd --list-all
public
  target: default
  icmp-block-inversion: no
  interfaces: 
  sources: 
  services: ssh dhcpv6-client
  ports: 
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules:

ssh і  dhcpv6-client служби вмикаються за замовчуванням, коли ви запускаєте службу брандмауера.

2. Отримайте список усіх служб, які можна ввімкнути за допомогою імені

Щоб переглянути всі активні служби, виконайте таку команду:

sudo firewall-cmd --get-services

3. Увімкнути  http службу

У цьому прикладі ми вмикаємо службу http.

sudo firewall-cmd --add-service=http --permanent

Параметр  --permanent означає збереження правил проти перезавантаження сервера.

4. Увімкніть як http, так і https в одному рядку

Ось приклад увімкнення служб http і https:

sudo firewall-cmd --permanent --add-service={http,https} --permanent

5. Увімкніть порт TCP 7070

Увімкніть порт TCP 7070

sudo firewall-cmd --add-port=7070/tcp --permanent

6. Увімкніть порт UDP 514

Як увімкнути UDP-порт 514

sudo firewall-cmd --add-port=514/udp --permanent

7. Створіть нову зону

Створення нової зони під назвою myzone

sudo firewall-cmd --new-zone=myzone --permanent

8. Увімкнути послугу в певній зоні

Давайте ввімкнемо службу на створеній зоні:

sudo firewall-cmd --zone=myzone --add-port=4567/tcp --permanent

9. Встановити зону за замовчуванням

Встановити створену зону за умовчанням

sudo firewall-cmd --set-default-zone=public --permanent

10. Додати інтерфейс до зони

Додавання інтерфейсу до зони:

sudo firewall-cmd --get-zone-of-interface=eth0 --permanent
sudo firewall-cmd --zone=<zone> --add-interface=eth0 --permanent

11. Дозволити доступ до порту з певної підмережі/IP

Як дозволити вказаній підмережі доступ до служби або порту:

# Allow access to ssh from192.168.0.12 sing IP address
sudo firewall-cmd --add-rich-rule 'rule family="ipv4" service name="ssh" \
source address="192.168.0.12/32" accept' --permanent# Allow access to ssh from10.1.1.0/24 network
sudo firewall-cmd --add-rich-rule 'rule family="ipv4" service name="ssh" \
source address="10.1.1.0/24" accept' --permanent

12. Перелічіть розширені правила

Перелік розширених правил у системі

sudo firewall-cmd --list-rich-rules

13. Налаштувати переадресацію портів

Увімкнути переадресацію портів:

# Enable masquerading
sudo firewall-cmd --add-masquerade --permanent

# Port forward to a different port within same server ( 22 > 2022)
sudo firewall-cmd --add-forward-port=port=22:proto=tcp:toport=2022 --permanent

# Port forward to same port on a different server (local:22 > 192.168.2.10:22)
sudo firewall-cmd --add-forward-port=port=22:proto=tcp:toaddr=192.168.2.10 --permanent

# Port forward to different port on a different server (local:7071 > 10.50.142.37:9071)
sudo firewall-cmd --add-forward-port=port=7071:proto=tcp:toport=9071:toaddr=10.50.142.37 --permanent

14. Видалення порту/служби

Замінити  --add на–-remove

Для подальшого читання зверніться до офіційної документації Firewalld.

Прокрутка до верху