
有趣的是,在我安裝了 nginx 的 Ubuntu 衍生品上apt
,www-data
使用者有一個 shell:
$ cat /etc/passwd
www-data:x:33:33:www-data:/var/www:/bin/sh
這不應該設定為類似的嗎/bin/false
?即使使用者無法登錄,但是預設為系統使用者提供這樣的shell不是很危險嗎?
答案1
好吧/bin/false
(或者/bin/true
如果你是一個積極的人)是一個真正的外殼 - 它只是不是一個互動的shell :-) 在某些系統上也有/sbin/nologin
相同的用途。
至於您的 Apache 使用者是否需要互動式 shell(類似bash
),其他人所說的答案是「通常不需要」。
將 Apache 使用者的 shell 設定為非互動式的通常是良好的安全實務(實際上,所有不需要互動登入的服務使用者都應該將其 shell 設定為非互動式的)。
參觀像您這樣的現有環境,嘗試一下,看看是否有任何問題。
如果沒有任何問題,從現在開始使用非互動式 shell。
如果東西壞了嘗試修復它沒有恢復互動式 shell :-)