页面类型
发布状态
发布日期
文章地址
内容摘要
文章标签
文章分类
icon代码
密码
分享一个自己写来管理firewall防火墙的脚本,主要通过抓取几个IP黑名单的网站源并列入IPSet规则进行限制,通过计划任务定期执行脚本更新,能一定程度上预防端口扫描和隔绝网络威胁等恶意行为。
注意事项
写这个脚本的时候有一段时间了,那个时候技术水平有限,脚本不是很严谨,但功能不受影响,目前也是一直用到了现在没有出过任何问题,主要注意一些参数的设定就可以了,有空随缘再优化完善咯。
1、仅适用于 Linux Debian 系统,但仅是考虑系统环境不一致看得懂的话改改也不难;
2、使用前先确保系统安装好了 iptables 与 ipset ;
3、程序通过两个脚本实现,BlackIP.sh 用于更新 ipset ,iptables.sh 用于更新iptables ;
4、第一次使用需要先运行 BlackIP.sh ;
5、如果安装了 Docker 需要删除在 BlackIP.sh 脚本最末端的注释。
配置说明
iptables.sh 变量
用于更新 iptables 规则,可添加自定义规则,运行一次后会在 if-pre-up.d 生成连接文件
BlackIP.sh 变量
用于更新 ipset 规则,由 Crontab 定时调用使用
脚本源
iptables.sh
示例文件路径:/root/shell/iptables.sh
脚本运行方式:第一次运行,每次更新脚本内容后手动运行
脚本运行命令:/root/shell/iptables.sh
BlackIP.sh
示例脚本路径:/root/shell/BlackIP.sh
脚本运行方式:添加至 crontab 定期运行更新
脚本运行命令:/bin/nohup /root/shell/BlackIP.sh > /tmp/IPSet_Shell_Cron.log 2>&1 &