Linuxユーザー情報の確認方法:主要コマンドの解説

Linuxユーザー情報の確認方法

/etc/passwd ファイルの確認

Linuxシステム上に登録されているすべてのユーザーアカウント情報は、/etc/passwdファイルに保存されています。このファイルには、通常のユーザーだけでなく、システムサービス用のユーザー(UIDが1から499の範囲のもの)も含まれます。

各ユーザーは1行で表現され、コロン(:)で区切られた7つのフィールドで構成されています。

  1. ユーザー名
  2. パスワード(通常は 'x' で、実際のパスワードは /etc/shadow に保存されます)
  3. ユーザーID (UID)
  4. プライマリグループID (GID)
  5. コメント(GECOSフィールド)
  6. ホームディレクトリのパス
  7. ログインシェルのパス

以下は、cat /etc/passwdコマンドを実行した際のサンプル出力です。ユーザー名やUIDを変更しています。

user1:x:1000:1000:User One:/home/user1:/bin/bash
user2:x:1001:1001:User Two:/home/user2:/sbin/nologin
service_user:x:200:200:Service Account:/var/service:/sbin/nologin
db_user:x:201:201:Database User:/var/lib/mysql:/sbin/nologin
web_user:x:202:202:Web Server User:/var/www:/sbin/nologin

/etc/shadow ファイルの確認

ユーザーの暗号化されたパスワードは、より安全な/etc/shadowファイルに保存されています。このファイルは、rootユーザーのみが閲覧可能です。このファイルは、アカウントの有効期限やロック状態などの情報も含んでいます。

各ユーザーは1行で表現され、コロン(:)で区切られた9つのフィールドで構成されています。特に重要なのは、最初の2つのフィールドです。

  1. ユーザー名(/etc/passwd のユーザー名と一致)
  2. 暗号化されたパスワード。以下の特殊文字はアカウントの状態を示します。
    • !! または !:アカウントがロックされているか、パスワードが設定されていない。
    • *:アカウントが無効化されている。

以下は、cat /etc/shadowコマンドを実行した際のサンプル出力です。上記の/etc/passwdの例に対応する情報を示しています。

user1:$6$randomsalt$encryptedpassword:18584:0:99999:7:::
user2:!!:18584:0:99999:7:::
service_user:*:18584:0:99999:7:::
db_user:!!:18584:0:99999:7:::
web_user:$6$anothersalt$anotherencryptedpassword:18585:0:99999:7:::

タグ: linux ユーザー管理 システム管理 コマンド

7月30日 03:37 投稿