ウェブサイト検索

コマンドラインでLinuxのパスワードを管理する必要がありますか?GUIは不要、問題ありません!


Linuxでユーザーパスワードを変更または管理する必要がある場合、知っておくべき2つの重要なコマンドとその使い方があります。

今では自由にLinuxコマンドを実行することができます。

GUIアプリの助けなしにLinuxでユーザーパスワードを管理しなければならなかった回数は数えきれません。サーバー上であろうと、SSHを使ってリモートマシンにアクセスするためであろうと、その作業に利用できるコマンドを知っていることが、何度も私を助けてくれました。

良いニュースは、コマンドラインインターフェース(CLI)でそれらのパスワードを管理するために必ず知っておくべきコマンドが1つだけあるということです。しかし、私が重要だと考える2つ目のコマンドもあります。

私はこれらの2つのコマンドに対処し、それらがどれほど強力で役立つかをお見せしたいです。

これに準備はできていますか?

passwdコマンド

このコマンドの名前は、最初は新しいユーザーをいつも困らせます。私が最初にLinuxを使い始めたとき、コマンドがpasswdであってpasswordではないことを指が覚えるまでに少し時間がかかりました。

passwd コマンドは、パスワードを設定、変更、およびそのステータスを確認することを可能にします。また、ユーザーにパスワードを変更させたり、アカウントをロック/ロック解除したりすることもできます。

それぞれの方法を教えますので心配しないでください。どのディストリビューションを使用しているかは気にしないでください、なぜなら passwd コマンドはすべてのディストリビューションに含まれているからです。

まず、新しいパスワードを設定しましょう。これは、ユーザーがコマンドラインから初めて作成されるときにのみ必要になります。一部のディストリビューションではユーザー作成時にパスワードを設定する必要がありますが、他のものはそうではありません。adduser コマンドがその新しいユーザーのためにパスワードを設定することを必要としない場合は、次のコマンドで作成できます。

sudo passwd USER

USERが問題のユーザーです。

パスワードの変更は管理者または標準ユーザーによって行うことができます。管理者はシステム上の任意のユーザーのパスワードを変更でき、標準ユーザーは自分のパスワードのみを変更することができます。

管理者がパスワードを変更するためのコマンドは次のとおりです:

sudo passwd USER

USERが問題のユーザーです。

ユーザーが自分のパスワードを変更するためのコマンドは単純に次の通りです:

passwd

パスワードの状況を確認するには、次のコマンドを発行してください:

sudo passwd -S USER

USERが問題のユーザーです。

出力には、ユーザー名、ステータス、最終変更日、最小パスワード年齢、最大パスワード年齢、警告期間、および非アクティブ期間が含まれます。

すべてのユーザーのパスワードの状態を次のコマンドで確認することもできます:

sudo passwd -Sa

上記のコマンドにはシステムアカウントも含まれます。

では、ユーザーにパスワードを変更させるために、次のコマンドを使用します:

sudo passwd -e USER

USERは問題のユーザーの名前です。次回ユーザーがログインすると、現在のパスワードの入力を求められ、その後新しいパスワードを設定するよう指示されます。

最後に、passwdコマンドを使用してユーザーアカウントをロックおよびアンロックすることができます。アカウントをロックするためのコマンドは次のとおりです:

sudo passwd -l USER

USER は該当ユーザーの名前です。

ユーザーはもはや自分のアカウントにログインできなくなります。ユーザーアカウントを解除するには、コマンドは次のとおりです:

sudo passwd u USER

USER は該当ユーザーの名前です。

chageコマンド

chageコマンドはパスワードの有効期限を管理するために使用されます。passwdコマンドではなく、なぜこれを使用するのですか?簡単に言うと、chageコマンドはパスワードの有効期限に対するより多くの制御を提供します。これは、Linuxシステム上で一時的なアカウントを作成する必要がある場合に便利です。特定の期間後にパスワードが期限切れになるように設定でき、その時点でユーザーはログインできなくなります。これは、特定の期間滞在するゲストがいる場合や、特定の日付に会社を辞める従業員がいる場合に役立ちます。

例えば、特定の日にユーザーにパスワードを変更させるために chage を使用したいとしましょう。例えば、2024年10月31日にユーザーのオリビアにパスワードの変更を強制したい場合、コマンドは以下のようになります:

sudo chage -d 2024-10-31 olivia

その日、オリビアユーザーがログインしようとすると、パスワードを変更するよう強制されます。

アカウントの有効期限を強制的に設定したいとしましょう。そのためには、次のようにEオプションを使用します:

sudo chage -E 2024-10-31 olivia

ユーザーアカウントをchageを使用して以下のようにロックすることもできます:

sudo chage -E 0 USER

USER は該当ユーザーの名前です。

アカウントから期限を削除したい場合、コマンドは以下のようになります:

sudo chage --expiredate -1 USER

USER は該当ユーザーの名前です。

最後に、必要なパスワードの変更の間隔を日数で指定できます。たとえば、ユーザーに30日ごとにパスワードを変更させたい場合、そのコマンドは次のようになります:

sudo chage -E 30 USER

USER は該当ユーザーの名前です。

上記のコマンドを実行すると、ユーザーは30日ごとにパスワードを変更する必要があります。また、ユーザーに対して警告期間を設定することもできます。その日ではなく、前日に警告することもできます。以下のコマンドを使用してください:

sudo chage -W 1 USER

USER は該当ユーザーの名前です。

明示的な有効期限を以下のように削除することもできます:

sudo chage -E -1 USER

USER は該当ユーザーの名前です。

そして、それが、友達よ、コマンドラインからユーザーパスワードを管理する方法です。

関連記事: