この文書では NIS サーバとしては "ypserv
" の設定方法のみを
記します。
NIS サーバのソフトは以下にあります。
ypserv-1.2.5.tar.gz
です。
http://www-vt.uni-paderborn.de/~kukuku/linux/nis.html には、より詳細な情報と最新版のソースがあります。
サーバのセットアップ方法は trad-NIS、 NYS どちらの場合でも同じです。
コンパイルして ypserv
と makedbm
を作ります。その後、まず最初
に NIS/NYS を通して共有させるファイルを決めて下さい。そして
ypMakefile
に必要な項目を付け加えたり、必要無い項目を削除したりし
ます。できたら ypMakefile
を /var/yp
ディレクトリに
Makefile
という名前でコピーして下さい。
次に /var/yp/securenets と /etc/ypserv.conf を編集します。詳細に関して
は、 ypserv
(8) と ypserv.conf
(5) のマニュアルページを読んで
下さい。
ポートマッパ(rpc.portmap
)が動いているか確認して下さい。確認でき
たら ypserv
を動かします。
% rpcinfo -u localhost ypserv
というコマンドを実行してみて、
program 100004 version 2 ready and waiting
と言う出力が出ることを確認して下さい。
ここで NIS (YP) データを作成します。マスターサーバで以下を実行して下さい。
% /usr/lib/yp/ypinit -m
スレーブサーバでは、 ypwhich -m
が機能することを確認してから以下を
実行します。
% /usr/lib/yp/ypinit -s masterhost
これでおしまい、サーバは動作しているはずです。
「スレーブサーバ」上では root の crontab
を編集し、以下のような行
を追加しておくと良いかもしれません。
20 * * * * /usr/lib/yp/ypxfr_1perhour
40 6 * * * /usr/lib/yp/ypxfr_1perday
55 6,18 * * * /usr/lib/yp/ypxfr_2perday
万が一マスタサーバでの更新の際にスレーブがダウンしていてデータを
受け損なっても,これによって NIS マップを最新に保つことができます。
NIS サーバへのアクセスを制限したい場合は、 NIS サーバのホストをク
ライアントとしても実行する必要があります。つまり ypbind
を実行し
て +
の付いたエントリをパスワードファイル /etc/passwd
の
半ばに追加します。
ライブラリ関数は NIS エントリ以降に置かれた通常のエントリを全て無視し、
残りを NIS を通して取得します。このようにすると NIS のアクセスルールを
管理することができます。例を示します。
root:x:0:0:root:/root:/bin/bash
daemon:*:1:1:daemon:/usr/sbin:
bin:*:2:2:bin:/bin:
sys:*:3:3:sys:/dev:
sync:*:4:100:sync:/bin:/bin/sync
games:*:5:100:games:/usr/games:
man:*:6:100:man:/var/catman:
lp:*:7:7:lp:/var/spool/lpd:
mail:*:8:8:mail:/var/spool/mail:
news:*:9:9:news:/var/spool/news:
uucp:*:10:50:uucp:/var/spool/uucp:
nobody:*:65534:65534:noone at all,,,,:/dev/null:
+miquels::::::
+:*:::::/etc/NoShell
[ All normal users AFTER this line! ]
tester:*:299:10:Just a test account:/tmp:
miquels:1234567890123:101:10:Miquel van Smoorenburg:/home/miquels:/bin/zsh
ユーザ tester
は存在しますが、シェルが /etc/NoShell
にな
ります。 miquels
は通常のアクセス権を持つことになります。
別法として、 /var/yp/Makefile
ファイルを編集し、 NIS が使うパス
ワードファイルを別に指定することができます。大きなシステムでは、 NIS
のパスワードファイルとグループファイルは通常 /var/yp/ypfiles
に置くことが多いようです。このようにするとパスワードファイル関連の管理ツールは
使えなくなります。つまり passwd、 chfn、 adduser
などに対し、特
別に設定されたツールが必要になります。
しかし yppasswd、 ypachsh、 ypchfn
は当然動作します。
NIS サーバ yps
の設定は前のセクションを参考にして下さい。大体似て
いますが完全に同じではないので、ypserv
の説明を適用する際には注意
するようにして下さい。 yps
はもはや誰もサポートしていませんし、い
くつかセキュリティホールも存在しています。使うべきではありません!
yps
のソフトは以下のサイトにあります。
ファイル名は
yps-0.21.tar.gz
です。
ユーザがパスワードを変更したときには、 NIS のパスワードデータベースや、
それに依存した他の NIS データベースも変更されなければなれません。これ
を行なうのが rpc.yppasswdd
です。このプログラムはパスワード変更を取り
扱い、 NIS の情報が正しく更新されるようにします。現在
rpc.yppasswdd
は ypserv 1.2.5 の一部となっています。別パッケージ
になっている yppasswd-0.9.tar.gz
や yppasswd-0.10.tar.gz
な
どは古いので使う必要はありませんし、また今後使うべきではありません。
ypserv 1.2.5 の rpc.yppasswdd
は shadow を完全にサポートしていま
す。 yppasswd
は yp-tools-1.2.tar.gz
に入っています。
ypserv-1.2.5.tar.gz
にも同じバージョンのソースコードが入っています。