第21章 NISの使用

目次

21.1. NISサーバの設定
21.2. NISクライアントの設定

概要

ネットワーク上の複数UNIXシステムが共通のリソースにアクセスするようになると、すべてのユーザおよびグループ識別情報がネットワーク上のすべてのコンピュータで一致していることが重要になります。ネットワークはユーザにとって透過的でなければなりません。すなわち、使用するコンピュータに関係なく、常に、まったく同じ環境で作業できる必要があります。これを実現するのが、NISおよびNFSサービスです。NFSはネットワーク上にファイルシステムを分散させるシステムです。これについては、第22章 NFS共有ファイルシステムで説明します。

NIS (Network Information Service)は、/etc/passwd/etc/shadow/etc/groupの各ファイルにネットワーク越しにアクセスできるようにするデータベースサービスと考えることができます。NISの用途はこれ以外にもありますが(/etc/hosts/etc/servicesといったファイルにアクセスできるようにするなど)、ここでは触れません。NISはよくYPと呼ばれますが、これは、NISがちょうどネットワークの「イエローページ」のような役割を果たすためです。


21.1 NISサーバの設定

NIS情報をネットワーク上で配信するには、すべてのクライアントと通信する単一のサーバ(マスタ)を使用するか、またはNISスレーブサーバにマスタからこの情報を要求させ、各クライアントに転送させることができます。

21.1.1 NISマスタサーバの設定

ネットワーク上にNISマスタサーバを設定するには、以下の手順に従います。

  1. [YaST]+[ネットワークサービス]+[NISサーバ]の順に選択します。

  2. ネットワーク上に1つのNISサーバのみ必要な場合、またはこのサーバが続くNISスレーブサーバのマスタとして機能する場合は、[Install and set up NIS Master Server]を選択します。YaSTは必要なパッケージをインストールします。

    [Tip]ティップ

    NISサーバソフトウェアがマシン上にすでにインストールされている場合は、[Install and set up NIS Master Server]をクリックしてNISマスタサーバの作成を開始します。

    図 21.1 NISサーバの設定

    NISサーバの設定
  3. 基本NISセットアップオプションを決定します。

    1. NISドメイン名を入力します。

    2. [This host is also a NIS client]を選択して、ホストがNISクライアントとしても機能するかどうかを定義します。これにより、ユーザはログインおよびNISサーバからのデータにアクセスできるようになります。

      [Changing of passwords]を選択して、ネットワーク上のユーザ(ローカルユーザとNISサーバで管理されているユーザの両方)がyppasswdコマンドを用いてNISサーバ上のパスワードを変更できるようにします。

      これにより、[Allow Changes to GECOS Field]および[Allow Changes to Login Shell]オプションが選択可能になります。前者を選択すると、ユーザがypchfnコマンドを使用して自分の名前とアドレスの設定を変更できるようになります。後者を選択すると、ユーザが、ypchshコマンドを使用してデフォルトのシェルを(たとえばbashからshに)変更できるようになります。 新規のシェルは、/etc/shellsで事前定義されているエントリの1つである必要があります。

    3. NISサーバがサブネット内のNISスレーブサーバへのマスタサーバとして機能するようにする場合は、[Active Slave NIS Server exists]を選択します。

    4. YaSTでNISサーバのファイアウォール設定が適用されるようにするには、[Open Ports in Firewall]を選択します。

      図 21.2 マスタサーバの設定

      マスタサーバの設定
    5. [次へ]をクリックしてこのダイアログを終了するか、または、[Other global settings]をクリックして他の設定を行います。[Other global settings]には、NISサーバのソースディレクトリ(デフォルトでは/etc)の変更などが含まれます。また、パスワードを結合することもできます。ここで[はい]を選択して、ユーザデータベースのビルドに/etc/passwd/etc/shadow、および/etc/groupの各ファイルが使用されるようにします。また、NISで提示される最小のユーザおよびグループIDも決定します。設定を確認して前の画面に戻るには、[OK]を選択します。

      図 21.3 ディレクトリの変更とNISサーバ用の各ファイルの同期化

      ディレクトリの変更とNISサーバ用の各ファイルの同期化
  4. 前の画面で[NIS スレーブサーバが存在する]を選択した場合は、スレーブとして使用するホスト名を入力して[次へ]をクリックします。

  5. スレーブサーバを使用しない場合は、スレーブ設定を省略して、データベース設定のダイアログに進んでください。ここでは、マップを指定します。マップとは、NISサーバからNISクライアントに転送される部分データベースのことです。通常は、デフォルトの設定のままで十分です。[次へ]をクリックして、このダイアログを終了します。

  6. いずれのマップが使用できるかを確認し、続行する場合は、[次へ]をクリックします。

    図 21.4 NISサーバマップの設定

    NISサーバマップの設定
  7. NISサーバへのクエリが許可されているホストを入力します。ホストは、適切なボタンをクリックして追加、削除、編集できます。ここでは、NISサーバにリクエストを送信できるネットワークを指定します。通常は、内部ネットワークを指定します。その場合は、次の2つのエントリが必要です。

    255.0.0.0     127.0.0.0
    0.0.0.0       0.0.0.0
         

    最初のエントリによって、自分自身、つまりNISサーバからの接続が許可されます。2番目は、すべてのホストがサーバに要求を送信できるようにします。

    図 21.5 NISサーバに対するリクエスト送信許可の設定

    NISサーバに対するリクエスト送信許可の設定
  8. [完了]をクリックして変更を保存し、セットアップを終了します。

21.1.2 NISスレーブサーバの設定

ネットワーク上に適切なNISスレーブサーバを設定するには、以下の手順に従います。

  1. [YaST]+[ネットワークサービス]+[NISサーバ]の順に選択します。

  2. [Install and set up NIS Slave Server]を選択し、[次へ]をクリックします。

    [Tip]ティップ

    NISサーバソフトウェアがマシン上にすでにインストールされている場合は、[Create NIS Slave Server]をクリックしてNISスレーブサーバの作成を開始します。

  3. NISスレーブサーバの基本セットアップを完了します。

    1. NISドメインを入力します。

    2. マスタサーバのホスト名またはIPアドレスを入力します。

    3. ユーザがこのサーバにログインできるようにする場合は、[This host is also a NIS client]を設定します。

    4. [Open Ports in Firewall]を選択して、ファイアウォール設定を適用します。

    5. [次へ] をクリックします。

  4. NISサーバへのクエリが許可されているホストを入力します。ホストは、適切なボタンをクリックして追加、削除、編集できます。ここでは、NISサーバにリクエストを送信できるネットワークを指定します。通常、これはすべてのホストです。その場合は、次の2つのエントリが必要です。

    255.0.0.0     127.0.0.0
    0.0.0.0       0.0.0.0
         

    最初のエントリによって、自分自身、つまりNISサーバからの接続が許可されます。2つ目のエントリによって、同一ネットワークにアクセス可能なすべてのホストがNISサーバにリクエストを送信することを許可されます。

  5. [完了]をクリックして変更を保存し、セットアップを終了します。