LinuCレベル1 102試験の例題と解説

1.10.1セキュリティ管理業務の実施

LinuCレベル1 102試験の出題範囲から「1.10.1 セキュリティ管理業務の実施」についての例題を解いてみます。ここでは、passwdコマンドについて確認しておきましょう。

Linucレベル1 102試験 出題範囲


例題

以下の中から、testuserのパスワードを変更するコマンドとして正しいものを選択してください。

  1. passwd testuser
  2. passwd -l testuser
  3. passwd -u testuser
  4. 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研究室 宮地 智哉

ページトップへ