【发布时间】:2012-09-18 17:09:32
【问题描述】:
我是 bash 新手,正在努力学习如何解决。
我有以下几点:
Sep 18 21:05:40 host kernel: Firewall: *Port Flood* IN=venet0 OUT= MAC= SRC=118.223.69.254 DST=10.0.0.1 LEN=40 TOS=0x00 PREC=0x00 TTL=244 ID=9398 PROTO=TCP SPT=9876 DPT=80 WINDOW=5840 RES=0x00 SYN URGP=0
如何将 SRC IP 拉出并将其通过管道传输到 csf -d {IP HERE}
我会使用类似的东西
sed -e 's/\([0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+\).*$/\1/' /var/log/messages 对吗?
编辑:
既然SPT= 是全部名称,我可以提取它并获取IP 吗?
【问题讨论】:
-
您的意思是 GREP 和 SED 吗?什么是“csf”?你用什么系统?
-
是的,grep。 CSF 就像 IPTables。
-
如果我有 | tail 在最后,那么它会监控文件对吗?
-
@mike.williams 您可能希望
tail -f /var/log/messages | script在匹配发生时持续查看日志,其中script是 F.J. 提供的答案