ウェブサイト検索

RHCSA シリーズ: RHEL 7 でユーザーとグループを管理する方法 - パート 3


他の Linux サーバーの場合と同様に、RHEL 7 サーバーを管理するには、ユーザー アカウントを追加、編集、一時停止、削除する方法と、ファイルに必要なアクセス許可をユーザーに付与する方法を理解しておく必要があります。 、ディレクトリ、およびその他のシステム リソースを使用して、割り当てられたタスクを実行します。

ユーザーアカウントの管理

新しいユーザー アカウントを RHEL 7 サーバーに追加するには、次の 2 つのコマンドのいずれかを root として実行できます。

adduser [new_account]
useradd [new_account]

新しいユーザー アカウントが追加されると、デフォルトでは次の操作が実行されます。

  1. ユーザーのホーム ディレクトリが作成されます (特に指定しない限り、/home/username)。
  2. これらの .bash_logout.bash_profile、および .bashrc の隠しファイルはユーザーのホーム ディレクトリ内にコピーされ、ユーザーの環境変数を提供するために使用されます。 /彼女のユーザーセッション。詳細については、それぞれを調べてください。
  3. 追加されたユーザー アカウントに対してメール スプール ディレクトリが作成されます。
  4. 新しいユーザー アカウントと同じ名前でグループが作成されます。

完全なアカウントの概要は、/etc/passwd ファイルに保存されます。このファイルにはシステム ユーザー アカウントごとのレコードが保持され、次の形式になります (フィールドはコロンで区切られます)。

[username]:[x]:[UID]:[GID]:[Comment]:[Home directory]:[Default shell]
  1. これら 2 つのフィールド [username][Comment] は一目瞭然です。
  2. 2 番目のフィールド「x」は、アカウントがシャドウ パスワード (/etc/shadow 内) によって保護されていることを示します。このパスワードは、[username] としてログオンするために使用されます。
  3. フィールド [UID][GID] は、[username] が属するユーザー ID とプライマリ グループ ID を同様に示す整数です。 。

ついに、

  1. [Home directory] は、[username] のホーム ディレクトリの絶対位置を示します。
  2. [デフォルト シェル] は、このユーザーがシステムにログインするときにコミットされるシェルです。

理解しておく必要があるもう 1 つの重要なファイルは、グループ情報が保存される /etc/group です。 /etc/passwd の場合と同様、1 行に 1 つのレコードがあり、そのフィールドもコロンで区切られています。

[Group name]:[Group password]:[GID]:[Group members]

どこ、

  1. [グループ名] はグループの名前です。
  2. このグループはグループパスワードを使用していますか? (「x 」はいいえを意味します)。
  3. [GID]: /etc/passwd と同じ。
  4. [グループメンバー]: 各グループのメンバーであるユーザーのカンマ区切りのリスト。

アカウントを追加した後は、usermod を使用していつでもユーザーのアカウント情報を編集できます。その基本構文は次のとおりです。

usermod [options] [username]

こちらもお読みください:
15 個の「useradd」コマンドの例
15 の「usermod」コマンドの例

例 1: アカウントの有効期限の設定

一定期間アカウントを有効にする何らかのポリシーがある会社に勤めている場合、または限られた期間へのアクセスを許可したい場合は、--expiredate を使用できます。フラグの後にYYYY-MM-DD 形式の日付が続きます。変更が適用されたことを確認するには、次の出力を比較します。

chage -l [username]

次の図に示すように、アカウントの有効期限を更新する前と後です。

例 2: ユーザーを補足グループに追加する

新しいユーザー アカウントがシステムに追加されるときに作成されるプライマリ グループに加えて、-aG または -append を組み合わせてユーザーを補助グループに追加できます。– グループオプション、その後にグループのカンマ区切りのリストが続きます。

例 3: ユーザーのホーム ディレクトリのデフォルトの場所の変更、および/またはそのシェルの変更

何らかの理由でユーザーのホーム ディレクトリのデフォルトの場所 (/home/username 以外) を変更する必要がある場合は、-d または < を使用する必要があります。–home オプション、その後に新しいホーム ディレクトリへの絶対パスが続きます。

ユーザーがデフォルトで割り当てられる bash 以外の別のシェル (sh など) を使用したい場合は、–shell を指定して usermod を使用します。 > フラグ、その後に新しいシェルへのパスが続きます。

例 4: ユーザーがメンバーとなっているグループを表示する

ユーザーを補助グループに追加した後、そのユーザーが実際にそのグループに属していることを確認できます。

groups [username]
id [username]

次の図は例 2 から 4 までを示しています。

上の例では:

usermod --append --groups gacanepa,users --home /tmp --shell /bin/sh tecmint

グループからユーザーを削除するには、上記のコマンドで --append スイッチを省略し、--groups フラグの後にユーザーを所属させるグループをリストします。

例 5: パスワードをロックしてアカウントを無効にする

アカウントを無効にするには、-L (小文字の L) または -lock オプションを使用してユーザーのパスワードをロックする必要があります。これにより、ユーザーはログオンできなくなります。

例 6: パスワードのロックを解除する

ユーザーが再びサーバーにログオンできるようにユーザーを再度有効にする必要がある場合は、-U または -unlock オプションを使用して、変更されたユーザーのパスワードのロックを解除します。上記の例 5 で説明したように、以前はブロックされていました。

usermod --unlock tecmint

次の図は例 56 を示しています。

例 7: グループまたはユーザー アカウントの削除

グループを削除するには groupdel を使用しますが、ユーザー アカウントを削除するには userdel を使用します (–r スイッチを追加します)ホーム ディレクトリとメール スプールの内容も削除したい場合):

groupdel [group_name]        # Delete a group
userdel -r [user_name]       # Remove user_name from the system, along with his/her home directory and mail spool

group_name が所有するファイルがある場合、それらは削除されませんが、グループ所有者は削除されたグループの GID に設定されます。