nobody 的内网保护配置 (ufw)

利用 ufw 防火墙来禁止 nobody 访问内网信息,防止不可信应用穿透内网(或者,你懂的原因)。

安装 + 基本 ufw 配置我这里就跳过了,直接说如何更改吧。

首先编辑 /etc/ufw/before.rules 对 IPv4 进行配置:

# ...
# End required lines

-A ufw-before-output -o lo -p udp -m udp --dport 53 -j ACCEPT

-A ufw-before-output -o lo -m owner --uid-owner nobody -j REJECT
-A ufw-before-output -d 10.0.0.0/8 -m owner --uid-owner nobody -j REJECT
-A ufw-before-output -d 172.16.0.0/12 -m owner --uid-owner nobody -j REJECT
-A ufw-before-output -d 192.168.0.0/16 -m owner --uid-owner nobody -j REJECT

# ...
# allow all on loopback

中间的那几行就是配置了。首先允许访问本地的 DNS 服务器避免域名解析失败,然后禁止访问预留的私有 IP 段。

IPv6 的配置也差不多,编辑 /etc/ufw/before6.rules

# ...
# End required lines

-A ufw6-before-output -o lo -p udp -m udp --dport 53 -j ACCEPT

-A ufw6-before-output -o lo -m owner --uid-owner nobody -j REJECT
-A ufw6-before-output -d fe80::/10 -m owner --uid-owner nobody -j REJECT

# allow all on loopback
# ...

编辑后保存,执行 ufw reload 重载规则生效。

Jixun

Jixun

学习与游戏的旅途,各类杂谈。