セキュリティ技術は長い道のりを歩んできましたが、由緒あるパスワードは依然としてデータを保護するために使用される最も一般的なツールの1つです。
passwdコマンドを使用すると、Linuxでユーザーパスワードを変更できますが、それ以上のことができます。ユーザーをロック(およびロック解除)できます。次回のログイン時などに、ユーザーにパスワードを変更させることができます。
このチュートリアルでは、システム管理者として使用できるpasswdコマンドの便利な例をいくつか紹介します。
passwdコマンドの実用的な例
passwdコマンドは、/ etc/passwdファイルで機能します。行った変更はここに反映されます。
Linuxのパスワードはどこに保存されていますか? / etc/shadowファイルに暗号化された形式で保存されます。
passwdコマンドの例をいくつか見てみましょう。
1。自分のパスワードを変更する
現在のユーザーのパスワード、つまり自分のアカウントのパスワードを変更するには、オプションを指定せずにpasswdコマンドを入力するだけです。
passwd
最初に現在のパスワードを使用するように求められます:
[email protected]:~$ passwd
Changing password for christopher.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
現在のパスワードを新しいパスワードとして入力すると、システムはパスワードが変更されていないことを示すエラーメッセージをスローし、新しいパスワードの入力を再度求めます。
2。ルートパスワードを作成する
多くのLinuxディストリビューションには、rootパスワードが設定されていません。 rootアカウントにアクセスする唯一の方法は、sudoまたはsuコマンドを使用することです。これは、「toor」のようなデフォルトのパスワードがシステムを攻撃者に対して脆弱にするためです。
rootパスワードを作成するには、sudoユーザーである必要があります:
sudo passwd root
出力は次のとおりです:
[email protected]:~$ sudo passwd root
[sudo] password for christopher:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
これは、ユーザーアクセスを適切に構成することが重要である多くの理由の1つです。すべてのユーザーがrootパスワードを変更できるようにしたくはありません!
3。他のユーザーのパスワードを変更する
Linuxでは、passwdコマンドをrootとして使用するか、sudoを使用してユーザーパスワードを変更できます。
sudo passwd user_name
明らかに古いパスワードの入力を求められることはありません。結局のところ、パスワードをリセットしているので、管理者としてそれを実行できるはずです。
[email protected]:/home/christopher# passwd christopher
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
4。パスワードのステータスを確認する
次のように、ユーザーのパスワードのステータスを確認できます。
sudo passwd -S user_name
次に例を示します:
[email protected]:~$ passwd -S christopher
christopher P 06/13/2020 0 99999 7 -1
この情報を確認しましょう。読みやすくするために表にまとめます。次に、特定の値の意味について説明します。
ユーザー名 | ステータス | 最終変更日 | 最低年齢 | 最大年齢 | 警告期間 | 非アクティブ期間 |
---|---|---|---|---|---|---|
クリストファー | P | 2020年6月13日 | 0 | 99999 | 7 | -1 |
まず、ステータス列を見てみましょう。このフィールドで可能なオプションは次のとおりです。
ステータス | 説明 |
---|---|
P | 使用可能なパスワード |
NP | パスワードなし |
L | ロックされたパスワード |
パスワードルールのパラメータを設定するために予約されている特別な番号がいくつかあります。
年齢別の特別な数字 | 説明 |
---|---|
9999 | 期限切れになることはありません |
0 | いつでも変更できます |
-1 | アクティブではありません |
ここでは、警告期間が7日に設定されていますが、非アクティブ期間が無効になっており、年齢が期限切れにならないように設定されているため、警告は発生しません。
5。すべてのアカウントのパスワードステータスを確認する
システム上のすべてのユーザーアカウントのパスワードステータスを確認することもできます:
sudo passwd -Sa
6。次回のログイン時にユーザーにパスワードの変更を強制する
-eオプションを使用すると、ユーザーのパスワードをすぐに期限切れにすることができます。これにより、ユーザーは次回のログイン時にパスワードを変更する必要があります。
sudo passwd -e user_name
強制有効期限は次のようになります。
[email protected]:/home/christopher# passwd -e christopher
passwd: password expiry information changed.
これで、ステータスを確認して変更を確認できます。
[email protected]:/home/christopher# passwd -S christopher
christopher P 01/01/1970 0 99999 7 -1
ご覧のとおり、パスワード設定日は「1970年1月1日」に変更されました。この日付は、「エポック」日付であるため、歴史的にUnixシステムにリンクされています。これは基本的に、その日付がUnixの歴史の中で(32ビットスケールで)「0」日であることを意味します。
パスワードの有効期限が切れました。次回アカウントにログインすると、別のパスワードに変更する必要があります。
7。ユーザーアカウントをロックまたはロック解除する
passwdコマンドの-lオプションを使用すると、Linuxでユーザーアカウントをロックできます。
sudo passwd -l user_name
ユーザーアカウントで使用すると、パスワードはアクセスを許可するために機能しなくなります。
[email protected]:/home/christopher# passwd -l christopher
passwd: password expiry information changed.
前述のように、-Sオプションを使用してユーザーパスワードのステータスを確認できます。 Lは、ここでの出力のロックを表します。
[email protected]:/home/christopher# passwd -S christopher
christopher L 06/13/2020 0 99999 7 -1
ユーザーアカウントのロック解除も同様に簡単です。 -uオプションを使用して、ユーザーのロックを解除します。
[email protected]:/home/christopher# passwd -u christopher
passwd: password expiry information changed.
ステータスを確認できます。出力のPは、使用可能なパスワードを意味します。つまり、パスワードはアカウントで使用できます。
[email protected]:/home/christopher# passwd -S christopher
christopher P 06/13/2020 0 99999 7 -1
8。アカウントからパスワードを削除し、パスワードなしにします
これの実際的な使用例はありませんが、特定のアカウントのパスワードを削除できます。このように、そのアカウントはシステムにアクセスするためのパスワードを必要としません。これはセキュリティには良くありません。
sudo passwd -d user_name
結論
-nオプションを使用して、ユーザーにN日以内にパスワードを変更するように強制することもできます。しかし、これを手動で行うのは時間の無駄です。代わりに、すべてのユーザーアカウントに適用できるように、システムのパスワードポリシーを適切に構成する必要があります。
-hオプションを使用すると、使用可能なすべてのオプションをいつでも確認できます。
このチュートリアルが、Linuxでpasswdコマンドを使い始めるのに役立つことを願っています。
いつものように、私たちは読者が興味を持っているコンテンツについて聞くのが大好きです。下にコメントを残して、私たちとあなたの考えを共有してください!