nftables-blacklist配置全解析:从基础设置到高级自定义
nftables-blacklist配置全解析从基础设置到高级自定义【免费下载链接】nftables-blacklistA bash script to ban large numbers of IP addresses published in blacklists.项目地址: https://gitcode.com/gh_mirrors/ip/nftables-blacklistnftables-blacklist是一款基于Bash脚本的安全工具能够自动下载公共IP黑名单并通过nftables实现高效拦截保护Linux服务器免受脚本小子、僵尸网络和恶意流量的侵扰。该工具全面支持IPv4和IPv6协议具备CIDR聚合、内置白名单、定时更新和服务器IP自动检测等实用功能是服务器安全防护的得力助手。快速上手5分钟完成基础部署系统要求与依赖安装 nftables-blacklist对系统环境有以下要求Debian 10/Ubuntu 20.04或其他支持nftables的Linux发行版nftables防火墙iprange工具用于IP范围合并和白名单处理基础命令行工具curl、grep、sed、sort、wc通常已预装在Debian/Ubuntu系统中可通过以下命令安装所需依赖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 if [ -f /etc/nftables-blacklist/nftables-blacklist.conf ]; then echo Config already exists, skipping download else sudo curl -fsSL -o /etc/nftables-blacklist/nftables-blacklist.conf \ https://raw.githubusercontent.com/trick77/nftables-blacklist/master/nftables-blacklist.conf fi执行首次更新sudo /usr/local/sbin/update-blacklist.sh /etc/nftables-blacklist/nftables-blacklist.conf验证部署结果# 列出黑名单表 sudo nft list table inet blacklist # 查看IPv4集合内容 sudo nft list set inet blacklist blacklist4 # 查看IPv6集合内容 sudo nft list set inet blacklist blacklist6 # 检查拦截统计 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 blacklist ip6 saddr blacklist6 counter packets 42 bytes 3360 drop comment IPv6 blacklist }核心配置详解打造个性化防护策略配置文件结构与路径nftables-blacklist的主配置文件为nftables-blacklist.conf默认位于/etc/nftables-blacklist/目录下。该文件采用Bash语法主要包含以下配置区域文件路径定义行为控制开关黑名单源配置白名单设置高级参数覆盖必知关键配置项 设置项默认值描述ENABLE_IPV4yes是否拦截IPv4地址ENABLE_IPV6yes是否拦截IPv6地址FORCEyes自动创建nftables表和集合推荐保持默认AUTO_WHITELISTno自动检测并白名单服务器自身IP推荐设为yesBLOCK_FORWARDno是否同时拦截转发链流量如容器流量NFT_CHAIN_PRIORITY-200规则检查优先级值越低越优先CURL_CONNECT_TIMEOUT10黑名单服务器连接超时秒CURL_MAX_TIME30单个黑名单下载最大时间秒自定义黑名单源默认配置已包含多个高质量公共黑名单源你可以根据需求在BLACKLISTS数组中增删条目BLACKLISTS( # 本地自定义列表 file:///etc/nftables-blacklist/custom.list # 公共黑名单 https://www.spamhaus.org/drop/drop_v4.json https://lists.blocklist.de/lists/all.txt # 国家/地区屏蔽取消注释并修改国家代码 # https://raw.githubusercontent.com/ipverse/country-ip-blocks/master/country/ru/ipv4-aggregated.txt )小贴士使用IPverse可以查询ASN、IP所有者和网络范围帮助你选择需要屏蔽的国家或网络。白名单策略避免误拦截的终极指南手动白名单配置编辑配置文件中的WHITELIST数组添加需要保护的IP或CIDR范围WHITELIST( 203.0.113.10 # 单个服务器IP 203.0.113.0/24 # 整个网段 2001:db8::1 # IPv6地址 file:///etc/nftables-blacklist/extra.list # 外部白名单文件 )对于IPv4白名单中的CIDR范围会自动排除该范围内的所有IP而IPv6白名单目前仅支持精确匹配单个IP。外部白名单文件当需要管理大量白名单条目时推荐使用外部文件创建白名单文件/etc/nftables-blacklist/extra.list按行添加IP/CIDR支持#开头的注释# 办公网络 192.168.1.0/24 # VPN服务器 203.0.113.50 # IPv6地址 2001:db8::/32在配置文件中引用file:///etc/nftables-blacklist/extra.list自动检测服务器IP推荐启用自动白名单功能可避免因服务器IP出现在公共黑名单而导致的自拦截问题AUTO_WHITELISTyes该功能会自动检测本地网卡IP地址排除私有地址通过外部服务获取的公网IP使用o11.net和icanhazip.com作为数据源启用后你将在更新日志中看到自动白名单的IPAuto-detecting server IPs for whitelist... Whitelisted: 2001:db8:305:2100::1 Whitelisted: 203.0.113.10高级应用从定时更新到性能优化配置系统服务实现开机自启为确保黑名单在服务器重启后自动加载创建系统服务文件sudo cat EOF /etc/systemd/system/nftables-blacklist.service [Unit] Descriptionnftables IP blacklist Afternetwork.target [Service] Typeoneshot ExecStart/usr/local/sbin/update-blacklist.sh /etc/nftables-blacklist/nftables-blacklist.conf RemainAfterExityes [Install] WantedBymulti-user.target EOF启用服务sudo systemctl daemon-reload sudo systemctl enable --now nftables-blacklist.service设置定时自动更新 ⏰创建定时器配置实现黑名单每日自动更新sudo cat EOF /etc/systemd/system/nftables-blacklist-update.timer [Unit] DescriptionUpdate nftables IP blacklist daily [Timer] OnCalendar*-*-* 23:33:00 Persistenttrue RandomizedDelaySec14400 [Install] WantedBytimers.target EOF sudo cat EOF /etc/systemd/system/nftables-blacklist-update.service [Unit] DescriptionUpdate nftables IP blacklist Afternetwork-online.target Wantsnetwork-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最佳实践每日更新1-2次即可过于频繁可能导致被黑名单提供商封禁。处理大型IP集合10万条目当黑名单包含大量IP时可能会遇到消息过长或无缓冲空间错误可通过调整内核网络缓冲区解决# 创建sysctl配置文件 sudo cat EOF /etc/sysctl.d/99-nftables.conf net.core.rmem_max 8388608 net.core.rmem_default 8388608 EOF # 应用配置 sudo sysctl -p /etc/sysctl.d/99-nftables.conf测试模式与日志分析使用--dry-run参数测试配置而不实际应用规则update-blacklist.sh --dry-run /etc/nftables-blacklist/nftables-blacklist.conf对于定时任务使用--cron参数生成结构化日志update-blacklist.sh --cron /etc/nftables-blacklist/nftables-blacklist.conf查看拦截统计sudo nft list chain inet blacklist input故障排除与常见问题nftables table does not exist错误当出现此错误时确保配置文件中FORCEyes默认已设置脚本会自动创建所需的nftables表和集合。检查特定IP是否被拦截# 检查IPv4 sudo nft get element inet blacklist blacklist4 { 1.2.3.4 } # 检查IPv6 sudo nft get element inet blacklist blacklist6 { 2001:db8::1 }与现有防火墙规则的集成nftables-blacklist使用独立的inet blacklist表不会干扰现有防火墙规则。默认优先级-200确保黑名单规则在大多数其他规则之前检查如需调整可修改NFT_CHAIN_PRIORITY参数。转发流量未被拦截默认情况下黑名单仅作用于input链保护服务器自身。要同时保护转发流量如Docker容器需设置BLOCK_FORWARDyes迁移指南从ipset-blacklist升级如果你之前使用的是旧版ipset/iptables版本可按以下步骤迁移清理旧版本# 移除iptables规则和ipset iptables -D INPUT -m set --match-set blacklist src -j DROP ipset destroy blacklist # 移除旧定时任务 rm -f /etc/cron.d/update-blacklist # 移除旧脚本和配置 rm -f /usr/local/sbin/update-blacklist.sh rm -rI /etc/ipset-blacklist按照本文档的快速上手部分安装新版注意Debian Trixie及更新版本用户需确保使用nftables后端update-alternatives --set iptables /usr/sbin/iptables-nft update-alternatives --set ip6tables /usr/sbin/ip6tables-nft完全卸载指南如需彻底移除nftables-blacklist停止并禁用服务sudo systemctl disable --now nftables-blacklist-update.timer sudo systemctl disable --now nftables-blacklist.service删除nftables表sudo nft delete table inet blacklist移除系统文件sudo rm -f /etc/systemd/system/nftables-blacklist.service sudo rm -f /etc/systemd/system/nftables-blacklist-update.service sudo rm -f /etc/systemd/system/nftables-blacklist-update.timer sudo systemctl daemon-reload sudo rm -f /usr/local/sbin/update-blacklist.sh sudo rm -rI /etc/nftables-blacklist移除内核参数调整如之前设置过sudo rm -f /etc/sysctl.d/99-nftables.conf sudo sysctl --system完成以上步骤后系统将恢复到安装前状态所有被拦截的流量将恢复正常。【免费下载链接】nftables-blacklistA bash script to ban large numbers of IP addresses published in blacklists.项目地址: https://gitcode.com/gh_mirrors/ip/nftables-blacklist创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

5分钟上手vue-countdown:Vue 3倒计时组件完整教程 [特殊字符]

5分钟上手vue-countdown:Vue 3倒计时组件完整教程 [特殊字符]

5分钟上手vue-countdown:Vue 3倒计时组件完整教程 🚀 【免费下载链接】vue-countdown Countdown component for Vue.js. 项目地址: https://gitcode.com/gh_mirrors/vu/vue-countdown 想要为你的Vue 3应用添加专业级的倒计时功能吗?vu…

2026/7/28 1:16:31 阅读更多 →
plugin-git核心功能揭秘:为什么它是Fish Shell用户的必备Git插件?

plugin-git核心功能揭秘:为什么它是Fish Shell用户的必备Git插件?

plugin-git核心功能揭秘:为什么它是Fish Shell用户的必备Git插件? 【免费下载链接】plugin-git Git aliases plugin for the Fish shell (similar to oh-my-zsh git) 项目地址: https://gitcode.com/gh_mirrors/pl/plugin-git plugin-git是一款专…

2026/7/25 8:48:27 阅读更多 →
Next.js 13核心升级与性能优化实践

Next.js 13核心升级与性能优化实践

1. Next.js 13 核心升级解析 Next.js 13 作为 React 生态中最受关注的全栈框架升级,带来了多项突破性改进。这次更新不是简单的增量优化,而是从构建工具到渲染架构的全方位革新。作为长期使用 Next.js 的开发老手,我认为最值得关注的三大核心…

2026/7/28 12:15:03 阅读更多 →

最新新闻

如何在5分钟内构建完全私有的搜索引擎:SearXNG Docker终极指南

如何在5分钟内构建完全私有的搜索引擎:SearXNG Docker终极指南

如何在5分钟内构建完全私有的搜索引擎:SearXNG Docker终极指南 【免费下载链接】searxng-docker The docker-compose files for setting up a SearXNG instance with docker. 项目地址: https://gitcode.com/gh_mirrors/se/searxng-docker 在数字监控无处不在…

2026/7/28 17:49:01 阅读更多 →
Java 什么叫做实例化

Java 什么叫做实例化

明白了类和对象的关系就知道什么叫实例化了。 类就以一类事物的描述。反应在java中就是类的定义,如: class A {int i; }这里A就是一个类 而对象就是一个类的具体的某一个,入 A a1 new A(); A a2 new A(); a1 a2都是对象 而创建对象的过程就叫实例化 因…

2026/7/28 17:49:01 阅读更多 →
如何使技能快速精进

如何使技能快速精进

这里说的快速成长不是指人生理上的growth,而是指人对于一个技能的学习如何快速精进。我简单概括就是,高完成度的呈递增式的完成每一次的练习。首先技能是需要经过学习与练习两个阶段来达到精通的。学习我不予多谈,它很重要,但不知…

2026/7/28 17:49:01 阅读更多 →
企业应用集成

企业应用集成

一、项目概述与个人工作我曾参与某中型制造企业的信息化系统集成项目。该企业经过多年信息化建设,先后引入了ERP(企业资源计划)系统、CRM(客户关系管理)系统、SCM(供应链管理)系统以及OA&#x…

2026/7/28 17:49:01 阅读更多 →
刚入职第一天,我就想跑路!

刚入职第一天,我就想跑路!

关注 霍格沃兹软件测试开发 公众号,回复「资料」, 领取人工智能测试开发技术合集 试用期六个月,每个月都要考核。 第一个月,要熟悉业务、搭建环境、学习开发语言、分析接口链路、阅读项目代码、定位代码级问题,还要画出系统架构图…

2026/7/28 17:49:00 阅读更多 →
keras 全连接手写识别  coursera week2

keras 全连接手写识别 coursera week2

Exercise 2 In the course you learned how to do classificaiton using Fashion MNIST, a data set containing items of clothing. There’s another, similar dataset called MNIST which has items of handwriting – the digits 0 through 9. Write an MNIST classifier t…

2026/7/28 17:48:00 阅读更多 →

日新闻

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 你是否也曾为官方Om…

2026/7/28 0:00:43 阅读更多 →
RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

做 RAG 的人应该都踩过这个致命的坑:把几百页的财报、法规、技术手册扔给向量库,问一个具体问题,搜出来的全是沾边但没用的内容 —— 关键信息要么被硬切块拆碎了,要么藏在几十条结果的最下面。语义相似≠真正相关,这个…

2026/7/28 0:00:43 阅读更多 →
抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

2026年做短视频运营,从抖音上扒文案早就不是偷偷抄笔记的事了。我刚开始做内容的时候,每天刷半小时抖音,手动把爆款视频的口播敲进备忘录,一条2分钟的视频得花十来分钟,碰到语速快的还要反复回听。后来试了一圈工具&am…

2026/7/28 0:00:43 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/28 12:04:22 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/28 8:29:16 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/28 5:03:42 阅读更多 →

月新闻