Как проверить, работает ли iptables или активирован ли брандмауэр

Когда я работаю на своем компьютере с Linux Redhat версии 6.8 - сервис iptables status

Я получаю таблицу правил (но не, если iptables запущен или нет)

Следующее показывает, что iptables работает?

 # service iptables status
 Table: filter
 Chain INPUT (policy ACCEPT)
 num  target     prot opt source               destination
 1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state   RELATED,ESTABLISHED
 2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
 3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
 4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state  NEW tcp dpt:22
 5    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject- with icmp-host-prohibited

 Chain FORWARD (policy ACCEPT)
 num  target     prot opt source               destination
 1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject- with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

Iptables включен при загрузке

# chkconfig --list iptables
iptables        0:off   1:off   2:on    3:on    4:on    5:on    6:off

3 ответа

Решение

Не существует такого понятия, как "iptables is running" - нет выделенного процесса брандмауэра для мониторинга.

Если модули ядра загружены и определены правила (оба из которых доказаны показом действительной таблицы правил), фильтрация активна. Это делается в ядре для событий (пакет rcv/snd), а не для отдельного процесса.

Итак: Да, если указанные правила соответствуют вашим требованиям, значит ваш брандмауэр работает.

В Ubuntu 20.04 я использовалservice iptables statusчтобы показать следующее:

      ~$ service iptables status
● iptables.service - netfilter persistent configuration
     Loaded: loaded (/etc/alternatives/iptables.service; enabled; vendor preset: enabled)
     Active: inactive (dead)           
       Docs: man:netfilter-persistent(8)

~$ service iptables restart
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
Authentication is required to restart 'iptables.service'.
Authenticating as: <user id>
Password:
==== AUTHENTICATION COMPLETE ===

~$ service iptables status
● iptables.service - netfilter persistent configuration
     Loaded: loaded (/etc/alternatives/iptables.service; enabled; vendor preset: enabled)
     Active: active (exited) since Sun 2021-01-31 08:25:23 EST; 11s ago
       Docs: man:netfilter-persistent(8)
    Process: 140486 ExecStart=/usr/sbin/netfilter-persistent start (code=exited, status=0/SUCCESS)
   Main PID: 140486 (code=exited, status=0/SUCCESS)

Таким образом, мы можем знать, только если он не работает

[root@vm1 ~]# service iptables status iptables: брандмауэр не работает.

если работает, он печатает таблицу правил, как показано на рисунке

Другие вопросы по тегам