09-Linux & Virtual Box

Virtual Box & Linux(Part.13)| Linux ユーザー管理(1)| 現役エンジニア&プログラミングスクール講師

目標

「マルチユーザー」「マルチタスク」について概要を理解する。
「ユーザー」と「グループ」の概要を理解する。
「rootユーザー」について概要を理解する。
「ユーザー情報の確認コマンド」について基本操作を理解する。

Linuxでのユーザー管理の概要(1)

「マルチユーザー」「マルチタスク」

「マルチユーザー」とは

「マルチユーザー」は1台のPCに対して複数のユーザーがログインしてOSやアプリケーションを同時に利用できることや、複数のユーザーがアカウントを切り替えて利用できることを指します。LinuxはマルチユーザーのOSです。

マルチユーザーの環境を整えたシステムのことを「マルチユーザーシステム」といいます。

「マルチユーザー」の対義語は「シングルユーザー」です。シングルユーザーは1台のPCに対して1ユーザーしか利用できないことを指します。

Linuxはシングルユーザーモードに切り替えることができます。シングルユーザーモード(rootユーザーのみが利用できるモード)に変更する場合はrootユーザー以外のユーザーを事前にログアウトさせるようにします。

「マルチタスク」とは

複数の処理を同時に行うことをマルチタスクといいます。Linuxはマルチタスクの機能をもったOSです。

Linuxは「マルチユーザー」「マルチタスク」の機能を持ったOSです。

「ユーザー」と「グループ」

Linuxは「マルチユーザー」「マルチタスク」のOSなので、あるユーザーの作業が別のユーザーに影響が出ないようにする仕組みがあります。この仕組みは「ユーザー」「グループ」「権限」を識別することで行われます。

ユーザー

LinuxのユーザーはLinuxの利用者のことで「一般ユーザー」や「rootユーザー(管理者ユーザー)」「システムアカウント」があります。ユーザーはそれぞれUID(UserID)という番号で識別されます。

グループ

Linuxのユーザーは少なくとも1つ以上のグループに属する必要があります。グループはGID(GroupID)という番号で識別されます。

「ユーザー」と「グループ」の定義

Linuxではユーザーやグループは「/etcディレクトリ」以下の設定ファイルで定義をされます。ユーザーアカウントは「passwdファイル」と「shadowファイル」の2つで管理されています。

※グループについて「passwdファイル」にはプライマリグループが定義されます。その他のグループは「/etc/groupファイル」で定義します。

Linuxの各ユーザーは一応最大32グループまで所属が可能です。ただ、NFS(ファイル共有システム)を利用する場合はグループを16個までしか認識できないため、NFS利用の場合は最大16グループまでの所属とするのがよいです。

UIDとGID

利用できる番号はアーキテクチャによって変わることがありますが、基本的には60,000までとするとよいと言われます。その他一般ユーザーとして利用できる範囲は1000以上となっています。グループも1000以上となっています。

範囲ユーザーの種類
0rootユーザー
1~999システムアカウント
1000~(60000までがよいと言われています。)一般ユーザー

ユーザーとグループの名前を共通にする割り当て方をUPG(ユーザープライベートグループ)といいます。

「rootユーザー」

rootユーザーはシステムの管理業務を行うことのできる特別なユーザーです。rootユーザーは全ての権限を持っているのでユーザーとなっています。rootユーザーのUIDとGIDは、いずれも「0」となっています。

Linuxでのユーザー管理のコマンド(1)

ユーザー情報の確認コマンド

ユーザーのアカウント情報の確認

「/etc/passwdファイル」と「/etc/shadowファイル」の確認

「/etc/passwdファイル」の確認
/etc/passwdファイルは一般ユーザーから「catコマンド」を利用して確認できます。
表示をすると各ユーザーの情報が次のように「:」区切りでまとめられています。

ユーザー名:パスワード:UID:GID:GECOS(コメント):ホームディレクトリ:ログインシェル

項目詳細
ユーザー名システム内のアカウント名です。
英字(小文字)・数字・アンダースコアが利用できます。(32文字)
重複はできません。
パスワード暗号化されたパスワードです。
このファイルではパスワードは表示されません。
このファイルでは「x」や「*」で表示されます。」
UIDユーザーを識別するIDです。
重複しない整数が割り当てられます。
GIDグループを識別するIDです。
重複しない整数が割り当てられます。
GECOSコメントです。
ユーザーの本名や情報などを記載します。
ホームディレクトリユーザーのホームディレクトリをフルパスで指定します。
ログインシェルユーザーが利用するログインシェルをフルパスで指定します。

[rocky001@rockylinux001 ~]$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash ←rootユーザーはUID/GIDが「0」
bin:x:1:1:bin:/bin:/sbin/nologin ←
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin



chrony:x:980:980::/var/lib/chrony:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin

rocky001:x:1000:1000:rocky001:/home/rocky001:/bin/bash

「/etc/shadowファイル」の確認
/etc/shadowファイルはrootユーザーのみが読み取り可能となっています。rootユーザーで「catコマンド」を利用して表示します。各ユーザーの情報が次のように「:」区切りでまとめられています。

ユーザー名:パスワード:変更日:最短の寿命:最長の寿命:警告日数:猶予日数:有効期限:予約

項目詳細
ユーザー名passwdファイルと同じユーザー名です。
パスワード暗号化されたパスワードです。
変更日パスワードの最終変更日です。
「0」の場合は次回のログインで変更が必要です。
最短の寿命パスワードを変更できない期間です。
「0」や「空欄」は制限なし。
最長の寿命パスワードを利用できる期間です。
「空欄」は制限なし。
警告日数パスワードの利用終了を警告する日数です。
「0」や「空欄」は制限なし。
猶予日数パスワードの利用期限を過ぎてもログインできる猶予の日数です。
「0」や「空欄」は猶予なし。
有効期限パスワードを無効化する日付です。
予約(現在の利用はなし)

[root@rockylinux001 ~]# cat /etc/shadow
root:$6$BzQSGoal…省略…MiEg3hFinmzibvxy.::0:99999:7::: ←rootユーザー
bin::19295:0:99999:7::: daemon::19295:0:99999:7:::
adm:
:19295:0:99999:7::: lp::19295:0:99999:7:::



sshd:!!:19468::::::
chrony:!!:19468::::::
tcpdump:!!:19468::::::

rocky001:$6$u5xw//X…省略…h45XP4r0JB1::0:99999:7:::

暗号化されているパスワードでも一般ユーザーで閲覧できるのはセキュリティ上良くないため、rootユーザーのみ読み取りが可能なファイルに記載されるようになっています。

グループアカウント情報の確認

「/etc/groupファイル」と「/etc/gshadowファイル」の確認

「/etc/groupファイル」の確認
/etc/groupファイルは一般ユーザーから「catコマンド」を利用して確認できます。
表示をすると各ユーザーの情報が次のように「:」区切りでまとめられています。

グループ名:グループパスワード:GID:グループメンバーのリスト

項目詳細
グループ名グループ名が表示されます。
グループパスワードグループパスワードです。
GIDグループIDが表示されます。
グループメンバーのリストグループのメンバーを「,」区切りで表示します。

[rocky001@rockylinux001 ~]$ cat /etc/group
root:x:0: ←rootユーザーのグループ
bin:x:1:
daemon:x:2:
sys:x:3:



slocate:x:21:
chrony:x:980:
tcpdump:x:72:

rocky001:x:1000: ←rocky001(一般ユーザー)のグループ

「/etc/gshadowファイル」の確認
/etc/gshadowファイルはrootユーザーから「catコマンド」を利用して確認できます。
表示をすると各ユーザーの情報が次のように「:」区切りでまとめられています。

グループ名:グループパスワード:グループの管理者:グループメンバーのリスト

項目詳細
グループ名グループ名が表示されます。
グループパスワード暗号化されたグループパスワードです。
グループメンバー以外のユーザーが 「newgrp コマンド」で
グループ参加する場合に使用します。
「!」 は「newgrpコマンド」でのアクセスができないことを
指します。
「‼」は「パスワードが今までに設定されていないこと」と
「newgrpコマンド」でのアクセスができないことを指します。
グループの管理者グループ管理者が「,」区切りで表示されます。
グループ管理者は gpasswd コマンドを利用して
「パスワード変更」「メンバーを追加」「メンバー削除」
が可能です。
グループメンバーのリストグループのメンバーを「,」区切りで表示します。

[root@rockylinux001 ~]# cat /etc/gshadow
root:::
bin:::
daemon:::



slocate:!::
chrony:!::
tcpdump:!::

rocky001:!::

グループアカウントのパスワードについても、rootユーザーのみ読み取りが可能なファイルに記載されるようになっています。

今回は以上になります。

「Linux」おすすめ書籍6選【初心者・脱初心者用】| 現役エンジニア&プログラミングスクール講師「Linux」初心者の方がLinuxの操作や仕組みを理解するためのお勧めの書籍について取り上げています。また中級者として更に進んだ学習ができる書籍についても1冊取り上げています。ページの下部には「おすすめのITスクール情報」「おすすめ求人サイト」について情報を掲載中。...

ブックマークのすすめ

「ほわほわぶろぐ」を常に検索するのが面倒だという方はブックマークをお勧めします。ブックマークの設定は別記事にて掲載しています。

「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】| 現役エンジニア&プログラミングスクール講師「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】について解説している記事です。削除方法も掲載しています。...
【パソコン選び】失敗しないための重要ポイント | 現役エンジニア&プログラミングスクール講師【パソコン選び】失敗しないための重要ポイントについての記事です。パソコンのタイプと購入時に検討すべき点・家電量販店で見かけるCPUの見方・購入者が必要とするメモリ容量・HDDとSSDについて・ディスプレイの種類・バッテリーの持ち時間や保証・Officeソフト・ウィルス対策ソフトについて書いています。...
RELATED POST
09-Linux & Virtual Box

Virtual Box & Linux(Part.23)| Linux USBメモリ内でのパーティショ作成とファイルシステム作成 | 現役エンジニア&プログラミングスクール講師

2023年5月25日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

「Linux」おすすめ書籍6選【初心者・脱初心者用】| 現役エンジニア&プログラミングスクール講師

2024年2月18日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

Virtual Box & Linux(Part.4)| Linuxの概要と基本コマンド(ディレクトリ操作)| 現役エンジニア&プログラミングスクール講師

2023年4月23日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

Virtual Box & Linux(Part.16)| Linux ファイル管理(1)| 現役エンジニア&プログラミングスクール講師

2023年5月8日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

Virtual Box & Linux(Part.1)| Virtual Boxのインストール(Windows版)| 現役エンジニア&プログラミングスクール講師

2023年4月16日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

Virtual Box & Linux(Part.22)| Virtual box でUSBメモリを認識させる方法 | 現役エンジニア&プログラミングスクール講師

2023年5月22日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site