我如何使用Linux下的iptables记录连接到服务器的所有IP?
作为一个小细节,我想在日志PER每日IP中只有一个条目.
谢谢 :)
编辑:
我把它缩小到每个新会话记录的5个包,这很奇怪,因为我使用–hashlimit 1 –haslimit-burst 1,我怀疑–m limit默认为5在那里起作用.麻烦的是,如果我将-m limit设置为1,则只记录1个条目用于所有IP,而不是每个EACH IP一个条目.
我想这样做的原因还在于尽可能避免日志增长太快,因为这将是一个相当无管理的盒子.
EDIT2:
这是我目前的尝试,以iptables-restore格式:
(为了便于阅读,在几行上)
-A FORWARD -d 10.x.x.x -p tcp --dport 443 -m state --state NEW -m hashlimit --hashlimit-upto 1/min --hashlimit-burst 1 --hashlimit-mode srcip --hashlimit-name denIEd-clIEnt -j LOG --log-prefix "iptables (denIEd clIEnt): "解决方法 我会试试这个:
# IP address entry older than one dayiptables -A ... -m recent --name mydaily ! --rcheck ! --seconds 86400 -j logandset# IP address never seen beforeiptables -A ... -m recent --name mydaily ! --rcheck -j logandset# Custom chain for logging and refreshingiptables -N logandsetiptables -A logandset -j LOGiptables -A logandset -m recent --name mydaily --set
因此,您的列表mydaily将跟踪最后看到的IP地址,如果以前从未见过,或者如果最后一次看到的是超过一天,则将记录数据包,并更新该IP地址的列表条目.
您应该将ip_List_tot设置为更高的mydaily值,如iptables联机帮助页(在/ proc / net / xt_recent / mydaily中的情况)中所述.
总结以上是内存溢出为你收集整理的linux – 使用iptables记录系统上连接的每个IP全部内容,希望文章能够帮你解决linux – 使用iptables记录系统上连接的每个IP所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)