Як встановити на використовувати 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.