本セミナーは,Linuxの基本事項を含めてSambaの使い方を分かりやすく解説する。引き続き,WindowsからSambaへの移行手順を解説する。
NTドメインからSambaのドメインに移行する手順は以下の通りである。
(I)(PDCとするべき)SambaマシンをNTドメインに追加
(II)NTドメインからユーザー情報,グループ情報を抽出
(III)ユーザー情報,グループ情報をLDAPへ投入
(IV)共有データをNTからSambaへコピー
(V)NTドメインのSID(セキュリティ識別子)をSambaへコピー
(VI)SambaマシンをLDAP用に修正し,PDCとして設定
(I)については前回解説したので,(II)以降を順次解説していこう。
移行手順
(II)NTドメインからユーザー情報,グループ情報を抽出ユーザー情報/グループ情報をNTドメインから取り出す。それには,pwdump2というコマンド(後述)などを利用して情報を出力させ,ファイルに保存すればよい。なお,移行終了後に,以下のコマンド(Samba上でユーザー情報やグループ情報を保存)を実行して結果を比較し,正しく移行できていることを確認すると良いだろう。
# wbinfo -u > wbinfo-u.txt
# wbinfo -g > wbinfo-g.txt
# getent passwd > passwd.txt
# getent group > group.txt
OpenLDAPの導入
複数台のSambaを使ってWindowsドメイン環境を構築するには,LDAPの導入が前提になる。Samba 2.2のLDAPSAM機能は,OpenLDAP2.0対応として開発されているが,実際には米Oracle社や米Netscape Communications社,米Novell社,米IBM社のLDAPサーバーにも対応している。Sambaに多少変更を加える必要はあるが,いずれのLDAPサーバーも問題なく利用できる。現在,OpenLDAP2.1を利用する場合もSambaに手を加える必要があるので,ここではSambaを変更することなく使えるOpenLDAP2.0.27を利用した方法を紹介する。
Red Hat系のディストリビューションであれば,以下の場所からOpenLDAPのRPMをダウンロードする。
・MIRACLE LINUXの場合
http://www.miraclelinux.com/support/update/data/openldap.html
・Red Hat Linuxの場合
そして,入手したRPMを以下のようにインストールする。
# rpm -Uvh openldap-2.0.27*.i386.rpm
# rpm -Uvh openldap-clients-2.0.27*.i386.rpm
# rpm -Uvh openldap-devel-2.0.27*.i386.rpm
# rpm -Uvh openldap-servers-2.0.27*.i386.rpm
# rpm -Uvh nscd-2.3.2*.i386.rpm
# rpm -Uvh nss_ldap*.i386.rpm
ソースから導入する場合は,まずソース・コードをhttp://www.openldap.org/などから入手する。最新バージョンは2.1であるが,SambaのLDAPSAM機能は2.1に正式対応していないので,2.0系(最新は2.0.27)を使うと良いだろう。
(1)ソース・コードをダウンロードしたら,以下のコマンドで伸張・展開する。
# tar xfz openldap-VERSION.tgz
(VERSIONは入手したもののバージョン番号)
(2)展開後に,ソース・コードを格納したディレクトリに移動する。
# cd openldap-VERSION
(3) コンパイル・オプションを指定する。
# [env settings] ./configure [options]
なお,optionsで指定できるコンパイル・オプションは
# ./configure --help
で確認できる。
図1●configureオプションの例 |
以降は,図1[拡大表示]に示したオプションを指定してコンパイル(LSB:Linux標準に準拠)したことを前提に解説を進める。
(4) 依存関係を構築する。
# make depend
(5)モジュールをコンパイルする。
# make
(6)単体テストを実施する。
# make test
(7) システムにインストールする。
# make install
以上で,ソースからの導入は完了である。
続いて,Sambaの認証にOpen LDAPが使われるよう環境を整える。
Samba-LDAPの導入
先々月号で,SambaのWinbind機能を使ってWindowsドメイン環境にSambaを導入したが,ここからはSambaをLDAPSAM機能版に変更し,Sambaによるドメインを構築する。
Sambaの認証にLDAPを使用するには,専用のコンパイル・オプション(--with-ldapsam)が必須なので,通常のRPMなどは使用できない(普通のディストリビューションに同こんされているSambaは標準ではLDAPに対応していない)。
LDAPに対応した,コンパイル済みのRPMとソースRPMが
http://www.miraclelinux.com/support/update/data/samba-ldap.html
にあるので,これを使用していただきたい。