next up previous contents
Next: 3.8 クライアントのセットアップ Up: 3.7 サーバーのセットアップ Previous: 3.7.1 マスターとスレーブ

3.7.2 マスター・サーバーのセットアップ

NIS kit を導入すると、標準で automount に関連するファイルも配られるように なってしまいます。本講座では、automount はローカルに設定しますので、その 部分を /var/yp/Makefile からコメントアウトしておきます。

#ident  "@(#)Makefile   1.17    95/07/11 SMI"
#
#----
# It is somewhat confusing to note that Solaris 2.x uses /etc/auto_master
# instead of the 4.x /etc/auto.master file name because of NIS+ treating a
# "." in a special way.
#
# Set the following variable to "-b" to have NIS servers use the domain name
# resolver for hosts not in the current domain. 
#B=-b
B=
DIR =/etc
#
# If the passwd, shadow and/or adjunct files used by rpc.yppasswdd
# live in directory other than /etc then you'll need to change the
# following line.
# DO NOT indent the line, however, since /etc/init.d/yp attempts
# to find it with grep "^PWDIR" ...
#
PWDIR =/etc
DOM = `domainname`
NOPUSH = "" %)
ALIASES = /etc/mail/aliases
YPDIR=/usr/lib/netsvc/yp
SBINDIR=/usr/sbin
YPDBDIR=/var/yp
YPPUSH=$(YPDIR)/yppush
MAKEDBM=$(SBINDIR)/makedbm
MULTI=$(YPDIR)/multi
REVNETGROUP=$(SBINDIR)/revnetgroup
STDETHERS=$(YPDIR)/stdethers
STDHOSTS=$(YPDIR)/stdhosts
MKNETID=$(SBINDIR)/mknetid
MKALIAS=$(YPDIR)/mkalias

CHKPIPE=  || (  echo "NIS make terminated:" $@ 1>&2; kill -TERM 0 )


k:
        @if [ ! $(NOPUSH) ]; then $(MAKE)  $(MFLAGS) -k all; \
        else $(MAKE) $(MFLAGS) -k all NOPUSH=$(NOPUSH);fi

all: passwd group hosts ethers networks rpc services protocols \
netgroup bootparams aliases publickey netid netmasks \
        # c2secure timezone auto.master auto.home

上の例のように最後の2,3行を変更すれば良いでしょう。また、NIS で配る必要のない ターゲットも上の中から削除するなり、移動するなりしておくだけです。

サーバーをセットアップするためには、以下のような手順でスクリプト ypinit を実行します。

1.
まず、シングルユーザモードで起動するか、あるいは現在のNISドメイ ンからの干渉を避けるためプロセスypbindを探し、killしておきます。 また、現在の domainname が設定されている場合には、domainname コマンド で新しい yp ドメインに変更します。 /etc/defaultdomain もついでに設定しておきましょう(起動時に domainname コマンドにファイルの中身が渡されます)。

  # ps -ef | grep yp
  root   306   267  1 16:50:07 pts/0    0:00 grep yp
  root   280     1  0 16:21:45 ?        0:01 /usr/lib/netsvc/yp/ypbind
  # kill 280

セットアップの前に、マシンを再起動した時に正しいドメインに所属するよう /etc/defaultdomainファイルの内容を確認して下さい。次の例は /etc/defaultdomain ファイルの例です。

yp0.summer

次に、現在マシンがどのNISドメインに所属しているかチェックします。

       # domainname
       yp.wakhok.ac.jp

もしこれから設定しようとしているドメインと違う場合、

       # domainname NISのドメイン名

として、正しいドメインに所属させます。

2.
-mオプションをつけてypinitを起動します。
        /usr/sbin/ypinit  -m

ypinitのオプション -mは、 マスター・サーバーとしてセットアップされることを示しています。 以下、対話的にサーバーの設定が続きます。

3.
最初にスレーブ・サーバーにしたいマシンの名前を 聞いてきますから、そのホスト名を1つずつ入力してください。 (入力終了はコントロール+Dです。)

4.
後は作業の確認を行うだけですから、エラーが発生しないことを 確認しながら進んでください。サーバの設定を2度目以降行なう場合、現在の マップデータの内容を破壊して良いかどうか尋ねてきますが、yと答えて下さ い。

5.
ドメインの情報を不正なマシンから取得されないように、 /var/yp/securenetsというファイルを作成します。 このファイルを作成することで、指定した IP アドレスから以外は NIS のサービス を受けることは出来ません。しかし、マスター・サーバ上でスレーブ・サーバも 含めるようにしていないとスレーブ・サーバが情報を受けられなくなるので、 注意しましょう。

このファイルは次のような書式です。

# この行のように#で始まる行はコメントです。
# 次の行のように、ネットワークアドレスを用いてあるネットワーク上のマシン
# すべてにアクセスを許可することができます。
# この場合、第1欄はネットマスク、第2欄がネットワークアドレスです。
255.255.255.0           202.11.100.0
#
# また、次のようにサービスを受ける資格のあるクライアントを1台ずつ
# 列挙することもできます。
# host としても 255.255.255.255 としても、どちらも同じ意味です。
host                    202.11.98.11
host                    202.11.100.21
255.255.255.255         202.11.100.3

6.
ypinit による設定が終わったら、システムを再起動します。



Noriyo Kanayama