Users
添加沒有密碼但未禁用的新使用者
我需要添加只能通過 SSH 使用的新使用者。添加使用者時,它們會以驚嘆號 (
!
) 而不是星號 (*
) 添加到影子文件中,因此它們被“禁用”並且 sshd 不允許使用它們。有沒有辦法添加預設啟用的沒有密碼的使用者?
我試過使用busybox的adduser命令,它用
!
. 同樣,Gentoo 的預設 useradd 命令會添加一個!
.
看起來我可以指定加密密碼來添加使用者
useradd -p '*' testuser
它以前不起作用,因為我忘記了當我缺少單引號時外殼試圖擴展星號。
看起來我也可以使用
usermod -p '*' testuser
在現有使用者上也將密碼設置為星號。
在 alpine 和其他基於 busybox 的發行版中
adduser
,您可以使用不保留的隨機密碼創建一個帳戶。通過從生成密碼
/dev/urandom
並將其轉換為文本來執行此操作base64
,然後將其回顯兩次,將其傳送到 adduser 命令(不帶-D
標誌)中,以便在使用者創建期間輸入並確認密碼。pw="$(head -c 20 /dev/urandom | base64 | head -c 10)" ( echo "$pw"; echo "$pw" ) | adduser foo
另一種選擇是在使用者創建後用文件中的
!
a替換。*``/etc/shadow
adduser -D foo sed -i -e "s/^foo:!:/foo:*:/" /etc/shadow