Правило, логирующее факт отправки пакетов к определённому IP с указанием UID и GID пользователя, отправляющего пакеты
Правило, логирующее факт отправки пакетов к определённому IP с указанием UID и GID пользователя, отправляющего пакеты¶
В ситуации, когда есть есть сервер, на нём много пользователей(пусть будет пару сотен, для примера), у каждого из них запущены какие-то процессы, в том числе обеспечивающие обработку запросов к их веб-приложениям, и одно из приложений не известного им пользователя периодически делает не желательные запросы к стороннему хосту, нам может пригодится правило вида:
iptables -A OUTPUT -p all -d $SOME_IP -j LOG --log-uid
Если нужно логировать не трафик к одному IP, а к целой подсети, просто указываем IP/MASK нужной нам подсети вместо $SOME_IP, к примеру так 192.168.220.1/24.
В итоге, если с вашего хоста будет зафиксирован трафик к стороннему хосту, в syslog/messages(в зависимости от настроек логирования на вашем сервере) будут добавлены записи вида
Jul 7 14:11:29 mylukyserver777 kernel: IN= OUT=eth0 SRC=192.168.110.220 DST=192.168.220.330 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=27938 SEQ=1 UID=0 GID=0
Jul 7 14:11:30 mylukyserver777 kernel: IN= OUT=eth0 SRC=192.168.110.220 DST=192.168.220.330 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=27938 SEQ=2 UID=0 GID=0
Jul 7 14:11:31 mylukyserver777 kernel: IN= OUT=eth0 SRC=192.168.110.220 DST=192.168.220.330 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=ICMP TYPE=8 CODE=0 ID=27938 SEQ=3 UID=0 GID=0