Назад | Перейти на главную страницу

linux: monit: iptables

В linux, по крайней мере, в centos и, я думаю, также в debian, в демонах есть "iptables". Но на самом деле это сценарий для их загрузки и сохранения, он не запускает процесс и не пишет pidfile.

Как я могу проверить работу iptables с помощью monit?

Для CentOS 6 и ранее вы правы, используя iptables. CentOS 7 использует firewalld.

Для мониторинга с помощью Monit вы можете использовать ПРОГРАММА-СТАТУС-ТЕСТ. Есть несколько способов узнать статус iptables.

Один способ получить статус iptables в CentOS 6 использовать

$ sudo /etc/init.d/iptables status

Если iptables не работает, вы получите следующий ответ:

$ sudo /etc/init.d/iptables status
iptables: Firewall is not running.

Если iptables работает, он будет выглядеть примерно так:

$ sudo /etc/init.d/iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination
Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

Напишите скрипт для проверки статуса и grep для Firewall is not running и укажите код возврата для сценария, затем используйте monit для запуска скрипта.

Я не тестировал, но это будет выглядеть примерно так:

check program iptables with path "/etc/init.d/iptables status"
    if status != 0 then alert