我的无头 Ubuntu 服务器上的“无人”用户是否应该拥有 shell 访问权限?

con*_*fin 5 security linux bash users

我在一些论坛等上阅读了关于此的相互矛盾的内容。当我输入以下行时:

grep nobody /etc/passwd
Run Code Online (Sandbox Code Playgroud)

我得到以下输出

nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
Run Code Online (Sandbox Code Playgroud)

应该没有人有 shell 访问权限吗?你能不能让你的答案合格。

谢谢

car*_*son 6

nobody 用户不应该需要shell,但是您会发现更改它可能会破坏 Ubuntu 上的某些内容。您始终可以通过将其更改为 nologin 来试一试,看看是否有任何问题。可能还有其他不应该有 shell 的系统用户,请参阅您的发行版不安全:Ubuntu。没有人不应该拥有 shell 的主要原因是许多面向外部的程序(如 httpd)以无人身份运行,如果有人可以破坏帐户,它会为您的系统提供立足点。将它设置为 nologin 会增加另一个障碍,尽管它可能不是什么障碍。