
nftables-blacklist新手入门5分钟内快速部署恶意IP拦截系统【免费下载链接】nftables-blacklistA bash script to ban large numbers of IP addresses published in blacklists.项目地址: https://gitcode.com/gh_mirrors/ip/nftables-blacklist你是否担心服务器受到恶意IP攻击想要快速部署一个高效的安全防护系统吗今天我将为你介绍一个简单易用的解决方案——nftables-blacklist恶意IP拦截系统。这个工具可以帮助你在5分钟内轻松部署自动屏蔽全球恶意IP地址为你的服务器提供强大的第一道防线什么是nftables-blacklistnftables-blacklist是一个基于Bash脚本的自动化工具专门用于保护Linux服务器免受恶意IP地址的攻击。它通过自动下载公开的黑名单列表使用现代防火墙技术nftables来阻止这些IP访问你的服务器。无论是脚本小子、僵尸网络还是其他不受欢迎的流量都能被有效拦截。核心功能亮点 ✨自动更新定期从多个权威黑名单源获取最新的恶意IP列表智能合并自动合并重叠的IP范围优化防火墙规则双栈支持同时支持IPv4和IPv6地址拦截防误伤机制自动检测并白名单你的服务器IP避免自我封锁高性能处理轻松处理10万IP地址不影响服务器性能快速部署指南5分钟搞定第一步准备工作确保你的系统是Debian 10或Ubuntu 20.04其他支持nftables的Linux发行版也可用然后安装必要的工具sudo apt update sudo apt install curl iprange第二步下载安装脚本从官方仓库获取最新版本的脚本sudo curl -fsSL -o /usr/local/sbin/update-blacklist.sh \ https://raw.githubusercontent.com/trick77/nftables-blacklist/master/update-blacklist.sh sudo chmod x /usr/local/sbin/update-blacklist.sh第三步创建配置文件创建配置目录并下载默认配置文件sudo mkdir -p /etc/nftables-blacklist sudo curl -fsSL -o /etc/nftables-blacklist/nftables-blacklist.conf \ https://raw.githubusercontent.com/trick77/nftables-blacklist/master/nftables-blacklist.conf第四步运行首次更新执行初始黑名单更新系统将自动下载并应用防护规则sudo /usr/local/sbin/update-blacklist.sh /etc/nftables-blacklist/nftables-blacklist.conf就是这么简单你的服务器现在已经受到保护了✅配置优化技巧开启自动白名单功能为了避免误封自己的服务器IP强烈建议开启自动白名单功能。编辑配置文件/etc/nftables-blacklist/nftables-blacklist.conf# 找到这一行将no改为yes AUTO_WHITELISTyes自定义黑名单源你可以根据需要添加或删除黑名单源。配置文件中的BLACKLISTS数组包含了多个权威的黑名单源# 示例添加自定义黑名单 BLACKLISTS( https://www.spamhaus.org/drop/drop_v4.json # Spamhaus DROP列表 https://lists.blocklist.de/lists/all.txt # Blocklist.de全列表 file:///etc/nftables-blacklist/custom.list # 本地自定义列表 )手动添加白名单如果你的服务器有固定IP或需要保护特定IP段可以手动添加到白名单WHITELIST( 203.0.113.10 # 你的服务器IP 203.0.113.0/24 # 你的网络段 2001:db8::1 # IPv6地址 )自动化更新设置使用Systemd定时器为了让黑名单保持最新建议设置每日自动更新。创建Systemd服务文件sudo cat EOF /etc/systemd/system/nftables-blacklist-update.timer [Unit] Description每日更新nftables IP黑名单 [Timer] OnCalendar*-*-* 23:33:00 Persistenttrue [Install] WantedBytimers.target EOF sudo cat EOF /etc/systemd/system/nftables-blacklist-update.service [Unit] Description更新nftables IP黑名单 Afternetwork-online.target [Service] Typeoneshot ExecStart/usr/local/sbin/update-blacklist.sh --cron /etc/nftables-blacklist/nftables-blacklist.conf EOF启用定时器sudo systemctl daemon-reload sudo systemctl enable --now nftables-blacklist-update.timer查看定时器状态systemctl list-timers nftables-blacklist-update监控与验证检查拦截效果查看有多少恶意流量被成功拦截sudo nft list chain inet blacklist input输出示例chain input { type filter hook input priority -200; policy accept; ip saddr blacklist4 counter packets 1523 bytes 91380 drop comment IPv4黑名单 ip6 saddr blacklist6 counter packets 42 bytes 3360 drop comment IPv6黑名单 }验证IP是否被拦截检查特定IP是否在黑名单中# 检查IPv4地址 sudo nft get element inet blacklist blacklist4 { 1.2.3.4 } # 检查IPv6地址 sudo nft get element inet blacklist blacklist6 { 2001:db8::1 }高级功能探索测试模式干运行在正式应用前进行测试sudo update-blacklist.sh --dry-run /etc/nftables-blacklist/nftables-blacklist.conf容器网络保护如果你的服务器运行Docker或其他容器可以启用转发链保护# 在配置文件中设置 BLOCK_FORWARDyes性能优化处理大量IP地址时可能需要调整内核网络缓冲区# 创建优化配置 echo net.core.rmem_max 8388608 | sudo tee /etc/sysctl.d/99-nftables.conf echo net.core.rmem_default 8388608 | sudo tee -a /etc/sysctl.d/99-nftables.conf # 立即生效 sudo sysctl -p /etc/sysctl.d/99-nftables.conf故障排除指南常见问题解决nftables表不存在错误确保配置文件中FORCEyes脚本会自动创建必要的表和集合下载失败检查网络连接确认curl工具已安装可能需要调整超时设置规则未生效使用sudo nft list table inet blacklist检查规则确认nftables服务正在运行日志查看在cron模式下运行会生成结构化日志# 查看systemd日志 sudo journalctl -u nftables-blacklist-update.service安全最佳实践定期审查黑名单源建议每季度检查一次使用的黑名单源确保它们仍然可靠且适合你的使用场景。配置文件中的每个源都有不同的更新频率、范围和误报率。备份配置文件定期备份你的自定义配置sudo cp /etc/nftables-blacklist/nftables-blacklist.conf /etc/nftables-blacklist/nftables-blacklist.conf.backup监控系统性能虽然nftables-blacklist设计为轻量级但在处理大量IP时仍建议监控系统资源使用情况。从旧版本迁移如果你之前使用过iptables/ipset版本的blacklist迁移非常简单移除旧的iptables规则和ipset删除旧的脚本和配置按照本文指南安装新的nftables版本详细的迁移步骤可以参考项目中的 archive/README.md 文件。结语nftables-blacklist恶意IP拦截系统为Linux服务器管理员提供了一个简单、高效、自动化的安全解决方案。通过5分钟的快速部署你就能为服务器建立起强大的第一道防线自动拦截全球恶意IP地址。无论你是个人开发者还是企业运维人员这个工具都能帮助你✅节省时间自动化更新无需手动维护✅提高安全性基于多个权威黑名单源✅避免误伤智能白名单机制✅性能优异处理10万IP无压力现在就开始保护你的服务器吧️ 如果你在使用过程中遇到任何问题可以参考项目文档或社区讨论。记住安全防护是一个持续的过程定期更新和维护是关键注本文基于nftables-blacklist项目编写具体配置可能因系统环境而异。建议在生产环境部署前进行充分测试。【免费下载链接】nftables-blacklistA bash script to ban large numbers of IP addresses published in blacklists.项目地址: https://gitcode.com/gh_mirrors/ip/nftables-blacklist创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考