Я работаю над сценарием, в котором мне нужно менять пароль сервера Ubuntu каждые 7 дней и выполнять автоматический вход.
Я попытался решить проблему: команда для создания пользователя с паролем:
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).