(注:記事は執筆時の情報に基づいており,現在では異なる場合があります)

(8)WinbindとSambaの起動

写真2●Active Directory ユーザーとコンピュータ
Windows 2000サーバーでのユーザー管理に利用するツールである。
写真3●wbinfoの実行例
写真4●SWAT STATUSページの表示例
odagiriがwinbindを使ってログインしている。

 以上で,下準備は終了である。後は,各マシンで次のようにwinbindデーモンとSambaプロセス(nmbd,smbdデーモン)を動かすだけだ。

# service smb start
# service winbind start

(9)ユーザーの追加

 本講座の第3回で紹介したように,Sambaのデフォルトのユーザー管理方式を利用する場合は,LinuxユーザーとSambaユーザーを二重に登録し,それぞれにパスワードを設定する必要があった。しかし,Winbindを利用する場合は,PDCとなるWindows NT/2000サーバーにユーザーを追加するだけで,Linuxへのtelnetやftp,sshログインもSambaのファイル共有も同じIDとパスワードで利用できる(Linux/Sambaの設定は必要ないが,ユーザー・ホーム機能を使用する場合やtelnet/sshログインする場合にはユーザーのホーム・ディレクトリを作成する必要がある)。

 Windows NT4.0サーバーでのユーザー管理には,「ドメインユーザーマネージャ」(usrmgr.exe)を,Windows 2000サーバーでのユーザー管理には「Active Directory ユーザーとコンピュータ」(写真2[拡大表示] )を用いる。

(10)wbinfo

 Winbindから各種情報を取り出すためのコマンドがwbinfoである(写真3[拡大表示])。このコマンドにより,Winbindの設定がうまくいっているかどうかを確認できる。使用方法は以下の通りである。

●コマンドの文法

wbinfo [-u] [-g] [-h NETBIOS名] [-i IPアドレス] [-n ユーザー名/グループ名] [-s セキュリティ識別子] [-U ユーザーID] [-G グループID] [-S セキュリティ識別子] [-Y セキュリティ識別子] [-t] [-m] [-r ユーザー名] [-a ユーザー名%パスワード] [-A ユーザー名%パスワード]

●引数の意味

●-u

 Windows NTドメイン内で利用できる全ユーザーをリスト・アップする。信頼関係を結んだすべてのドメインのユーザーもリストに加わる。この操作では,winbindデーモンから見えないユーザーのIDは取得できない。

●-g

 Windows NTドメイン内で利用できる全グループをリスト・アップする。信頼関係を結んだドメインのグループもリストに加わる。この操作ではwinbindデーモンから見えないグループのIDは取得できない。

●-n ユーザー名(またはグループ名)

 指定された名前に対応するSID(セキュリティ識別子)を問い合わせる。winbindデーモンの区切り文字を使って,ユーザー名の前にドメイン名を付加可能。例えば,-n CWDOM1/Administratorでは,ドメインCWDOM1のAdministratorユーザーを問い合わせる。ドメインに何も指定しなかったときには,smb.confのworkgroupパラメータの値が使用される。

●-s セキュリティ識別子

 -nオプションの逆の働きをするもので,指定されたSIDに対応する名前を返す。SIDには,例えば“S-1-5-21-1455342024-3071081365-2475485837-500”のように,Microsoft形式でのASCII文字列を指定する。

●-U ユーザーID

 UNIX/LinuxのユーザーIDをWindowsのSIDに変換する。指定されたuidがwinbindに与えられたuidの範囲内でない場合は,エラーになる。

●-G グループID

 UNIX/LinuxのグループIDをWindowsのSIDに変換する。指定されたgIDがwinbind に与えられたgidの範囲内でない場合は,エラーになる。

● -S sid

 SIDをUNIX/LinuxのユーザーIDに変換する。SIDがwinbindデーモンのマップ・テーブルに存在しない場合は,エラーになる。

●-Y sid

 SIDをUNIX/LinuxのグループIDに変換する。SIDがwinbindデーモンのマップ・テーブルに存在しない場合は,エラーになる。

●-t

 SambaサーバーがsmbpasswdコマンドによってWindowsNTドメインに参加したときに作成されたマシン・アカウントが機能しているかどうかをテストする。

●-m

 信頼関係を結んでいるドメインの一覧を表示する。このリストには,サーバーがプライマリ・ドメイン・コントローラとなっているWindows NTドメインは含まれない。

●-r ユーザー名

 ドメイン・コントローラに定義されたユーザーが所属するグループID一覧を表示する。

●-a ユーザー名%パスワード

 Winbind経由でユーザー名とパスワードの認証を試みて,そのプロトコルと結果を表示する。

●-A ユーザー名%パスワード

 Winbind経由でユーザー名とパスワードをドメイン・コントローラに格納する。

(11)Windowsクライアントからの使用方法

 次の作業を行うと,Sambaマシンが(ドメインに参加している)Windowsサーバーと同様に利用できるようになる。

●クライアントがWindows NT/2000/XPの場合は,「(6)Windows NT4.0/2000 Serverでの設定」で述べたように,それらクライアントをドメインに参加させる設定を実施する。

●ドメイン・サーバーにドメイン・ユーザーを登録する。ドメイン・ユーザーとして登録してあれば,WindowsクライアントおよびSambaマシンにはユーザー登録をする必要がない。

●ユーザー・ホーム機能を使用する場合には,あらかじめホーム・ディレクトリを作成しておく必要がある。例えば,ドメイン名が「MIRACLE」で,ユーザー名が「odagiri」,smb.confが図2に示した内容の場合には,次のように作成する。

# mkdir /home/odagiri
# chown odagiri /home/odagiri

 odagiriがWinbindを使ってログインした場合のSWAT STATUSページの表示例を写真4[拡大表示]に示した。これはwinbind use default domain = Yesと設定してある場合の例であるが,「No」だとUNIX/Linux上でのユーザー名が「ドメイン名+ユーザー名」になるので注意してほしい。例えば,ドメイン名がMIRACLE(必ず英大文字)でユーザー名がodagiri,セパレータが_の場合は,Linux上のユーザー名はMIRACLE_odagiriになる。

*          *          *

 次回は,LDAPを使ってドメインを構築し,ユーザー情報やグループ情報をLDAPに移行する手順を解説する予定である。

(ミラクル・リナックス 小田切 耕司)


(次回に続く)