我正在对我的 CentOS 机器进行 Tiger 安全审核,以确保服务器适合在线,并且尽可能接近。
nobody
我注意到有关用户拥有/
主目录的警告。可以这么说,我只是不知道它应该“驻留在”哪个目录。那么我该把这个家伙放在哪里呢?ncsd
现在我们就开始吧?
我想真正的问题是:是什么nobody
和ncsd
目的?将根目录设置为主目录会给这些用户带来哪些安全风险?在最佳环境中,他们的主目录在哪里?
答案1
[编辑]:我误解了这个问题。我会在这里写一个更合适的答案。
我不知道 Tiger Security,但我同意用户 nobody 是不怀好意的不主目录,不就在任何子目录之上,并且意味着真正拥有不根本不使用 shell(并且永远不要正确执行“登录”)。
但实际设置(在/etc/passwd
)对于不同的 Linux 发行版、BSD 和 *unix 是不同的。
我使用这个命令检查:
$ grep nobody /etc/passwd
在 RedHat 5.2(与 Centos 相同)上,我发现:
nobody:x:99:99:Nobody:/:/sbin/nologin
所以可能 '/' 这是 RedHat/Centos 的标准。
我检查了 Ubuntu 10.04:
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
(并且“/不存在”不存在)
在 Mac OSX 10.4 Tiger(BSD 衍生版本)上:
nobody:*:-2:-2:Unprivileged User:/var/empty:/usr/bin/false
(并且“/var/empty”存在并且为空)
我的猜测是 Tiger Security 不喜欢 RedHat/CentOS 上的标准设置。您可以安全地忽略此警告,或者可以将/etc/passwd
设置nobody
的 home 编辑为空或不存在的目录,以满足 Tiger Security 测试。