如何让用户更改 iptables 规则?

如何让用户更改 iptables 规则?

我目前正在开发一个可以在多个服务器中自动运行命令的应用程序。

如果我更改服务配置,则需要重新启动(或重新加载)它,因此某些命令需要 root 权限。为了使其正常工作,我已将用户密码加密并保存在文本文件中,以便在 sudo 命令期间使用它。我相信这是一个重大威胁,但我也不想让应用程序以 root 权限运行。

有任何想法吗?

答案1

您可以限制用户可以通过以下方式运行哪些命令须藤。此外,您还可以提供禁止密码选择sudoers该用户上下文中的文件,而不是使用加密密码“功能”。

下面是一个允许非特权用户重新启动的示例iptables服务:

geewid  ALL = (root) NOPASSWD: /sbin/service iptables restart, /sbin/service iptables reload

命令列表以逗号分隔...

您还可以使用命令别名特征:

Cmnd_Alias FOOBAR = /sbin/service iptables restart, /sbin/service iptables reload
geewid  ALL = (root) NOPASSWD: FOOBAR

相关内容