このセクションでは、NIS+ ネットワークネームサービスのさまざまな面について説明します。
NIS+ は次の図のような階層型ドメインをサポートします。
NIS+ の各ドメインは、組織の各部分のワークステーション、ユーザー、ネットワークサービスを記述するデータの集合です。NIS+ の各ドメインは、他のドメインとは独立に管理できます。この独立性により NIS+ は、小規模から大規模まで、広い範囲のネットワークで使用できます。
各ドメインは複数のサーバーによってサポートされます。このうち中心となるサーバーをマスターサーバー、バックアップサーバーを複製サーバーといいます。マスターサーバーと複製サーバーの両方で NIS+ プログラムを実行します。オリジナルテーブルはマスターサーバーが保管し、複製サーバーはそのコピーを保存します。
NIS+ は、複製サーバーの増分更新を行います。最初にマスターサーバーを変更すると、次にその変更が自動的に複製サーバーに伝達され、名前空間全体で有効となります。
NIS+ では、情報がマップやゾーンファイルではなくテーブルに保存されます。NIS+ には次の図のような、16 種類の事前定義されたシステムテーブルがあります。
各テーブルにはそれぞれ違う種類の情報が保存されます。たとえば、Hosts テーブルには、ホスト名とインターネットアドレスのペアが保存され、Password テーブルにはネットワークユーザーに関する情報が保存されます。
NIS+ テーブルは、次の 2 つの点で NIS マップから大きく改善されています。1 つは、NIS+ テーブルでは第 1 カラム (「キー」ともいう) だけでなく任意のカラムにアクセスできる点です。このアクセスにより、NIS では必要であった hosts.byname や hosts.byaddr などの複製マップが不要になりました。もう 1 つは、NIS+ テーブルの情報には、テーブルレベル、エントリレベル、カラムレベルの 3 つのレベルでアクセスできる点です。
NIS+ のセキュリティモデルには、承認と認証の 2 つの機能があります。承認については、名前空間上の各オブジェクトごとに、どのような主体にどの種類の操作を承認するかを指定します。名前空間へのアクセスが要求されると、NIS+ はその要求を出した主体の認証を試みます。NIS+ は、要求の発信元を特定後、その特定の主体に対する特定の操作をオブジェクトが承認しているか判定します。NIS+ はこのように、認証情報とオブジェクトごとの承認情報に基づいて、アクセス要求を許すか拒否するかを決定します。
NIS+ はネームサービススイッチと呼ばれる別の機能と連係して動作します。ネームサービススイッチ (単に「スイッチ」ともいう) を使用すると、Solaris ベースのワークステーションで、複数のネットワーク情報サービスから情報を得ることができます。ローカルファイル、/etc ファイル、NIS マップ、DNS ゾーンファイル、NIS+ テーブルから情報が得られます。ネームサービススイッチを使用すると、単にソースを選択するだけでなく、ワークステーションで情報の種類別に異なるソースを使用できます。ネームサービスの設定は、/etc/nsswitch.conf ファイルで行います。
NIS+ は次の表に一覧表示した名前空間を管理するため、全種類のコマンドを提供します。
表 9–1 NIS+ 名前空間管理コマンド
コマンド |
説明 |
---|---|
nischgrp |
NIS+ オブジェクトのグループ所有者を変更する |
オブジェクトのアクセス権を変更する |
|
nischown |
NIS+ オブジェクトの所有者を変更する |
nisgrpadm |
NIS+ グループの作成と削除、グループメンバーリストの表示を行う。また、グループにメンバーを追加または削除したり、グループメンバーかどうかのテストを行う |
NIS+ テーブルの内容を表示する |
|
nisgrep |
NIS+ テーブルのエントリを検索する |
nisls |
NIS+ ディレクトリの内容をリストする |
nismatch |
NIS+ テーブルのエントリを検索する |
nisaddent |
/etc ファイル、または、NIS マップの情報を NIS+ テーブルに追加する |
nistbladm |
NIS+ テーブルの作成や削除を行う。また、NIS+ テーブルのエントリを追加、変更、削除する |
nisaddcred |
NIS+ 主体の資格を作成し、それを Cred テーブルに保存する |
nispasswd |
NIS+ パスワードテーブルに保管されているパスワード情報を変更する。 |
nisupdkeys |
NIS+ オブジェクトに保存されている公開鍵を更新する |
NIS+ のクライアントまたはサーバーを初期化する |
|
NIS+ ディレクトリを作成し、そのマスターサーバーと複製サーバーを指定する |
|
nisrmdir |
名前空間から、NIS+ ディレクトリとその複製を削除する |
org_dir と groups_dir の 2 つのディレクトリを作成し、NIS+ ドメインに対する全種類の NIS+ テーブル (空のテーブル) を作成する。 |
|
rpc.nisd |
NIS+ のサーバープロセス |
NIS+ クライアントの NIS+ キャッシュマネージャを起動する |
|
NIS+ オブジェクトの生存期間の値を変更する |
|
NIS+ オブジェクトのデフォルト値 (ドメイン名、グループ名、ワークステーション名、NIS+ 主体名、アクセス権、ディレクトリ検索パス、生存期間) を一覧表示する |
|
nisln |
2 つの NIS+ オブジェクト間のシンボリックリンクを作成する |
nisrm |
ディレクトリ以外の NIS+ オブジェクトを名前空間から削除する |
nisshowcache |