防止 sudo 用户切换到另一个用户,而无需目标用户密码?

防止 sudo 用户切换到另一个用户,而无需目标用户密码?

抱歉,如果标题有歧义,但是我对 Ubuntu 还很陌生,但刚刚与一组全是 sudo 的“开发人员”一起设置了一个运行它的网络服务器。

目前,用户只能使用绑定到其帐户的密钥通过 SSH 登录。但 user1 可以简单地执行以下操作:

sudo su - user2

并以用户 2 的身份运行,无需密码。有没有办法强制执行与

su - user2 

这实际上需要用户 2 的密码?否则,跟踪每个用户的命令以查看谁做了什么有点毫无意义。

谢谢!

答案1

为了防止通过 切换用户sudo su -,您需要禁用 root 切换到su任何用户的能力。编辑/etc/pam.d/su并注释掉此行:

auth       sufficient pam_rootok.so 

正如上面的评论所说/etc/pam.d/su,这允许 rootsu无需密码。

或者,您可以将sudo使用限制为一组有限的命令,这些命令不包含并强制通过/su进行用户切换,并在中启用该选项。sudo -i -usudo -s -utargetpwsudoers

答案2

Sudo 权限只应授予那些可能需要管理机器本身的人。其他权限可以通过组和组权限进行管理。例如,将名为“developer1”的用户添加到 www-data 组:

sudo usermod -a -G www-data developer1

这会将“developer1”添加到 Apache 的 www-data 组。

sudo chgrp -R www-data /var/www

将确保 /var/www 中的所有文件和目录都属于“www-data”组。

sudo chmod -R g+w /var/www

将确保该组对 /var/www 中的所有文件具有写权限

http://www.cyberciti.biz/faq/ubuntu-add-user-to-group-www-data/

相关内容