Linuxでpasswdコマンドで、パスワードに関する操作を行います。
記事の目次
passwdコマンドのヘルプを表示する!
passwdコマンドのヘルプを表示して、使用方法を確認します。パスワード変更以外に、強制的に期限切れにしたり、ロックをかけたりすることができます。
# passwd --help Usage: passwd [OPTION...] <accountName> -k, --keep-tokens keep non-expired authentication tokens -d, --delete delete the password for the named account (root only); also removes password lock if any -l, --lock lock the password for the named account (root only) -u, --unlock unlock the password for the named account (root only) -e, --expire expire the password for the named account (root only) -f, --force force operation -x, --maximum=DAYS maximum password lifetime (root only) -n, --minimum=DAYS minimum password lifetime (root only) -w, --warning=DAYS number of days warning users receives before password expiration (root only) -i, --inactive=DAYS number of days after password expiration when an account becomes disabled (root only) -S, --status report password status on the named account (root only) --stdin read new tokens from stdin (root only) Help options: -?, --help Show this help message --usage Display brief usage message
対話的にパスワードを変更する!
対話的なコマンドラインのインターフェースで、パスワード変更を行います。システムに設定されたパスワードポリシーに合ったパスワードに変更する必要があります。rootユーザであれば、パスワードコマンドにユーザ名を指定することで、指定したユーザのパスワードを変更することができます。
# passwd Changing password for user root. New password: Retype new password: passwd: all authentication tokens updated successfully.
バッチ処理でパスワードを変更する!(passwd)
標準入力を使用して、コマンドラインでパスワードを変更することができます。
# echo "password" | passwd --stdin root
バッチ処理でパスワード変更を行う!(chpasswd)
バッチ処理などで一括でパスワード変更を行う場合は、「chpasswd」コマンドを使用します。以下は、コマンドライン1行の例ですが、ファイルに「ユーザ名:パスワード」の一覧を作成して、標準入力からchpasswdコマンドに読み込ませることで、一括でパスワード変更を行うことができます。パスワードポリシーは無視されることに注意しましょう。
# echo "root:password" | chpasswd
初期パスワードをコマンドで生成する!
強度の強い複雑なパスワードを考えるのが大変なことがあります。その場合、コマンドで自動で作成する方法があるので、以下の記事を参考にして作成します。
おわりに
「passwd」コマンドを使用して、パスワードに関する操作を各種行うことができますが、パスワード変更は対話的な操作になります。バッチ処理を行いたいときは、「chpasswd」コマンドを使用します。
関連記事
関連書籍(Amazon)