GNU/Linux >> Linux の 問題 >  >> Linux

Linuxでのローカルグループアカウントの管理

人間として、私たちが新しい物体を発見するとき、私たちの脳はいくつかのことをします。 1つは、オブジェクトの有用性です。 2つ目は、オブジェクトにグループを割り当てて、オブジェクトを分類する方法を理解できるようにすることです。たとえば、子供がハンマーを発見した場合、彼らは一般的にそれが物を打つために使用される可能性があることを知っています。次に、ハンマーをグループに割り当てます。場合によっては、子供はハンマーをツールとしてラベル付けし、タスクを実行するためにのみそれを使用します。他の人では、子供はハンマーにおもちゃのラベルを付けます。ただし、ハンマーの有用性はまだ明らかですので、後者の子供に注意してください。これがグループ化が重要な理由です。

Linuxのグループは、ユーザーが定義されたユーティリティのためにシステムに存在するため、重要です。ユーティリティ(またはアクセス)ごとにユーザーをグループ化することは、管理者のみが管理者権限を持ち、一般ユーザーが意図したファイルにのみアクセスできるようにするための素晴らしい方法です。グループ化プロセスを少し簡単にするために、ユーザーは3つの異なる分類に分類されます。

  • スーパーユーザー -システムの管理を担当します。 ルート アカウントはチーフスーパーユーザーであり、UID 0を持っています 。
  • システムユーザー -システム自体がプロセスまたはデーモンを実行するために使用するユーザーアカウント。これらの各ユーザーには、独自のファイルとリソースがあります。理想的には、ユーザーはシステムユーザーとしてログインしません。 UIDの範囲は1-999です。 。
  • 通常のユーザー -私たちのほとんどが日常業務を遂行するために使用するアカウント。ファイルやシステムへのアクセスが制限されており、 sudoerを取得する必要があります 管理タスクを実行するための権限。 UIDは1000+から始まります 。

基本的なユーザーとグループの概念の詳細については、KenHessの記事「UIDとGIDを使用したユーザーアカウント管理」を参照してください。この記事の残りの部分では、グループの作成、メンバーシップ、識別コード、およびグループにスーパーユーザー特権を割り当てる方法に焦点を当てます。

プライマリグループ

デフォルトでは、すべてのユーザーがプライマリグループに割り当てられます。ローカルアカウントの場合、プライマリGIDは/etc/passwdにリストされているものと同じです。 ファイル。これは、ユーザー名とグループ名が同じであることを意味します。また、ユーザーがそのグループの唯一のメンバーであることも意味します。例:

[root@server ~]# useradd user01
[root@server ~]# su - user01
[user01@server ~]$ id
uid=1002(user01) gid=1002(user01) groups=1002(user01) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

この設計の副作用は、ユーザーと管理者にとってファイルのアクセス許可の管理がはるかに簡単になることです。共通の目的でユーザーをプライマリグループに集める場合は、グループを作成してから、目的のユーザーをグループに割り当てる必要があります。

[あなたも好きかもしれません:Linuxシステム管理者の基本:ユーザーアカウント管理]

グループの作成

デモンストレーションでは、グループdemogroupを作成します。 。出力から、グループが作成され、GID1007が割り当てられていることがわかります。

[root@server ~]# groupadd demogroup
[root@server ~]# tail /etc/group
cockpit-wsinstance:x:975:
flatpak:x:974:
rngd:x:973:
admin:x:1001:
user01:x:1002:
user02:x:1003:
user03:x:1004:
user04:x:1005:
user05:x:1006:
demogroup:x:1007:

次に、GIDを10007に変更しましょう:

[tcarrigan@server ~]$ sudo groupmod -g 10007 demogroup 
Output Omitted
[tcarrigan@server ~]$ sudo tail /etc/group
Output Omitted
demogroup:x:10007:

groupmod -g GID groupnameを使用します 必要に応じてグループのGIDを変更する構文。グループの名前を変更する必要がある場合は、groupmod -n NEWNAME oldnameを使用してください 。次に例を示します:

[tcarrigan@server ~]$ sudo groupmod -n usergroup demogroup 
[tcarrigan@server ~]$ sudo tail /etc/group
Output Omitted
usergroup:x:10007:

demogroupの名前を変更したことに注意してください usergroupへ 。 GID 10007で示されているように、グループは同じです。

ユーザーをグループに追加する

メンバーのいないグループは、木のない森のようなものです。では、どのようにしていくつかのメンバーを追加するのでしょうか。簡単にできます。

[tcarrigan@server ~]$ sudo usermod -g usergroup user01
[tcarrigan@server ~]$ sudo usermod -g usergroup user02
[tcarrigan@server ~]$ sudo usermod -g usergroup user03
[tcarrigan@server ~]$ sudo usermod -g usergroup user04
[tcarrigan@server ~]$ sudo usermod -g usergroup user05

user01を作成したときからのGIDとグループ名の変更を確認できます この演習の開始時。

[user01@server ~]$ id
uid=1002(user01) gid=10007(usergroup) groups=10007(usergroup) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

補足グループ

これで、ユーザーは補足グループに所属することもできます。補足グループはまさにそれであり、補足です。補足グループの非常に一般的な使用法は、sudoを介して管理者権限を割り当てることです。 。

たとえば、 user01 ユーザーグループの他のユーザーの権限を変更する必要があります 、グループ全体に管理者権限を割り当てずに、 user01を割り当てます 管理者権限を持つ補足グループに。多くのシステムでは、ホイール グループはそのような場合にのみ使用されます。

ホイールを追加するには user01の補足グループとして :

[tcarrigan@server ~]$ sudo usermod -aG wheel user01
[tcarrigan@server ~]$ su - user01
Output Omitted
[user01@server ~]$ id
uid=1002(user01) gid=10007(usergroup) groups=10007(usergroup),10(wheel) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

-a オプションはusermodを強制します 追加に モード。 -aの場合 オプションが使用されていない場合、ユーザーは-Gにリストされていない他の補足グループから削除されます オプションのリスト。

これで、 user01が表示されます。 プライマリグループ(ユーザーグループ )および補足グループ(ホイール

Sudoグループ構成

ユーザーグループ全体に管理者権限を付与する必要がある場合はどうなりますか ?これを実現するには、/etc/sudoers.d/usergroupを作成する必要があります ファイル:

[root@server ~]# echo "%usergroup ALL=(ALL) ALL" >> /etc/sudoers.d/usergroup
[root@server ~]# su - user02
[user02@server ~]$ sudo cat  /etc/sudoers.d/usergroup
[sudo] password for user02:  
%usergroup ALL=(ALL) ALL

その上にuser02が表示されます 、ユーザーグループのメンバー 、管理者権限があります。管理者権限とsudoersファイルの詳細については、以前の記事Linuxコマンドラインの基本:sudoを確認してください。

[システム管理者のスキルをテストしたいですか?今日、スキル評価を受けてください。 ]

なぜ気にする必要があるのですか?

上記の質問を自問する場合は、次の概念について実際に考えてください。Linuxでグループを使用することは、オペレーティングシステムの基本的な部分であり、さまざまなアプリケーションを実行するためにも必要です。簡単に制御できるグループにユーザーを割り当てることは、システムのセキュリティを迅速に強化し、複数のユーザーアカウントを管理するための優れた方法です。上記のように、特定のユーザーに管理者権限へのアクセスを許可して、システムへのrootアクセスを許可せずに特定の作業を完了することができます。ユーザーが必要なものだけにアクセスできるようにしながら、ユーザーの整理と生産性を維持できれば、私たちの生活は楽になり、ユーザーと管理者の関係は少しストレスが少なくなります。あなたの組織は、彼らがそれを知っているかどうかにかかわらず、ゼロからこれらの改善から利益を得るでしょう。


Linux
  1. Linuxで複数のユーザーアカウントを作成する方法

  2. LinuxユーザーとLinuxグループを管理する

  3. Linuxでユーザーを一覧表示する3つの方法

  1. お誕生日おめでとう、Linux:27年

  2. passwdコマンドを使用したLinuxユーザーの管理

  3. Linux グループ内のすべてのユーザーを一覧表示する方法は?

  1. Linuxでユーザーをグループに追加する方法

  2. Linuxでユーザーをグループに追加する方法

  3. Linuxのグループのメンバーを一覧表示する