FreeBSD QandA 621
Q. NIS を利用して group の情報を共有しています。NIS server の /etc/group
の wheel にユーザ hoge を追加しました。NIS client で "ypcat group" す
ると wheel に hoge が追加されていることが確認できるのですが、NIS client
上で hoge が su で root になることが出来ません。
A. su コマンドは、/etc/group の先頭から順に検索し、最初に見つかったグルー
プ番号 0 の グループ (wheel) のエントリを元に、ユーザのチェックを行いま
す。ここで、/etc/group の情報を NIS で共有している場合、NIS client の
/etc/group に追加した "+:::" の行の部分が NIS が提供する情報に置き換えら
れます。このため、wheel グループの行が +::: より前にあると、NIS で提供さ
れる wheel グループの情報が無効になります。
一般的に、NIS で共有したいグループは、NIS クライアントの /etc/group か
ら削除します。しかし、wheel グループはシステムにとって特別なグループのた
め、起動時や NIS サーバが見つからない場合に問題が生じるかも知れません。
NIS クライアントの /etc/group の先頭に "+wheel:::" あるいは "+:::" の
行を追加することで、問題を回避できるでしょう。ただし、/etc/group と
NIS マップの検索順序が変化しますので、他のエントリに対する影響についても
考慮してください。また、root 権限を持つことができるユーザを規定する
wheel グループの情報を外部のホストに依存すると、セキュリティ的に弱くなる
という点についても留意してください。
管理の手間を厭わないならば、インストール時から既に /etc/group に書かれ
ているグループについては、NIS で共有せず、各 NIS クライアントの
/etc/group に NIS サーバと同様の記述をするようにしましょう。
間違い・追加情報を見付けた場合は、
修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで
お知らせください。