如何使用nftables阻断P2P/BitTorrent协议6881-6889端口输出流量?
使用nftables拒绝6881-6889端口的BitTorrent输出流量配置方案
基础规则配置
BitTorrent协议通常使用6881-6889端口的TCP和UDP传输,你可以通过nftables在filter表的output链中添加规则,拒绝这些端口的输出流量。
临时生效规则(重启后失效)
直接在终端执行以下命令:
- 拒绝TCP输出流量到6881-6889端口:
nft add rule ip filter output tcp dport 6881-6889 reject - 拒绝UDP输出流量到6881-6889端口:
nft add rule ip filter output udp dport 6881-6889 reject
永久生效规则(写入配置文件)
多数发行版的nftables配置文件位于/etc/nftables.conf,编辑该文件,在filter表的output链段添加规则:
table ip filter { chain output { type filter hook output priority 0; policy accept; # 拒绝BitTorrent相关端口的TCP输出 tcp dport 6881-6889 reject # 拒绝BitTorrent相关端口的UDP输出 udp dport 6881-6889 reject } }
保存文件后,重启nftables服务使规则生效:
systemctl restart nftables
进阶:针对性规则配置
如果需要规则仅对特定用户、IP或网络接口生效,可添加匹配条件:
- 针对特定IP(比如本地IP 192.168.1.100):
nft add rule ip filter output ip saddr 192.168.1.100 tcp dport 6881-6889 reject - 针对特定用户(通过UID,比如UID为1000的用户):
nft add rule ip filter output meta skuid 1000 tcp dport 6881-6889 reject - 针对特定网络接口(比如
eth0):nft add rule ip filter output oifname eth0 tcp dport 6881-6889 reject
验证规则状态
执行以下命令查看已生效的规则列表,确认添加的拒绝规则存在:
nft list ruleset
内容的提问来源于stack exchange,提问作者John
相关产品推荐
相关产品推荐

