♥ Как установить и настроить Firewalld на Debian 10 (Buster) |

♥ Как установить и настроить Firewalld на Debian 10 (Buster)

Мануал

В этом руководстве мы рассмотрим, как установить и настроить Firewalld на Debian 10 (Buster).

Firewalld – это инструмент управления брандмауэром Linux с поддержкой IPv4, IPv6, мостов Ethernet и настроек брандмауэра ipset.

Firewalld выступает в качестве внешнего интерфейса для сетевого фильтра ядра Linux.

Это стандартное программное обеспечение для управления брандмауэром для дистрибутивов Linux семейства RHEL 7+, но может использоваться в дистрибутивах Linux семейства Debian.

Как установить Firewalld на Debian 10 (Buster)

Пакет firewalld доступен в официальных репозиториях Debian 10 apt.

Установка выполняется так же быстро, как запуск следующих команд в терминале, от имени пользователя root или пользователя с привилегиями sudo.

sudo apt update
sudo apt -y install firewalld

Это установит firewalld на Debian 10 и настроит запуск службы при загрузке.

Вытащите детали пакета с помощью:

$ apt policy firewalld
firewalld:
  Installed: 0.6.3-5
  Candidate: 0.6.3-5
  Version table:
 *** 0.6.3-5 500
        500 http://deb.debian.org/debian buster/main amd64 Packages
        100 /var/lib/dpkg/status

Убедитесь, что служба находится в рабочем состоянии.

$ sudo firewall-cmd --state
 running

$ systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/lib/systemd/system/firewalld.service; enabled; vendor preset
   Active: active (running) since Sun 2019-07-07 06:35:14 EDT; 1min 33s ago
     Docs: man:firewalld(1)
 Main PID: 7955 (firewalld)
    Tasks: 2 (limit: 2319)
   Memory: 24.5M
   CGroup: /system.slice/firewalld.service
           └─7955 /usr/bin/python3 /usr/sbin/firewalld --nofork --nopid

Если у вас включен UFW, отключите его, чтобы сделать FireWalld вашим брандмауэром по умолчанию

Использование Firewalld в Debian 10 (Buster)

Теперь, когда пакет установлен и запущена служба firewalld, давайте рассмотрим несколько примеров того, как его можно использовать для защиты вашего сервера / рабочей станции.

1 – список всех настроенных правил брандмауэра

Чтобы просмотреть текущие правила, используйте команду:

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

Службы ssh и dhcpv6-client разрешены по умолчанию при запуске службы firewalld.

2 – Список служб, которые могут быть включены / отключены

Чтобы получить полный список служб, которые можно включить или отключить, используйте следующую команду.

sudo firewall-cmd --get-services

3 – Включить сервис / Список сервисов

Чтобы разрешить службу в брандмауэре, синтаксис команды следующий:

$ sudo firewall-cmd --add-service="servicename" --permanent

В приведенном ниже примере активируется служба http.

$ sudo firewall-cmd --add-service="http" --permanent
success
$ sudo firewall-cmd --reload

Для списка служб, разделите их запятой.

$ sudo firewall-cmd --add-service={http,https,smtp,imap} --permanent --zone=public
$ sudo firewall-cmd --reload

4 – Включить порт TCP

Синтаксис для включения порта TCP:

$ sudo firewall-cmd --add-port=port/tcp --permanent
$ sudo firewall-cmd --reload

Вот как включить порт 8080 и 8443.

sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --zone=public --add-port={8080,8443}/tcp --permanent
sudo firewall-cmd --reload

Для портов UDP замените /tcp на /udp.

5 – Создать новую зону

Чтобы создать новую зону брандмауэра, используйте команду:

$ sudo firewall-cmd --new-zone=zonename --permanent

E.g

$ sudo firewall-cmd --new-zone=private --permanent
$ sudo firewall-cmd --reload

6 – Включить службу / порт в определенной зоне

Чтобы включить службу / порт в определенной зоне, синтаксис:

sudo firewall-cmd --zone=<zone> --add-port=<port>/tcp --permanent
sudo firewall-cmd --zone=<zone> --add-port=<port>/udp --permanent
sudo firewall-cmd --zone=<zone> --add-service=<service> --permanent
sudo firewall-cmd --zone=<zone> --add-service={service1,service2,service3} --permanent

7 – Добавить интерфейс в зону

Для систем с более чем одним интерфейсом вы можете добавить интерфейс в зону.

Например, веб-серверы Backend в частной зоне и приложения в общедоступной зоне.

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

8 – разрешить доступ к порту из определенной подсети / IP

Доступ к услуге или порту может быть ограничен определенным IP-адресом или подсетью. с использованием rich  правил.

$ sudo firewall-cmd --add-rich-rule 'rule family="ipv4" service name="ssh" \
source address="192.168.0.12/32" accept' --permanent
$ sudo firewall-cmd --add-rich-rule 'rule family="ipv4" service name="ssh" \
source address="10.1.1.0/24" accept' --permanent

9 – Список  правил rich

sudo firewall-cmd --list-rich-rules

10 – Настройка переадресации портов

Смотрите примеры ниже.

# 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

11 – Удаление порта или службы

Чтобы удалить порт или службу из брандмауэра, замените –add на –-remove в каждой команде, используемой для включения службы.

См. также:

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий