我正在研究一個場景,我需要每 7 天更改一次 Ubuntu 伺服器密碼並進行自動登入。
我嘗試解決問題:使用密碼建立使用者的命令:
useradd -p $(openssl passwd -1 "krspassword") krs
比使用cron
每 7 天執行一次
但沒有用
請幫忙。
答案1
useradd
命令不會更改密碼,它創造用戶,如果該用戶已經存在,則失敗。如果您想更改現有使用者的密碼,請使用usermod
:
usermod -p $(openssl passwd -1 "krspassword") krs
這只會成功現存的使用者並因不存在而失敗。
為了完整起見,「建立或更新」腳本可能如下所示:
PW=$(openssl passwd -1 "krspassword"); if ! usermod -p ${PW} krs > /dev/null 2>&1; then useradd -p ${PW} krs >/dev/null 2>&1; fi
它嘗試更改密碼,如果沒有這樣的用戶,它會創建它。
請注意,-1
(MD5) 加密已過時。最好使用-5
(SHA256)或-6
(SHA512)。