阻止某些 uids 的传出连接(root、apache、nobody)

Ale*_*ber 8 firewall iptables centos centos5 centos6

在 CentOS 5 和 6 Linux 中使用 iptables - 您如何防止以rootapachenobody身份运行的进程启动传出连接?

在 CentOS 5 Linux 上,我尝试将这些行放入 /etc/sysconfig/iptables:

-A OUTPUT -m owner --uid-owner root -j DROP
-A OUTPUT -m owner --uid-owner apache -j DROP
-A OUTPUT -m owner --uid-owner nobody -j DROP
Run Code Online (Sandbox Code Playgroud)

但不幸的是得到错误:

# sudo service iptables restart
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]
iptables: Applying firewall rules: iptables-restore v1.4.7: owner: Bad value for "--uid-owner" option: "apache"
Error occurred at line: 27
Try `iptables-restore -h' or 'iptables-restore --help' for more information.
                                                           [FAILED]
Run Code Online (Sandbox Code Playgroud)

Goe*_*oez 8

尝试使用数字 UID 而不是名称。例如:

-A OUTPUT -m owner --uid-owner 400 -j DROP
Run Code Online (Sandbox Code Playgroud)

代替

-A OUTPUT -m owner --uid-owner apache -j DROP
Run Code Online (Sandbox Code Playgroud)

您可以通过键入找到 UID

id user
Run Code Online (Sandbox Code Playgroud)