未经本人许可严禁转载此插件/使用其代码
听说有人把这个插件放到淘宝高价出售,感谢您让我明白了什么叫无耻
介绍:
此插件可以 90% 抵御假人压测和 ?% 抵御MOTD压测。
不知道具体能抵御多少的MOTD压测,因为测试的时候无论我怎么打都没反应,不管装不装这个插件都一样。。难道是1.8已经修复了这个漏洞?
不过假人压测还是没问题滴~图:安装了GFW并且配置为默认的情况下。
在开始压测时CPU瞬间飙到100%,然后被插件拦截,之后又恢复正常。
如果不装这个插件,那CPU就保持在90%~100%,基本上算炸了。
原理:
使用ProtocolLib检测MOTD请求包和玩家进入服务器数据包,如果超出设置的频率就将此IP加入黑名单,指定的时间后解除。
教程&命令&配置文件:
其实这个拦截什么的都是全自动的,不需要人来管。
命令
/firewall reload 重载配置文件
/firewall list 查看屏蔽黑名单列表中的IP
/firewall remove [IP] 从黑名单中移除指定的IP地址
/firewall clear 清空屏蔽黑名单
/firewall whitelist <add/remove/clear> [IP] 白名单管理,子命令相信无需解释用途
以上命令全部需要OP权限
配置文件
- # 每10秒钟限制一个IP能发送MOTD请求数,超过这个数则判定为MOTD压测,加入黑名单(防MOTD压测)
- pingPacketIn10SecPerIP: 20
- # 每10秒钟限制一个IP的玩家能加入服务器多少次,超过这个数则判定为加入压测,加入黑名单(防假人压测)
- joinRequestIn10SecPerIP: 5
- # 当一个IP发送过多的MOTD请求后,屏蔽多少秒
- banTimeOnOverclockingPing: 20
- # 当一个IP请求加入服务器次数过多后,屏蔽多少秒
- banTimeOnOverclockingJoin: 30
- # 当检测到任何类型的压测时是否通知后台
- warningConsole: true
- # 当检测到任何类型的压测时是否通知在线的OP
- warningOPs: true
- # 白名单列表,建议不要手动编辑,而使用添加白名单命令
- whitelist: []
哦对了还有,插件拦截到压测的时候会将信息储存到 插件配置文件夹下的 logs.txt 中。
下载:
更新日志:
- 1.0 忘记时间
忘记内容 - 2.0 忘记时间
忘记内容(逃 - 3.0 2016/4/15
增加白名单
优化了防御机制
现在实际上会消耗更少资源,理论上可以防御更多的压测器
其实应该还有更多改进的,但是由于这版本去年就做好了,一直没发布(懒癌晚期),所以忘记了...(别打我 - 4.0 2016/4/16
把类翻了个遍,能优化的地方都优化到了。移除了enablePing选项因为某某原因。 - 4.1 2016/4/20
降级到ProtocolLib3.4.0 - 5.0 2016/8/13
修复某严重bug——惊喜的发现3.0的“消耗更少资源,理论上可以防御更多的压测器”实际上是“消耗更少资源,可以拦截更少的压测器”
所以现在应该没法通过只进行一次握手的办法绕过了。。希望如此。
优化。
注意!此插件需要前置ProtocolLib否则无法加载
[ProtocolLib 3.4.0] 适用于 1.7 服务器
[ProtocolLib 3.6.5] 适用于 1.8 服务器
[ProtocolLib 4.0.2] 适用于 1.8,1.9,1.10 服务器
不要在BC上用,以后(可能)会研发BC专版