我正在使用Fail 2Ban中的Regex。
这是我需要抓取的一行日志:
Jul 14 13:30:44 servername kernel: [ 803.539059] [UFW BLOCK] IN=eth0 OUT= MAC=somemacadress SRC=somesourceip DST=somedestinationip LEN=60 TOS=0x00 PREC=0x00 TTL=53 ID=18692 DF PROTO=TCP SPT=50852 DPT=5003 WINDOW=14600 RES=0x00 SYN URGP=0
字符串
我需要使用SRC=?(?P<host>\S+)
获得的IP somesourceip
但是:我只想要它,如果DPT=5003
也存在。这是我挣扎的地方。
有人能帮忙吗?
多谢了!
我已经找到了^.*substring.*$
来搜索子字符串,但我无法将两者结合起来。
1条答案
按热度按时间btqmn9zl1#
可以使用positive lookahead:
字符串
这与您现有的字符串匹配,后跟零个或多个其他字符,然后是
DPT=5003
字符串。