安定したコンピュータ業務のために。お気軽にお問い合わせください。

RedHat Enterprise Linux (RHEL) でのNISスレーブサーバ構築

NISサービスは古くから利用されており、その歴史的背景から同一セグメント内での利用に限定されていました。その理由として、NISサーバを参照する場合、ネットワークブロードキャストを利用していたことが挙げられます。
最近のネットワークはより複雑化しており、小規模ネットワークにおいても同一セグメント内で完結するネットワークは少なくなってきています。NISサーバの動作も日々進歩しており、RHELで利用できるNISサービスはクライアント側の設定により、セグメントを超えたNISサービス利用が可能であり、また複数のNISドメインサーバを指定することができます。
ただし、ここでは小規模の同一セグメント内NISサービス構築を説明するにとどめます。また、サービスの冗長性を確保するためにNISスレーブサーバを導入することを想定します。したがいまして、対象とするネットワークは以下のような構成になります。
NISサービスネットワーク
NISサーバからユーザ情報を参照し、各サーバ(アプリケーションサーバ、ファイルサーバ・・・)のアカウントを管理します。さらに、統合認証システムを構築する際にはファイルサーバ上でNFSサービスを提供することが期待されますが、ここでは割愛します。

NISスレーブサーバ構築

NISスレーブサーバはNISマスターサーバが何らかの原因で機能停止になった場合に認証サービスをマスターサーバの代わりに提供するサービスです。NISマスターサーバが停止する原因として、
1.ネットワーク障害
2.ハードウェア障害
3.攻撃による停止
4.人為的操作ミス
などが考えられますが、いずれにせよシステム規模が大きくなるに従って負荷分散などの効果もありますのでNISサーバ構築をお勧めします。

NISサービスプログラムのインストール

up2dateコマンド、yumコマンドなどを利用してNISサービスをインストールします。
# up2date install ypserv
# up2date install yp-tools
# up2date install ypbind
つぎに、NISサービス提供用の設定ファイル編集並びに設定を行います。

NISドメインの設定

NISサービスは認証単位をドメインで管理します。したがいまして同一NISドメインに所属するコンピュータのみがNIS認証を利用できます。NISドメインの設定はypdomainnameコマンドで行います。
# ypdomainname NISDOMAIN
NISDOMAINの箇所は適宜決定してください。設定されたNISドメイン名はypdomainnameコマンドで確認できます。
# ypdomainname
NISDOMAIN
これだけの設定であればOS再起動時にNISドメインが設定されませんので、システム起動時にNISドメイン設定が行われるように以下の設定ファイルを修正します。
/etc/sysconfig/networkに下記一行を追記します。
NISDOMAIN=NISDOMAIN

NIS利用範囲(ネットワーク)の設定

NISを利用する範囲を限定することで、不要なNISサーバへのアクセスを防ぐことができます。この設定は、設定ファイル
/var/yp/securenetsに下記一行を追加することで実現します。
255.255.255.0 192.168.0.0
ネットワーク範囲は適切に設定してください。

NISサーバ設定ファイルの変更

小規模ネットワークでNISサーバを構築する場合、その高速性に比べてその利便性を向上するため、キャッシュ設定を停止することをお勧めします。これにより、ユーザアカウントの追加・削除時の動作不具合、パスワード変更反映の即時実行が期待されます。
設定は、/etc/ypserv.confの下記行を変更します。
files: 0
#files: 30
また、同ファイルに対してNISマスターサーバのIPアドレスを以下のように追記します。
trusted_master: 192.168.0.1
これにより、NISサーバからのデータベースアップデートを受け付けることができます。

NISサービスの起動

NISサーバ機能を提供するために、rpcgssd、rpcidmapd、ypservサービスを起動します。また、自身がNIS情報を参照できるようにypbindサービスを起動します。
# /sbin/chkconfig rpcgssd on
# /sbin/chkconfig rpcidmapd on
# /sbin/chkconfig ypserv on
# /sbin/chkconfig ypbind on
# /sbin/service rpcgssd start
# /sbin/service prcidmapd start
# /sbin/service ypserv start
# /sbin/service ypbind start

NISデータベースの初期化

ypinitコマンドを利用し、初期NISデータベースを構築します。
/usr/lib/yp/ypinit -s hpcgwi
We will need a few minutes to copy the data from nismaster.
Transferring services.byservicename...
Trying ypxfrd ... success

Transferring hosts.byname...
Trying ypxfrd ... success

Transferring group.byname...
Trying ypxfrd ... success

Transferring passwd.byname...
Trying ypxfrd ... success

Transferring passwd.byuid...
Trying ypxfrd ... success

Transferring mail.aliases...
Trying ypxfrd ... success

Transferring services.byname...
Trying ypxfrd ... success

Transferring hosts.byaddr...
Trying ypxfrd ... success

Transferring netid.byname...
Trying ypxfrd ... success

Transferring group.bygid...
Trying ypxfrd ... success


nisslave's NIS data base has been set up.
If there were warnings, please figure out what went wrong, and fix it.

At this point, make sure that /etc/passwd and /etc/group have
been edited so that when the NIS is activated, the data bases you
have just created will be used, instead of the /etc ASCII files.
以上でNISスレーブサーバの設定は完了です。ここで、NISマスターサーバ、NISスレーブサーバのホスト名はそれぞれnismaster、nisslaveとしました。

NISマスターサーバ設定変更

NISスレーブサーバを構築した場合、NISマスターサーバ上でNISユーザが追加・削除されたことをNISスレーブサーバに通知する必要があります。この動作を設定するため、NISマスターサーバの設定を一部変更します。

設定変更は、NISマスターサーバの/var/yp/Makefile中の下記一行を修正するのみです。
NOPUSH=false
#NOPUSH=true

NIS構築関連メニュー

NISマスターサーバ構築
NISシステムの主要サーバであるマスターサーバ(ypserv、yppasswddサービス提供)構築手順を紹介しています。
NISスレーブサーバ構築
NISサービスの安定化を行うため、冗長サーバとしてNISスレーブサーバを構築する手順を紹介しています。
NISクライアント設定
NISによる認証を行うためのクライアント設定手順を紹介しています。



パートナー



ニュースリリース | 会社概要 | プライバシーポリシー | リンク | ©2002-2008 Integrated Systems Co. Ltd. All Rights Reserved.