OpenWrt | 使用 nftables 规则禁用小明投影仪内置 DoT 服务的流量

上篇文章详细介绍了通过抓包分析的过程,发现小明投影仪因为内置了 DoT 服务,通过阿里云的 DNS 服务去解析域名,从而导致无法解析本地域名,而无法使用域名连接 SMB 服务,并介绍如何通过 OpenWrt 的防火墙配置解决此问题:https://blog.csdn.net/TeleostNaCl/article/details/156135648

解决方案是通过 OpenWrt 防火墙,将小明投影仪的 DoT 流量拦截即可 。

但是,在 OpenWrt 防火墙是在 forward 链上进行拦截的,如果设备上有其他影响防火墙的插件,会导致以上防火墙规则不生效。因此本文在前文的基础上,补充使用 nftables 规则禁用小明投影仪内置 DoT 服务的流量。

首先,我们可以使用以下命令验证 nftables 是否可以生效。

shell 复制代码
# 1. 创建 table
nft add table inet filter

# 2. 创建 chain
nft add chain inet filter reject_xiaoming_dot { type filter hook prerouting priority -300 \; }

# 3. 针对 TCP 853 的 DoT 拒绝(MAC 匹配)
nft add rule inet filter reject_xiaoming_dot ether saddr ${mac地址} tcp dport 853 reject with tcp reset

验证通过之后,我们可以在 /etc/nftables.d 编写自动应用的 nft 规则文件 10-reject-xiaoming-dot.nft,内容如下:

shell 复制代码
chain reject_xiaoming_dot {
    type filter hook prerouting priority -300; policy accept;

    ether saddr ${mac地址} tcp dport 853 reject with tcp reset
}

我们可以在 luci > 状态 > 防火墙 看到我们新增的一条规则,其在路由最早的 prerouting,以便及时的被拦截。

相关推荐
青绿蓝LCA低碳研究院5 小时前
FSLCI首次在印度举办会议,我们需要学习什么? · 青绿蓝
经验分享
sbjdhjd8 小时前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
z775088548 小时前
冷链仓储的数据断链怎么解?感知、平台与对接的技术拆解
经验分享
个 人 练 习 生9 小时前
C++ string 类模拟实现:从底层理解字符串(上)
开发语言·c++·经验分享·学习·程序人生
零基础1239 小时前
FinalShell 使用教程:从安装到高效运维
运维·经验分享·笔记·finalshell
上海广测检测科技有限公司10 小时前
电脑整机3m堆码测试要点解析:包装抗压判定与跌落后功能验证
经验分享·电脑
我要 调查网11 小时前
市场调查公司可以做哪些项目?
经验分享
知产xiao_xin12 小时前
商标权的内容和限制
经验分享·笔记·知识产权
波力海苔夹心脆67513 小时前
C# 视觉检测实战:PLC 按钮触发 VisionPro 检测,OK 亮灯 / NG 灭灯(西门子 PLC,含界面显示与图片存档)
开发语言·经验分享·c#·自动化·视觉检测·.net
2601_9672127214 小时前
电源轨道系统技术实力评估维度与选型技术框架
大数据·经验分享