Я использую Fedora 20 и хотел бы узнать, что мой брандмауэр делает в фоновом режиме. Можно ли просмотреть журнал трафика, заблокированного FirewallD?
Я использую Fedora 20 и хотел бы узнать, что мой брандмауэр делает в фоновом режиме. Можно ли просмотреть журнал трафика, заблокированного FirewallD?
Ответы:
Согласно этой странице , журналы FirewallD находятся по адресу /var/log/firewalld
. Чтобы получить отладочные сообщения, вам нужно запустить его с помощью --debug
или --debug=2
.
Я знаю, что это устаревшее сообщение, но я искал это сегодня и нашел тонны старых блогов, которые пытаются решить эту проблему. Для общественности это обновление от Red Hat должно быть более доступным, чем только для подписчиков:
Обновление до firewalld-0.4.3.2-8.el7 от Errata RHSA-2016: 2597
Укажите, какие пакеты должны быть зарегистрированы
firewall-cmd --set-log-denied=<value>
значение может быть одним из: все, одноадресная, широковещательная, многоадресная или выключена
Для регистрации заблокированного трафика у меня работал firewalld
следующий подход с rsyslogd
:
Отредактируйте /etc/sysconfig/firewalld
и обновите значение для LogDenied
до all
(или по мере необходимости)
LogDenied=all
перезапустить firewalld
sudo systemctl restart firewalld
Обычно это добавляет правила ведения журнала непосредственно перед отклонением / удалением правил в брандмауэре, например:
LOG all -- anywhere anywhere LOG level warning prefix "IN_drop_DROP: "
LOG all -- anywhere anywhere LOG level warning prefix "FINAL_REJECT: "
Создайте файл с именем /etc/rsyslog.d/custom_iptables.conf
(note note is.conf) и добавьте в него следующие операторы:
:msg,contains,"_DROP" /var/log/iptables.log
:msg,contains,"_REJECT" /var/log/iptables.log
& stop
перезапустите rsyslog
sudo systemctl restart rsyslog
Теперь отброшенные и отклоненные пакеты будут зарегистрированы в /var/log/iptables.log
journalctl -f
. FWIW, первоначально, основываясь на другом ответе, я только сделал LogDenied = all, но этого было недостаточно.
_iptables.conf
→, _firewalld.conf
чтобы уменьшить путаницу?
/etc/sysconfig
dir, вместо этого я редактирую /etc/firewalld/firewalld.conf
файл. Я не заметил этого в последний раз, когда использовал этот ответ, потому что LogDenied=all
шаг, который я сделал, использовал другой ответ.
/etc/firewalld/firewalld.conf