使用 sudoers 允许非特权用户重新启动 apache

使用 sudoers 允许非特权用户重新启动 apache

我们有生产 CentOS 服务器,以 root 身份运行 apache,以允许低端口号(80 和 443)。

我们希望非 root 用户能够以安全的方式重新启动 apache。

将这样的内容添加到 sudoers 文件中是否存在任何安全隐患......

username    ALL=NOPASSWD:/usr/bin/service apache2 reload

具体来说,我想知道用户是否有任何方法可以提升其权限,或者以某种方式以 root 身份运行其他程序。

答案1

假设您希望允许属于 users2 组的用户进行一些特权控制,apache但不授予他们 root 权限。

添加/etc/sudoers

%users2 keep ALL=NOPASSWD: /sbin/service httpd,/etc/init.d/httpd,/usr/sbin/apache2ctl

如果你只是想让他们重新启动,apache那就是:

%users2 ALL=NOPASSWD: /sbin/service httpd restart,/etc/init.d/httpd restart,/usr/sbin/apache2ctl restart

用户将能够查看允许他们使用哪些命令sudo

sudo -l

要重新启动 Apache,他们必须准确地拼写出允许运行该命令的命令,例如:

sudo /sbin/service httpd restart

出于安全原因,建议在 sudoers 文件中定义命令的完整路径。

相关内容