我希望我能很好地解释这一点。我会尽力的由于存在许多类似的问题和示例,因此它们都不满足我的需求。我正在尝试从服务器中删除这些所谓的“攻击者”。
我正在寻找:
例如,我们的日志中有以下IP:
122.155.223.48
116.110.220.28
116.110.220.166
116.196.94.108
118.70.113.1
116.110.220.94
116.110.220.34
118.70.113.2
125.19.37.226
现在我需要一个像这样显示它们的列表:
4x 116.110.220.0
2x 118.70.113.0
1x 116.196.94.0
1x 122.155.223.0
1x 125.19.37.0
如您所见,它将最后一个八进制(?)合并为0,并按点击量对其进行排序。这样,我可以在3台服务器上阻止整个范围。
我想扫描服务器上的所有/ var / log / secure日志以获取以上列表,其中包括(示例):secure,secure-20191124,secure-20191201等
要查找的字符串是:密码失败
我到目前为止使用的代码是:
grep "Failed password for" /var/log/secure | grep -Po "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" | sort | uniq -c
这部分起作用,但是它不对20个IP进行排序,也不对最后八度为.0进行排序(并合并这些IP),并且不对排名靠前的匹配项进行排序(只是随机)。] >
是否有针对性的解决方案?
提前感谢您的帮助!
我希望我能很好地解释这一点。我会尽力的由于存在许多类似的问题和示例,因此它们都不满足我的需求。我正在尝试删除这些-...