我刚刚读到如何在 Ubuntu 中禁用用户的 shell 访问在这篇文章中出于安全原因。禁用/etc/passwd
除root:x:0:0
和另一个特定用户之外的所有用户的 shell 访问是否安全tom:x:1000:1000
?
例如,如果我为操作系统安装时附带的默认用户禁用 shell,例如daemon
、bin
、sys
、sync
、games
、man
、lp
、mail
、news
和uucp
(以及此处未列出的许多其他用户),这可能会导致任何问题吗?
答案1
我不知道它是否安全,因为可能有程序需要它,但我确实知道这是没有必要的。这些用户已经通过没有密码的方式禁用了登录访问权限,因此无需更改 shell。
答案2
我猜你指的是登录 shell。它已经在不需要的地方被禁用,你可以看到它类似于/usr/sbin/nologin
或/bin/false
只有 root 拥有 shell/bin/bash
或我们自己创建的一些其他用户帐户,以便进入系统。
答案3
原因很简单。
这些用户喜欢daemon
、、、、、、、、、、、并且不是交互式用户。bin
它们用于某些特殊用途,例如运行守护程序(例如 Web 服务器),而不是用于运行其他程序。sys
sync
games
man
lp
mail
news
uucp
所以基本上他们不应该有交互式外壳。