Solaris のシステム管理 (ネーミングとディレクトリサービス : NIS+ 編)

NIS+ のセキュリティ - 概要

NIS+ のセキュリティは NIS+ の名前空間全体にかかわっています。セキュリティと名前空間を別に設定することはできません。このため、セキュリティの設定方法は名前空間の各構成要素を設定する手順と密接に関係することになります。一度 NIS+ のセキュリティ環境を設定すると、その後はユーザーの追加および削除、アクセス権の変更、グループメンバーの再割当やネットワーク展開を管理するために必要なその他すべての管理ルーチンタスクを実行できます。

NIS+ のセキュリティ機能は名前空間内の情報と、名前空間そのものの構造を不正アクセスから保護するものです。このセキュリティ機能がなければ、どんな NIS+ クライアントであっても名前空間に保存された情報を獲得することも変更することもできないだけでなく、ダメージを与える可能性があります。

NIS+ セキュリティには次の 2 つの機能があります。

NIS+ のセキュリティ機能は 2 段階のプロセスを用意しています。

  1. 「認証 (authentication)」。NIS+ は資格 (credential) を使ってユーザーを確認します。

  2. 「承認 (authorization)」。承認プロセスがユーザー ID を確認すると、NIS+ はクラスを判定します。NIS+ オブジェクトまたはサービスに対して何が行えるのかは、ユーザーがどのクラスに属しているかに依存します。これは UNIX の標準的なファイルおよびディレクトリのアクセス権システムと同様の考え方に基づいています (クラスの詳細は、「承認クラス」を参照)。

このプロセスは、マシン A のルート権限により su コマンドを使って、第 2 の NIS+ アクセス権で NIS+ オブジェクトにアクセスすることを防ぐものです。

しかしながら NIS+ は、他人のユーザーログインパスワードを知っている者が、そのユーザーになりすましてユーザー ID と NIS+ アクセス権を使用することを妨げることはできません。またルート権限を持つユーザーが同一マシンからログインしている別のユーザーになりすますのを防ぐこともできません。

図 11–2 に、このプロセスの詳細を示します。

図 11–2 NIS+ セキュリティプロセスの概要

この図は、ディレクトリオブジェクトの要求および資格をクライアントからサーバーに送信するプロセスを示しています。

NIS+ の主体について

NIS+ 主体とは、NIS+ サービスに要求をするエンティティ (クライアント) のことです。NIS 主体には、クライアントマシンに一般ユーザーとしてログインしたユーザー、スーパーユーザーとしてログインしたユーザー、NIS+ クライアントマシンにおいてスーパーユーザー特権で動作しているプロセスを含みます。つまり NIS+ 主体は、クライアントユーザーである場合と、クライアントマシンである場合とがあります。

NIS+ の主体は、NIS+ サーバーから NIS+ サービスを提供する主体を指すこともあります。すべての NIS+ サーバーは NIS+ クライアントにもなるので、サーバーが NIS+ の主体となる場合もあります。

NIS+ セキュリティレベル

NIS+ サーバーは、2 つのセキュリティレベルのどちらかで動作します。セキュリティレベルにより、要求を送信して認証を取得しなければならない資格主体の種類が決まります。NIS+ は、最高セキュリティレベル (セキュリティレベル 2) で動作するように設計されています。レベル 0 は、テスト、設定、およびデバッグのときにだけ使用します。セキュリティレベルについては、表 11–1 を参照してください。

表 11–1 NIS+ セキュリティレベル

セキュリティレベル 

目的 

セキュリティレベル 0 は、NIS+ 名前空間の初期テストと初期設定を行うレベル。セキュリティレベル 0 で動作している NIS+ サーバーは、ドメイン内の全 NIS+ オブジェクトに対する完全なアクセス権をどの NIS+ 主体にも与える。レベル 0 はシステム管理者だけが設定管理のためにだけ使用する。レギュラーユーザーはネットワークにおける通常のオペレーションに使用できない 

セキュリティレベル 1 は AUTH_SYS セキュリティを利用する。このレベルは NIS+ によってサポートされていないため、利用すべきではない 

セキュリティレベル 2 はデフォルトで、NIS+ が現在提供している最高レベルのセキュリティ。DES 資格を使用する要求だけを認証する。資格を持たない要求には未認証クラスが与えられ、未認証クラスに割り当てられたアクセス権が与えられる。無効な DES 資格を使用する要求は再試行される。有効な DES 資格の獲得に繰り返し失敗すると、無効資格を持った要求として認証エラーになる(資格が無効になる場合、要求をした主体に対してそのマシンで keylogin が実行されていない、クロックの同期がとれていない、鍵が不一致であるなどの原因が考えられる)。 

セキュリティレベルとパスワードコマンド

Solaris リリース 2.0 から 2.4 の環境では、nispasswd を使用してパスワードを変更します。ただし、資格がなければ nispasswd は機能しません (より上位のレベルでの資格が残っている場合を除き、セキュリティレベル 0 では機能しない)。Solaris リリース 2.5 以降の場合は、セキュリティレベルや資格ステータスにかかわらず、passwd コマンドを使ってパスワードを変更します。