NIS

NISとは

NIS(Network Information Service)は、特定の計算機(NISサーバ)が管理するファイルの内容を、他の計算機(NISクライアント)に配布する仕組みである。NISを使用することで、ユーザ情報やネットワーク設定を一元管理でき、複数の計算機に同じ設定を個別に行う手間を省くことができる。

以下はNISで管理できるファイルの例である。

NISによって個人のログイン名とパスワードを管理できる。これにより、すべてのマシンに同一のログイン名とパスワードでログインできる。各マシンに個別にユーザを登録する必要はない。

NISドメイン

NISによって一元管理されるファイルを利用するUNIX計算機の集まりをNISドメインと呼ぶ。NISドメインはドメイン名によって区別される。

NISドメインのセキュリティ

NISドメイン名が判明すると、NISで管理している情報(パスワードハッシュを含む)を取得される可能性がある。以下の点に注意すること。

NISサーバ

NISを運用するためには、サーバとなるコンピュータが少なくとも1台必要である。これをNISサーバと呼び、NISドメインにおける情報を一括管理する役割を持つ。NISサーバは同一ドメイン内に複数台設置できる。

マスターサーバとスレーブサーバ

複数のNISサーバのうち1台はマスターサーバとして動作させ、残りはスレーブサーバとして動作させる。

マスターサーバはNISクライアントが参照するオリジナルのファイルを保持・管理する。スレーブサーバはマスターサーバのデータのコピーをdbmフォーマットで保持する。dbm(database management)は高速な検索を可能にするデータベース形式である。

マスターサーバは定期的にNISデータベースのコピーをスレーブサーバに送信する。NISクライアントは、マスターサーバまたはスレーブサーバのうち、最初にレスポンスを返したサーバに接続する。スレーブサーバを設置することで、マスターサーバの負荷分散と障害時の可用性向上が実現できる。

NIS関係のコマンド

NISのデータを更新するには

マスターサーバはデータをテキスト形式で保持している。このデータを変更した場合、dbm形式への変換とスレーブサーバへの再配布が必要となる。

データは/var/yp/nis.inputs/以下に格納されている。

例えば、新しいユーザを追加する場合は以下の手順で行う。

  1. NISマスターサーバmoonにログインする

  2. /var/yp/nis.inputs/master.passwdにエントリを追加する

  3. /var/yp/ディレクトリでmakeコマンドを実行する(dbm形式への変換とスレーブへの配布が自動で行われる)

クライアントでNISの設定を有効にするには

以下の設定により、クライアントはNISサーバからユーザ情報やグループ情報を取得できるようになる。

本日の課題

NISのスレーブサーバを起動し、動作を確認する。

スレーブサーバの構築手順

動作確認手順

後片付け

注意すべき点

本来は以下の設定が必要だが、今回は実習のため実施しない。

これらを実施しない場合、マスターサーバでデータベースが更新されても、今回構築したスレーブサーバには新しいデータベースが配布されない。

参考文献

    最新UNIXハンドブック、伊藤 和人著
    フリーUNIXで作るネットワークサーバ構築ガイド、國安和広+秀和システム出版編集部編著
    http://www.freebsd.org/ja/handbook/nis.html
    http://www.kuis.kyoto-u.ac.jp/imel/tebiki/rvsettei/node2.html
作者:牧之内研 修士1年 兼子 譲,2002年7月4日
校閲を実施