有人一直在攻击我的服务器,但不幸的是我已经把我的操作系统切换到了FreeBSD,因为我之前使用过Debian 5.0 Lenny,而且我在Debian上使用的netstat或tcpdump命令都不在FreeBSD上。
那么如何检测攻击者的IP地址,以防止这个人在防火墙中?
攻击者也经常使用欺骗性的地址。 可能你正在寻找的是sockstat。
还有accf内核模块,它可以帮助你取决于你的应用程序。
我也build议使用pf。 你可以按照以下方式构build一些东西:
table <bruteforce> persist pass in proto tcp from any to any port ssh flags S/SA keep state \ (source-track rule, max-src-conn-rate 2/10, overload <bruteforce> flush global) block drop in quick from <bruteforce> to any block out quick from any to <bruteforce>
有状态跟踪将是你的朋友
根据定义/devise… DDoS不是来自单个IP地址。 DDoS =分布式拒绝服务。 总之…一个大型的僵尸networking通常用来攻击一个单一的目标,由一个可能在世界任何地方的单个攻击者控制。 不幸的是,简单地阻止攻击者的机器人的IP不会解决你的头痛。 在很多情况下,您的“小型”互联网连接根本无法跟上这种攻击产生的大量stream量。 即使数据丢失,您的带宽仍然被消耗。 在这些情况下,当攻击者停止攻击时,头痛就会消失。 这样的攻击必须由您的ISP处理,以便做任何事情。
虽然不是你可能要找的答案,但我认为你所要做的将是难以pipe理的。
如果你的系统暴露在互联网上,它会受到攻击。 它可能来自今天的1.2.3.4,但是如果你阻止了这个地址,那么可能是2.3.4.5在第二天攻击你。 你将会得到一个庞大的无法pipe理的IP地址列表,这些列表可能会被dynamic分配。
为什么不使用默认的拒绝所有规则,而是将你真正想要暴露给互联网的好IP地址和服务列入白名单,而不是将“坏”IP地址列入黑名单?