我已经阅读了终端中 iptables 的手册页,但它的语法很复杂,而且我不完全理解如何使用诸如:用户、用户 ID、UUID 等选项。
假设我的用户名是 foobar,我想阻止应用程序连接到任何类型的网络。我该怎么做呢?
答案1
您可以阻止用户的所有流量阻止用户使用owner
iptables 模块。
iptables -I INPUT -m owner --uid-owner BLOCKUSER -j REJECT
iptables -I OUTPUT -m owner --uid-owner BLOCKUSER -j REJECT
您也可以使用DROP
目标来代替,REJECT
但这只会延长由于超时而导致的延迟(请参阅这里以进行更多讨论)。
允许访问也可能是方便/必要的环回设备:
iptables -I INPUT -m owner --uid-owner BLOCKUSER ! -i lo -j REJECT
iptables -I OUTPUT -m owner --uid-owner BLOCKUSER ! -o lo -j REJECT
关于您的问题:
- 用户是您用于登录和输出
whoami
命令的用户名。 - 用户识别码是数字用户ID(大多数时候你可以简单地使用用户名而不是UID,你可以用命令显示它
id
)。 - 通用唯一标识符是一个通用唯一标识符并且不直接在 iptables 中使用。 (
--uuid-owner
是一个错字)