Как включить ведение журнала FirewallD для отклоненных пакетов в операционных системах Linux, чтобы можно было просматривать информацию обо всех отброшенных пакетах?
Как просмотреть логи трафика, заблокированного FirewallD под CentOS / RHEL (Red Hat Enterprise Linux) / Suse / OpenSUSE Linux?
Firewalld предоставляет динамически управляемый брандмауэр Linux для защиты ваших сетевых подключений, сервисов и интерфейсов.
В этой статье объясняется, как использовать параметр LogDenied в firewalld, чтобы включить механизм ведения журнала для отклоненных пакетов в операционных системах Linux.
Как включить ведение журнала firewalld на Linux
Мы можем установить параметры LogDenied в файле /etc/firewalld/firewalld.conf.
Другой вариант – использовать команду firewall-cmd.
После включения ваша система Linux будет регистрировать все пакеты, которые отклонены или отброшены FirewallD.
Способ № 1 – Настройка регистрации отклоненных пакетов
Отредактируйте /etc/firewalld/firewalld.conf, введите следующее:
sudo vi /etc/firewalld/firewalld.conf
Найдите:
LogDenied=off
И замените это на:
LogDenied=all
Сохраните и закройте файл в vi/vim.
sudo systemctl restart firewalld.service
или
sudo systemctl reload firewalld.service
или
sudo firewall-cmd --reload
По умолчанию опция LogDenied отключена.
Опция LogDenied включает правила ведения журнала непосредственно перед тем, как отклонять и отбрасывать правила в цепочках INPUT, FORWARD и OUTPUT , а также окончательных правил отклонения и отбрасывания в зонах.
Возможные значения: all, unicast, broadcast, multicast и off.
Для скриптов оболочки мы можем использовать комбинацию команды grep и команды sed следующим образом:
grep '^LogDenied' /etc/firewalld/firewalld.conf grep -q -i '^LogDenied=off' /etc/firewalld/firewalld.conf && echo "Change it" || echo "No need to change" grep -q -i '^LogDenied=off' /etc/firewalld/firewalld.conf | sed -i'Backup' 's/LogDenied=off/LogDenied=all/' /etc/firewalld/firewalld.conf
Метод № 2 – включить ведение журнала Firewalld
В этом методе мы будем использовать команду firewall-cmd следующим образом.
sudo firewall-cmd --get-log-denied
sudo firewall-cmd --set-log-denied=all
Примем изменения:
sudo firewall-cmd --get-log-denied
Как просмотреть запрещенные пакеты?
Используйте команду grep или journalctl:
journalctl -x -e
ИЛИ мы можем использовть комбинацию dmesg и grep следующим образом:
dmesg
dmesg | grep -i REJECT
Пример вывода:
[20042.637753] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:c1:08:00 SRC=218.26.176.3 DST=172.xxx.yyy.zzz LEN=40 TOS=0x00 PREC=0x00 TTL=240 ID=55921 PROTO=TCP SPT=57604 DPT=1433 WINDOW=1024 RES=0x00 SYN URGP=0 [20046.765558] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:41:08:00 SRC=80.82.70.239 DST=172.xxx.yyy.zzz LEN=40 TOS=0x00 PREC=0x00 TTL=240 ID=57597 PROTO=TCP SPT=44042 DPT=3464 WINDOW=1024 RES=0x00 SYN URGP=0 [20047.814002] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:41:08:00 SRC=120.147.208.68 DST=172.xxx.yyy.zzz LEN=48 TOS=0x00 PREC=0x00 TTL=111 ID=26712 DF PROTO=TCP SPT=61102 DPT=445 WINDOW=8192 RES=0x00 SYN URGP=0 [20055.064170] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:c1:08:00 SRC=192.241.218.101 DST=172.xxx.yyy.zzz LEN=40 TOS=0x00 PREC=0x00 TTL=245 ID=54321 PROTO=TCP SPT=43855 DPT=2082 WINDOW=65535 RES=0x00 SYN URGP=0 [20069.898251] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:41:08:00 SRC=80.82.70.239 DST=172.xxx.yyy.zzz LEN=40 TOS=0x00 PREC=0x00 TTL=237 ID=28418 PROTO=TCP SPT=44042 DPT=3489 WINDOW=1024 RES=0x00 SYN URGP=0 [20083.001724] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:41:08:00 SRC=95.217.132.22 DST=172.xxx.yyy.zzz LEN=52 TOS=0x00 PREC=0x00 TTL=113 ID=40426 DF PROTO=TCP SPT=51883 DPT=3389 WINDOW=64240 RES=0x00 CWR ECE SYN URGP=0 [20086.000830] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:41:08:00 SRC=95.217.132.22 DST=172.xxx.yyy.zzz LEN=52 TOS=0x00 PREC=0x00 TTL=113 ID=40888 DF PROTO=TCP SPT=51883 DPT=3389 WINDOW=64240 RES=0x00 CWR ECE SYN URGP=0 [20092.000875] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:41:08:00 SRC=95.217.132.22 DST=172.xxx.yyy.zzz LEN=52 TOS=0x00 PREC=0x00 TTL=113 ID=41676 DF PROTO=TCP SPT=51883 DPT=3389 WINDOW=64240 RES=0x00 SYN URGP=0 [20117.283302] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:c1:08:00 SRC=124.156.241.62 DST=172.xxx.yyy.zzz LEN=40 TOS=0x08 PREC=0x00 TTL=238 ID=54321 PROTO=TCP SPT=46206 DPT=9997 WINDOW=65535 RES=0x00 SYN URGP=0 [20120.870817] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:41:08:00 SRC=202.141.249.180 DST=172.xxx.yyy.zzz LEN=48 TOS=0x00 PREC=0x00 TTL=110 ID=28320 DF PROTO=TCP SPT=53409 DPT=445 WINDOW=8192 RES=0x00 SYN URGP=0 [20129.579209] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:c1:08:00 SRC=185.176.27.110 DST=172.xxx.yyy.zzz LEN=40 TOS=0x00 PREC=0x00 TTL=243 ID=62492 PROTO=TCP SPT=56008 DPT=3334 WINDOW=1024 RES=0x00 SYN URGP=0 [20160.927205] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:c1:08:00 SRC=201.25.123.138 DST=172.xxx.yyy.zzz LEN=52 TOS=0x08 PREC=0x20 TTL=112 ID=9284 DF PROTO=TCP SPT=63427 DPT=445 WINDOW=8192 RES=0x00 SYN URGP=0 [20172.446500] FINAL_REJECT: IN=eth0 OUT= MAC=f2:3c:92:1f:88:72:84:78:ac:5a:19:41:08:00 SRC=198.46.135.194 DST=172.xxx.yyy.zzz LEN=40 TOS=0x00 PREC=0x00 TTL=244 ID=5662 PROTO=TCP SPT=41553 DPT=8423 WINDOW=1024 RES=0x00 SYN URGP=0
Заключение
Отслеживание отклоненных и пропущенных пакетов с использованием firewalld является важной задачей для системных администраторов Linux.
Это позволяет избежать проблем с безопасностью и отслеживать атаки.
Следовательно, мы должны включить и зарегистрировать отброшенные пакеты, используя firewalld в RHEL / CentOS / Fedora и SUSE / OpenSUSE Linux!