passwd - ユーザのパスワードを設定または変更する

スポンサーリンク

passwdコマンドは、ユーザのパスワードを設定・変更することができます。また、passwdコマンドはパスワードの有効期限などの設定を行うこともできます。

自分自身のパスワードを変更する場合ならば、管理者権限は特に必要ありません。しかし、パスワードの有効期限などの設定を変更する場合や他のユーザのパスワードを変更する場合は、管理者権限が必要になります。

スポンサーリンク

現在のユーザのパスワードを変更

passwdコマンドは引数なしで利用すると現在のユーザのパスワードを変更できます。パスワードは現在のパスワードを入力してから、新しいパスワードを2回入力します。
また、通常のユーザが自身のパスワードを変更するのに管理者権限は必要ありません。

コマンド例と実行結果

 

プロンプト文字列にユーザ名を表示させています。プロンプトの文字列は以下のような設定になっています。

PS1='\u$ '

 

 

 

管理者権限を用いてパスワードを変更

管理者権限を用いるとすべてのアカウントに対して、パスワードを変更できます。管理者権限を用いてパスワードを変更するとき、現在のパスワードを入力する必要はなく、新しいパスワードを2回入力するだけでパスワードが変更できます。

コマンド例と実行結果

 

 

 

パスワードのステータスを確認
(-Sオプション)

-Sオプションを用いるとパスワードのステータスを確認できます。
ステータスのそれぞれの列は

1列目:ユーザ名
2列目:パスワードの状態(P:利用可能、NP:パスワードなし、L:ロックされたパスワード)
3列目:パスワードを最後に変更した日付
4列目:パスワードを次に変更できるまでの変更できない期間(0はいつでも変更できる)
5列目:パスワードを変更してからの有効期間
6列目:パスワードの期限切れを何日前に注意喚起するかどうか
7列目:パスワードの期限切れから何日後にアカウントにログインできなくするかどうか

になります。

コマンド例と実行結果

 

また、-aオプションは-Sオプションと一緒に利用するオプションで、全てのユーザのパスワードの状態を表示できます。

コマンド例と実行結果

 

 

 

パスワードを変更できない期間を設定
(-nオプション)

-nオプションを用いると、パスワードを変更できない期間(日単位)を設定できます。

コマンド例と実行結果

 

 

 

パスワードを変更してからの有効期限を設定
(-xオプション)

-xオプションを用いるとパスワードを変更してからの有効期限(日単位)を設定することができます。

有効期限が切れたパスワードは新しいパスワードに変更するように要求されます。

コマンド例と実行結果

 

chageコマンドの-dオプションは、最後に変更したパスワードの日付を変更することができます。

 

 

 

パスワードの期限切れを何日前に注意喚起するかを設定
(-wオプション)

-wオプションは、パスワードの期限切れまであと何日かのような注意喚起を何日前から表示するかを設定できます。

コマンド例と実行結果

 

 

 

パスワードの期限切れから何日後にアカウントにログインできなくなるかどうかを設定
(-iオプション)

-iオプションを用いると、パスワードの期限切れから何日後にアカウントにログインできなくなるかを設定できます。この値が-1ならば、この機能は無効になります。

コマンド例と実行結果

 

 

 

パスワードの削除
(-dオプション)

-dオプションを用いると、パスワードを削除することができます。

コマンド例と実行結果

 

 

 

パスワードを即時に期限切れに
(-eオプション)

-eオプションを利用すると、ユーザのパスワードをすぐに期限切れにすることができます。

コマンド例と実行結果

 

 

 

パスワードのロック・アンロック
(-lオプション・-uオプション)

-lオプションを用いると、パスワードをロックすることができます。パスワードをロックすると使用していたパスワードを利用できなくなります(暗号化されたパスワードの先頭に!の文字が追加することで利用できなくしています)。

 

-uオプションを用いるとロックされたパスワードをアンロックすることができます。

 

また、このパスワードのロックは、アカウントを使用できなくなるわけではありません。アカウントを使用できなくする方法として、usermodコマンドの悪運との有効期限を指定する-eオプションで1(1970-1-2)を方法があります。