はじめに
passwd
, chage
コマンドで期限外すのどうやるんだっけ?
とかいう時のためのメモ
passwd
コマンドとは
passwd
コマンドは、ユーザーのパスワード等を変更するために使用される。
chage
コマンドとは
chage
コマンドは、ユーザーのパスワード有効期限ポリシーを管理するために使用される。
使用例
自分のパスワードを変更する
passwd
別のユーザーのパスワードを変更する
sudo passwd [ユーザー名]
パスワードの有効期限等を確認する
sudo passwd -S [ユーザー名]
passws -S
の実例
$ sudo passwd -S dev
dev P 12/15/2023 0 99999 7 -1
- ユーザー名: dev
- パスワードステータス: P
P はパスワードが設定されていることを示している("Password")。他の設定される値としては、L(ロックされている)、NP(パスワードなし)などがある。 - 最後のパスワード変更日: 12/15/2023
この日付は、最後にパスワードが変更された日。 - パスワードの最小年齢(日数): 0
パスワードを変更した後、再び変更するまでに待つ必要がある最小日数。0は制限なしを意味する。 - パスワードの最大年齢(日数): 99999
ユーザーがパスワードを変更する必要があるまでの最大日数。99999は実質的に無制限を意味する。 - パスワード変更前の警告期間(日数): 7
パスワードの有効期限が切れる前に警告が表示される日数です。 - アカウントの無効化までの期間(日数): -1
パスワードが期限切れになった後、アカウントが無効になるまでの日数。-1はアカウントが自動的に無効にならないことを意味する。
この出力は、dev ユーザーのパスワードが有効であり、特に厳格なパスワードポリシーが設定されていないことを示している。パスワードは設定されており、最小・最大の年齢制限は実質的に無効で、パスワードの有効期限が近づくと、7日前に警告が表示される設定になっている。また、パスワードの期限切れ後にアカウントが無効になることはない。
パスワードの有効期限切れを設定する
sudo passwd -e [ユーザー名]
sudo chage -d 0 [ユーザー名]
sudo usermod -e 今日の日付 [ユーザー名]
usermod
でも、似たような結果にはなるが、明日以降に期限がきれる
パスワードポリシーを変更する
sudo passwd -n [日数] [ユーザー名]
sudo chage -m [日数] [ユーザー名]
ユーザーがパスワードを変更する最小日数を設定できる。例えば、sudo passwd -n 30 dev
は、devユーザーがパスワードを変更できるまでに最低30日待たなければならないことを意味する。
パスワードをロックする
sudo passwd -l [ユーザー名]
パスワードのロックを解除する
sudo passwd -u [ユーザー名]
パスワードの変更を強制する
sudo passwd -x [日数] [ユーザー名]
sudo chage -M [日数] [ユーザー名]
指定した日数後にユーザーへパスワードの変更を強制する。-1
を指定することで無期限になる。
パスワードの警告期間を設定する
sudo passwd -w [日数] [ユーザー名]
sudo chage -W [日数] [ユーザー名]
パスワードの有効期限が切れる前に、ユーザーへ警告メッセージを表示する日数を設定する。
sudo passwd -i [日数] [ユーザー名]
sudo chage -I [日数] [ユーザー名]
参考リンク
さいごに
あんまりつかわないので、よくわすれすぎる