我有几个系统用户没有设置密码、禁用登录并且没有主目录。它们仅用于为几个网站运行 FastCGI 进程。
我想避免将敏感数据硬编码到源代码中,例如密码,并希望使用环境变量,因此问题是如何为没有主目录且没有登录能力的系统用户设置环境变量。
通常我只是将它们放在 ~/.bashrc 中,但显然这是行不通的。我也不能将它们放在 /etc/bashrc 中,因为这意味着所有用户都会看到敏感信息。
有人有任何建议吗?如果这有什么不同的话,这是在 Ubuntu Server 12.04 LTS 上。
编辑:根据下面的评论,我使用 Nginx 作为 HTTP 服务器。
答案1
您可以添加一个文件来/etc/profile.d/
设置基于$UID
.如果您想根据组进行更多微调,请参阅man id
。
if [ "$(id -u)" -eq 666 ]; then
...
fi
答案2
chmod +a "username deny read" filename