授予用户权限 rm 无需密码或 sudo

Con*_*ack 5 permissions sudo rm

我试图让ubuntu我机器上的用户能够访问rm文件夹和文件(主要在/www/文件夹中),而无需调用密码或使用sudo.

我一直在关注这篇文章,最终在我的sudoers文件中尝试了这个。

ubuntu ALL = (ALL) NOPASSWD: /bin/rm
Run Code Online (Sandbox Code Playgroud)

不幸的是,这并不能解决问题。

Cal*_*leb 11

首先,您应该首先考虑为什么这不起作用。如果您不明白为什么他们作为不同的用户拥有,那么您很可能会通过尝试绕过限制来破坏某些内容。这样做很可能会导致您面临安全问题。

此外, sudo 是许多事情的正确方法,但是如果您在没有密码的情况下设置它,那么从安全的角度来看,这又表明您做错了。不要认为因为它是“您的”机器并且“您是唯一使用它的人”,因此您无需担心这些事情。尤其是如果您正在运行像 HTTP 服务器这样的服务,那么所提供的文件由与您通常在系统上使用的用户不同的用户拥有是有原因的!

除了所有警告之外,正确的解决方法是使用正常的文件系统权限级别授予您的 ubuntu 用户操作文件的权限,而无需更改为其他用户或升级到 root 权限级别。通过将 ubuntu 用户添加到拥有 /www 的组,这可能是最简单的。

# Find out what group owns /www
stat -c %G /www

# Add the ubuntu user to that group
adduser ubuntu <group_that_owns_www>
Run Code Online (Sandbox Code Playgroud)

现在假设您的文件具有组和所有者权限(即664文件和775目录的或类似的权限),您应该可以进行正常的文件操作,而无需特殊的 sudo 干预。

注意:将用户添加到组后,您必须再次实际登录,以便系统将您识别为新组的一部分。