NIS ネットグループは、NIS 管理者が管理目的のために定義する、ユーザーまたはマシンのグループ (集合) です。たとえば、次のようなネットグループを作成できます。
特定マシンにアクセスできる一群のユーザーを定義するネットグループ
特定のファイルシステムにアクセスできる一群の NFS クライアントマシンを定義するネットグループ
特定の NIS ドメインのすべてのマシンに対して管理者権限を持つ一群のユーザーを定義するネットグループ
各ネットグループには、1 つのネットグループ名が与えられます。ネットグループは、アクセス権を直接設定しません。代わりに、ユーザー名またはマシン名が一般に使用される場所では、ネットグループ名が他の NIS マップで使用されます。たとえば、netadmins というネットワーク管理者ネットグループを作成したと仮定します。netadmins ネットグループのすべてのメンバーに特定マシンへのアクセス権を与えるには、そのマシンの /etc/passwd ファイルに netadmin エントリを追加するだけで、ネットグループ名を NIS グループマップに追加することもできます。ネットグループの使用の詳細は、netgroup(4) のマニュアルページを参照してください。
NIS が使用されているネットワーク上では、NIS マスターサーバー上の netgroup 入力ファイルを使用して、netgroup、netgroup.byuser、netgroup.byhost という 3 つのファイルが生成されます。netgroup マップには、netgroup 入力ファイルの基本情報が入っています。他の 2 つの NIS マップには、マシンまたはユーザーが指定されるとネットグループ情報の検索が迅速に行われるフォーマットで情報が入っています。
netgroup 入力ファイルのエントリのフォーマットは、name ID です。name はネットグループ名であり、ID は、ネットグループに属しているマシンまたはユーザー、あるいはその両方を示します。ネットグループの ID (メンバー) は、コンマで区切っていくつでも指定できます。たとえば、3 つのメンバーが存在するネットグループを作成する場合、netgroup 入力ファイルエントリのフォーマットは、name ID、ID、IDとなります。netgroup 入力ファイルエントリのメンバー ID のフォーマットは、次のようになります。
([-|machine], [-| user], [domain])
machine はマシン名、user はユーザー ID、domain はマシンまたはユーザーの NIS ドメインで、それぞれコンマで区切られます。ドメインエレメントはオプションですが、他の NIS ドメインのマシンまたはユーザーを示す場合には必ず指定します。各エントリではマシンエレメントとユーザーエレメントは必須ですが、ダッシュ (-) は空であることを示すために使用されます。エントリでは、マシンエレメントとユーザーエレメントの関係を示す必要はありません。
netgroup 入力ファイルの 2 つのサンプルエントリを以下に示します。これらの各サンプルエントリでは、admins という名前のネットグループが作成されます。これらの各 admins は、リモートドメイン sales に存在するユーザー hauri と juanita、およびマシン altair と sirius で構成されます。
admins (altair, hauri), (sirius,juanita,sales) admins (altair,-), (sirius,-), (-,hauri), (-,juanita,sales)
さまざまなプログラムでは、ログイン、リモートマウント、リモートログイン、リモートシェル作成時に NIS ネットグループマップを使用してアクセス権チェックを行います。さまざまなプログラムとは、mountd、login、rlogin、rsh などです。login コマンドは、passwd データベース内でネットグループ名を見つけた場合は、ネットグループマップでユーザー分類を調べます。mountd デーモンは、/etc/dfs/dfstab ファイル内でネットグループ名を見つけた場合は、ネットグループマップでマシン分類を調べます。rlogin と rsh (インターフェースを使用するプログラムならどれでも) は、/etc/hosts.equiv または .rhosts ファイル内でネットグループ名を見つけた場合は、ネットグループマップでマシン分類とユーザー分類の両方を調べます。
ネットワークに新しい NIS ユーザーまたはマシンを追加する場合は、netgroup 入力ファイルの該当ネットグループに追加してください。次に、make でネットグループマップを作成し、これを yppush コマンドですべての NIS サーバーに転送してください。ネットグループおよびネットグループ入力ファイル構文の詳細は、netgroup(4) のマニュアルページを参照してください。