LinuCレベル1 102試験の例題と解説
1.10.1セキュリティ管理業務の実施
LinuCレベル1 102試験の出題範囲から「1.10.1 セキュリティ管理業務の実施」についての例題を解いてみます。ここでは、passwdコマンドについて確認しておきましょう。
例題
以下の中から、testuserのパスワードを変更するコマンドとして正しいものを選択してください。
- passwd testuser
- passwd -l testuser
- passwd -u testuser
- passwd -d testuser
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「1. passwd testuser」です。
passwdコマンドは、ユーザアカウントのパスワードを変更するコマンドです。
passwdコマンドには主に2つの機能があります。
- ユーザが自分のパスワードを変更する
passwdコマンドの引数に何も指定せず実行することで、実行したユーザが自身のパスワードを変更することができます。testuserが自身のパスワードを変更する場合の実行例が以下になります。
$ passwd
ユーザー testuser のパスワードを変更。
Current password:
新しい パスワード:
新しい パスワードを再入力してください:
passwd: すべての認証トークンが正しく更新できました。
- 特権管理者がユーザのパスワードを変更する
passwdコマンドの引数でユーザを指定することで、指定したユーザのパスワードを変更することができます。
特権管理者がtestuserのパスワードを変更する場合の実行例が以下になります。
# passwd testuser
ユーザー testuser のパスワードを変更。
新しい パスワード:
新しい パスワードを再入力してください:
passwd: すべての認証トークンが正しく更新できました。
passwdコマンドには様々なオプションが用意されています。
代表的なオプションを紹介します。
-lオプション
# passwd -l [ユーザ名]
-lオプションは、指定したユーザのパスワードをロックすることができます。
パスワードをロックされたユーザは、パスワードを使用してログインすることができなくなります。
testuserのパスワードをロックする場合の実行例が以下になります。
# passwd -l testuser
ユーザー testuser 用のパスワードをロック。
passwd: 成功
上記を実行した後、testuserでログインを行うと以下のように表示されます。
$ su - testuser
パスワード:
su: 認証失敗
-uオプション
# passwd -u [ユーザ名]
-uオプションは、指定したユーザのパスワードのロックを解除します。
パスワードのロックが解除されたユーザは、パスワードを使用してログインすることができます。
testuserのパスワードのロックを解除する場合の実行例が以下になります。
# passwd -u testuser
ユーザー testuser 用のパスワードをロック解除。
passwd: 成功
-dオプション
# passwd -d [ユーザ名]
-dオプションは、指定したユーザのパスワードを削除します。
パスワードが削除されたユーザは、パスワードを入力せずにログインすることができます。
パスワードを入力せずにログインできるユーザが存在することは、不正ログインのリスクになります。
-dオプションをつけてpasswdコマンドを実行することは注意が必要です。
testuserのパスワードを削除する場合の実行例が以下になります。
# passwd -d testuser
ユーザー testuser のパスワードを削除。
passwd: 成功
上記を実行した後、testuserでログインを行うと以下のように表示されます。
パスワードを入力せずにログインすることができます。
$ su - testuser
$
ただし、パスワードが無いユーザがSSHでパスワード認証のログインする場合、通常であれば以下のように失敗します。
SSHサービスのデフォルトの設定で、パスワード認証のログインをする場合はパスワードの入力が必須とされているためです。
$ ssh testuser@example.com
testuser@example.com's password:
Permission denied, please try again.
-eオプション
# passwd -e [ユーザ名]
-eオプションは、指定したユーザの次回ログイン時にパスワードの変更を要求することができます。
-eオプションとtestuserを指定してpasswdコマンドを実行した後、testuserがログインした場合の例が以下になります。
# passwd -e testuser
$ su - testuser
パスワード:
You are required to change your password immediately (administrator enforced).
Current password:
新しい パスワード:
新しい パスワードを再入力してください:
-Sオプション
# passwd -S [ユーザ名]
-Sオプションは指定したユーザのパスワード情報を表示することができます。
testuserのパスワード情報を表示する場合の実行例が以下になります。
# passwd -S testuser
testuser PS 2023-10-06 20 30 7 3 (パスワード設定済み、不明な暗号化変種。)
各フィールドで表示される値について、左から順番に説明します。
1番目のフィールド | : | ユーザのアカウント名 |
2番目のフィールド | : | アカウントのパスワードの状態 |
LK:ロックされている | ||
NP:パスワードが設定されていない | ||
PS:使用可能なパスワードが設定されている | ||
3番目のフィールド | : | 最後にパスワードが更新された日付 |
4番目のフィールド | : | ユーザがパスワードを変更できるようになるまでの日数 |
5番目のフィールド | : | パスワードの有効期限 |
6番目のフィールド | : | パスワードの有効期限が切れたことを警告する日数 |
7番目のフィールド | : | パスワードの有効期限が切れてから、パスワードが無効になるまでの日数 |
この他にもpasswdコマンドには様々なオプションが用意されています。
使い方を理解しておきましょう。
以下選択肢の解説になります。
1.passwd testuser
正解です。
testuserのパスワードを変更するコマンドです。
2.passwd -l testuser
不正解です。
testuserのパスワードをロックするコマンドです。
3.passwd -u testuser
不正解です。
testuserのパスワードのロックを解除するコマンドです。
4.passwd -d testuser
不正解です。
testuserのパスワードを削除するコマンドです。
ユーザのパスワードを適切に管理することで、不正ログインなどのリスクの対策になります。passwdコマンドを理解して、適切なパスワード管理を行えるようになりましょう。
例題作成者
株式会社デージーネット OSS研究室 宮地 智哉