ユーザー管理

Linuxのユーザーについて

LinuxはマルチユーザーOSなので、複数のユーザーが同じシステムを利用できます。各ユーザーには異なる権限や役割があり、それに基づいてアクセス制御が行われます。

ユーザーの種類

Linuxには大きく分けて 3種類 のユーザーが存在します。

root(スーパーユーザー)

  • システム全体に対する管理者権限を持つ特別なユーザー。
  • すべてのファイルやディレクトリに対して、読み書き・実行の権限がある。

一般ユーザー

  • root以外のユーザーで、通常は制限された権限を持つ。
  • 自分のホームディレクトリ(/home/ユーザー名)内のファイルやディレクトリを自由に操作できるが、システム全体の変更はできない。
  • 必要に応じて sudo コマンドで管理者権限を一時的に使用できる(sudo の使用は管理者が設定)。

システムユーザー

  • Linuxのサービスやプロセスが使用する特殊なユーザー。
  • 例えば、apache(Webサーバー)、mysql(データベース)、nobody(最小権限のユーザー)などがある。
  • /etc/passwd に記載されているが、通常ログインできない設定になっている。

/etc/passwd

/etc/passwd は、すべてのユーザーの情報を格納しているテキストファイルです。ユーザーがシステムにログインできるかどうか、どのシェルを使うかなどの基本情報が記載されています。

/etc/passwd の各行は、1人のユーザーの情報を表しており、以下のような形式になっています。

ユーザー名:パスワード:ユーザーID:グループID:コメント:ホームディレクトリ:ログインシェル

各フィールドの意味

フィールド説明例(testuserの場合)
ユーザー名ログイン時に使用する名前testuser
パスワードx の場合、暗号化されたパスワードは /etc/shadow に格納x
ユーザーID (UID)ユーザーごとに一意のID(0はroot1000
グループID (GID)プライマリグループのID(/etc/group に対応)1000
コメントフルネームなどの説明testuser
ホームディレクトリユーザーの作業ディレクトリ/home/testuser
ログインシェルユーザーのデフォルトのシェル/bin/bash

/etc/shadow

/etc/shadow は、Linuxシステムのユーザーのパスワード情報を管理するファイルです。
このファイルには、暗号化されたパスワードやパスワードの有効期限などのセキュリティ関連の情報が記録されています。
/etc/passwd と異なり、/etc/shadow は root ユーザーのみが閲覧可能 です。

/etc/shadow のフォーマット

/etc/shadow の各行は、1人のユーザーの情報を表す レコードになっており、以下のような形式になっています。

ユーザー名:暗号化パスワード:最終変更日:最小日数:最大日数:警告日数:無効日数:有効期限:予約

フィールド説明例 (testuserの場合)
ユーザー名/etc/passwd のユーザー名と一致testuser
暗号化パスワード暗号化されたパスワード (x の代わりに保存)$6$GtVJq55EwEjrq…
最終変更日1970-01-01 からの経過日数
最小日数パスワード変更の最短日数(変更不可期間)0(制限なし)
最大日数パスワードの有効期限(超過すると変更が必要)99999(無制限)
警告日数有効期限前の警告表示日数7
無効日数有効期限超過後、アカウント無効になる日数
有効期限アカウントの有効期限(1970-01-01 からの日数)空欄または –1(無制限)
予約現在は未使用(将来の拡張用)空欄

ユーザーの管理コマンド

新規ユーザーの作成

ユーザーの削除

ユーザー情報の変更

コメント

タイトルとURLをコピーしました