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

15

Когда я работаю на моей машине с 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
Царь Давид
источник

Ответы:

15

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

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

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

Евгений Рик
источник
6
Не всегда правда. Под CentOS7 вы firewalldустановили по умолчанию, и вы можете проверить его состояние, запустив systemctl status firewalld. Кроме того, вызываемый пакет iptables-servicesможет быть установлен, и если он запущен (имя службы:) iptables, вы можете проверить, работает он или нет.
nkn
3
@nKn - вопрос был: как проверить, работает ли iptables . firewalld НЕ заменяет iptables, он просто используется для его настройки. Мертвый брандмауэр с активными правилами iptables означает, что брандмауэр работает, а не ВНИЗ
Eugen Rieck
1
Точно, и я сказал, что это может быть проверено, устанавливая iptables-servicesпакеты и проверяя systemctl status iptables, который скажет вам, iptablesработает ли или нет.
NKN
И снова, снова, снова: нет такой вещи, как «iptables работает».
Евгений Рик,
1
@nKn Спасибо, брат. firewalldбыла моя проблема!
Хабиб Perwad
0

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

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

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

программист
источник