用于防止服务器多种服务被爆破
包括:
1 ssh连接错误次数
2 sftp连接错误次数
3 scp连接错误次数
4 3x-ui面板输入密码错误次数
5 mysql输入密码错误次数
6 redis输入密码错误次数
目前的使用系统是alpine linux和乌班图
1 为了尽可能做到高性能,本项目做到了循环体内0临时变量(循环中所有变量均为复用
2 独创一种能同时判断IPV4格式点分十进制表示法以及IPV6的冒分十六进制表示法和零压缩表示法及其CIDR,且复杂度为O(1)的算法
3 独创一种O(1)清除封禁IP记录的算法
4 实现了fail2ban中的可以单独配置每一项的封禁时间,检测时间,最大错误次数,是否开启检查,白名单IP,并且在封禁IP时有邮件自动发送提醒功能
5 实现了防止封禁IP日志过大的维护机制,确保项目永续运行
6 实现了根据封禁日志在程序重启后还原相关记录进程序内存中的功能
7实现了fail2ban中不具备的功能,那就是ssh或redis验证通过登录成功时有实时邮件提醒功能, 有效增强使用者对服务器安全的掌控,进行维护时只需要搜索邮件中有没有可疑ip登录记录即可
点击空白处退出提示
评论