如何建立沒有密碼的使用者?

如何建立沒有密碼的使用者?

在 os X 中,可以有沒有密碼的使用者。如果您檢查它們,dscl其密碼顯示為*.這用於系統用戶,例如 等資料庫的用戶mysqlpgsqlsudo

刪除這樣的用戶後嘗試了一些事情,我想重新創建它,但不能。我可以設法獲得一個密碼為空的用戶,並且可以將密碼設為*。但沒有一個具有與上面相同的效果,因為用戶出現在我的登入畫面上。

如何創建這樣的使用者?

答案1

您可以passwd --delete <username>在建立使用者後運行adduser。之後,您無需輸入密碼即可登入。

答案2

您可以使用,這將使用 an而不是 來usermod停用密碼。!*

usermod -L <username>

從 usermod 的手冊頁:

-L, --lock Lock a user's password. This puts a '!' in front of the encrypted password, effectively disabling the password.

答案3

例如, /etc/passwd 中主目錄為 /dev/null 且 shell 為 /sbin/nologin 的使用者可用於 sudo 指令,但實際上無法登入;

從我的/etc/passwd

tcpdump:x:104:441:added by portage for tcpdump:/dev/null:/sbin/nologin

我記得這也會使它從 XDM 登入畫面上消失,但我不再使用 XDM,所以這是一個猜測:-)

答案4

我不能確定 OSX,但在 FreeBSD 上你可以使用:

pw add user mymuser -g mygroup -s /nonexistent -h -

-傳遞給該-h選項的值告訴pw將 master.passwd 中的密碼欄位設為*,從而建立一個無登入帳戶。設定 shell 並不是絕對必要的,但可以避免從 /etc/pw.conf 進行 shell 檢查。

相關內容