Manpages

NAME

winbindd − NT サ ー バ か ら 名 前 情 報 を 取 得 す る た め の Name Service Switch デ ー モ ン

SYNOPSIS

winbindd [ -d debuglevel ] [ -i ] [ -S ] [ -r ] [ -A ] [ -h ] [ -B <broadcast address> ] [ -U <unicast address> ] [ -d <debug level> ] [ -s <smb config file> ] [ -i <NetBIOS scope> ] [ -T ] name

DESCRIPTION

こ の ツ ー ル は Samba <URL:samba.7.html> 3.0 の 一 部 で あ り 、 以 下 で 説 明 す る 機 能 は 、 現 在 の バ ー ジ ョ ン の Samba に は ま だ 実 装 さ れ て い な い 。

winbinddは 、 最 近 の Cラ イ ブ ラ リ の ほ と ん ど に 実 装 さ れ て い る Name Service Switch 機 能 を 提 供 す る デ ー モ ン で あ る 。 Name Service Switch 機 能 に よ り 、 ユ ー ザ 上 と シ ス テ ム 情 報 を NISや DNSの よ う に 、 異 な る デ ー タ ベ ー ス サ ー ビ ス か ら 取 得 す る こ と が で き る よ う に な る 。 動 作 の 詳 細 は 、 /etc/nsswitch.conf フ ァ イ ル に よ っ て 設 定 す る こ と が で き る 。 ユ ー ザ と グ ル ー プ は 、 名 前 の 解 決 が 行 な わ れ た 時 点 で 、 Sambaシ ス テ ム の 管 理 者 に よ っ て 指 定 さ れ た ユ ー ザ と グ ル ー プ IDの 領 域 か ら IDを 割 り 当 て ら れ る 。

winbinddに よ っ て 提 供 さ れ る サ ー ビ ス は 、 ’winbind’ と 呼 ば れ 、 Windows NT の サ ー バ か ら ユ ー ザ と グ ル ー プ の 情 報 を 取 得 す る た め に 用 い る こ と が で き る 。 こ の サ ー ビ ス は 関 連 す る PAMモ ジ ュ ー ル を 通 じ て 、 認 証 サ ー ビ ス を 提 供 す る こ と も 可 能 に な っ て い る 。

winbindd サ ー ビ ス は 、 以 下 の nsswitch デ ー タ ベ ー ス 用 に 実 装 さ れ て い る :

passwd

passwd(5) フ ァ イ ル に 格 納 さ れ た 伝 統 的 な ユ ー ザ 情 報 で 、 getpwent(3) 関 数 に よ っ て 取 得 さ れ る 。

group

group(5) フ ァ イ ル に 格 納 さ れ た 伝 統 的 な グ ル ー プ 情 報 で 、 getgrent(3) 関 数 に よ っ て 取 得 さ れ る 。

例 え ば 、 以 下 の よ う に 、 /etc/nsswitch.conf フ ァ イ ル に 簡 単 な 設 定 を 行 な う こ と で 、 ま ず ユ ー ザ や グ ル ー プ の 情 報 を /etc/passwd/etc/group か ら 取 得 し よ う と し 、 つ い で 、 そ れ ら を Windows NT の サ ー バ か ら 取 得 し よ う と す る よ う に な る 。

passwd: files winbind
group: files winbind

OPTIONS

-d debuglevel

debuglevel を 0 か ら 100 の 数 値 で 指 定 す る 。 0 の 場 合 情 報 を 全 く 出 力 し な い 。 100 の 場 合 本 当 に 大 量 に 出 力 す る 。 Samba Team に バ グ レ ポ ー ト を 提 出 す る 際 に は 、 debug level 100 を 使 用 す る こ と (BUGS.txt を 参 照 の こ と )。

-i

winbindd が デ ー モ ン と な っ て 現 在 の 端 末 か ら 切 り 離 さ れ な い よ う に す る 。 こ の オ プ シ ョ は 、 開 発 者 が 対 話 的 に winbindd の デ バ ッ グ を 行 な う こ と が 必 要 な 場 合 に 用 い ら れ る 。

NAME AND ID RESOLUTION

Windows NTの サ ー バ 上 に あ る ユ ー ザ と グ ル ー プ は 、 ユ ー ザ や グ ル ー プ の 作 成 時 に ド メ イ ン 内 で 一 意 な rid(relative id)を 付 与 さ れ る 。 Windows NTの ユ ー ザ や グ ル ー プ を UNIXの ユ ー ザ や グ ル ー プ に 変 換 す る た め に は 、 ridと UNIXの ユ ー ザ や グ ル ー プ IDと の マ ッ ピ ン グ が 必 要 と な る 。 こ れ は winbindd の 行 な う 作 業 の 一 つ で あ る 。 ユ ー ザ と グ ル ー プ IDが サ ー バ で 解 決 さ れ た 際 に 、 winbinddに よ っ て ユ ー ザ と グ ル ー プ IDは 指 定 さ れ た 領 域 か ら 割 り 当 て ら れ る 。 こ の 処 理 は 、 最 初 に ア ク セ ス が あ り 、 サ ー ビ ス が 提 供 さ れ た 時 点 で 行 な わ れ る た め 、 ク ラ イ ア ン ト が ユ ー ザ や グ ル ー プ の 一 覧 (enumeration)コ マ ン ド を 発 行 し た 時 点 で 、 存 在 す る 全 て の ユ ー ザ と グ ル ー プ の マ ッ ピ ン グ が 行 な わ れ る 。 割 り 当 て ら れ た UNIX側 の IDは Samba側 の lockデ ィ レ ク ト リ 以 下 に 置 か れ た デ ー タ ベ ー ス に 格 納 さ れ 、 記 憶 さ れ る 。 警 告 : ridか ら UNIXの IDへ マ ッ ピ ン グ を 行 な う こ の デ ー タ ベ ー ス は 、 winbinddが ユ ー ザ と グ ル ー プ の マ ッ ピ ン グ を 格 納 す る 唯 一 の フ ァ イ ル で あ る 。 こ の フ ァ イ ル が 削 除 さ れ た り 壊 れ た り す る と 、 ど の Windows NTユ ー ザ や グ ル ー プ の ridに 対 応 し て い る か を winbinddが 認 識 す る こ と は で き な く な っ て し ま う 。

CONFIGURATION

winbindd デ ー モ ン の 設 定 は smb.conf(5) フ ァ イ ル の 設 定 パ ラ メ ー タ に よ っ て 行 な わ れ る 。 全 て の パ ラ メ ー タ の 設 定 は 、 smb.conf フ ァ イ ル の [global] セ ク シ ョ ン で 行 な わ れ る 。
winbind separator

winbind separator オ プ シ ョ ン は 、 NTド メ イ ン 名 と ユ ー ザ 名 を UNIXの ユ ー ザ 名 に 対 応 づ け る 際 の 方 式 を 指 定 す る 。 デ フ ォ ル ト で 、 winbindd は 伝 統 的 な ’\’ を セ パ レ ー タ と し て 利 用 す る た め 、 UNIXの ユ ー ザ 名 は DOMAIN\usernameの よ う な 形 式 に な る 。 ’\’ の 文 字 は UNIXの シ ェ ル で 特 別 な 意 味 を 持 っ て い る た め 、 特 定 の ケ ー ス で 、 こ の セ パ レ ー タ 文 字 は 問 題 を 引 き 起 こ す こ と が あ る 。 そ う し た ケ ー ス で は 、 winbind separator オ プ シ ョ ン を 用 い る こ と で 別 の 文 字 を セ パ レ ー タ 文 字 に 指 定 す る こ と が 可 能 で あ る 。 よ い 候 補 と し て は ’/’ (こ れ は UNIX の デ ィ レ ク ト リ 識 別 子 と 競 合 す る ) や ’+’ 文 字 な ど が あ げ ら れ る 。 ’+’ 文 字 は 、 UNIX ユ ー テ ィ リ テ ィ と の 互 換 性 が 100% で あ る た め よ い 選 択 な よ う に 見 え る が 、 あ な た の 嗜 好 に よ っ て は 、 美 学 的 に よ ろ し く な い 選 択 に な る か も 知 れ な い 。 デ フ ォ ル ト : winbind separator = \ 設 定 例 : winbind separator = +

winbind uid

winbind uid パ ラ メ ー タ は winbindd デ ー モ ン が 割 り 当 て る ユ ー ザ IDの 範 囲 を 指 定 す る 。 予 期 し な い 競 合 が 発 生 し な い よ う に す る た め 、 こ の ユ ー ザ IDの 範 囲 に ロ ー カ ル な ユ ー ザ や NISの ユ ー ザ が 存 在 し な い よ う に す る こ と 。 デ フ ォ ル ト : winbind uid = <empty string> 設 定 例 : winbind uid = 10000-20000

winbind gid

winbind gid パ ラ メ ー タ は 、 winbindd デ ー モ ン が 割 り 当 て る グ ル ー プ IDの 範 囲 を 指 定 す る 。 予 期 し な い 競 合 が 発 生 し な い よ う に す る た め 、 こ の グ ル ー プ IDの 範 囲 に ロ ー カ ル な グ ル ー プ や NISの グ ル ー プ が 存 在 し な い よ う に す る こ と 。 デ フ ォ ル ト : winbind gid = <empty string> 設 定 例 : winbind gid = 10000-20000

winbind cache time こ の パ ラ メ ー タ は 、 winbindd デ ー モ ン が Windows NT サ ー バ に 問 い 合 わ せ を 行 な わ ず に ユ ー ザ と グ ル ー プ の 情 報 を キ ャ ッ シ ュ す る 時 間 を 秒 単 位 で 指 定 す る 。 キ ャ ッ シ ュ 中 の 情 報 が 古 く な る と 、 winbindd は ド メ イ ン コ ン ト ロ ー ラ に 対 し て サ ー バ 上 の ア カ ウ ン ト デ ー タ ベ ー ス の シ ー ケ ン ス 番 号 を 問 い 合 わ せ る 。 シ ー ケ ン ス 番 号 が 変 更 さ れ て い な か っ た 場 合 、 キ ャ ッ シ ュ さ れ た 情 報 は 、 更 に winbind cache timeで 設 定 さ れ た 秒 数 の 間 有 効 で あ る と 記 録 さ れ る 。 そ れ 以 外 の 場 合 、 情 報 は サ ー バ か ら 再 度 取 得 さ れ る 。 こ れ に よ り 、 ア カ ウ ン ト デ ー タ ベ ー ス に 実 質 的 な 変 更 が な い 限 り 、 winbindd は winbind cache timeで 設 定 し た 秒 数 毎 に シ ー ケ ン ス 番 号 の 問 い 合 わ せ パ ケ ッ ト を 一 つ 送 出 す る だ け で す む 。 デ フ ォ ル ト : winbind cache time = 15
winbind enum users
非 常 に 大 規 模 な 環 境 下 で は

setpwent(), getpwent()endpwent() と い っ た シ ス テ ム コ ー ル 群 の 呼 び 出 し に よ る ユ ー ザ の 一 覧 取 得 を 抑 止 す る 必 要 が あ る か も 知 れ な い 。 winbind enum users パ ラ メ ー タ が false の 場 合 、 getpwent シ ス テ ム コ ー ル の 呼 び 出 し は 全 く デ ー タ を 返 却 し な い 。 警 告 : ユ ー ザ 一 覧 (enumeration)を 無 効 に す る と 幾 つ か の プ ロ グ ラ ム に つ い て は 異 常 動 作 を 引 き 起 こ す 恐 れ が あ る 。 例 え ば 、 finger プ ロ グ ラ ム は 、 全 て の ユ ー ザ の リ ス ト に ア ク セ ス で き る 前 提 で 、 ユ ー ザ 名 の マ ッ チ ン グ を 行 な っ て い る 。 デ フ ォ ル ト : winbind enum users = yes

winbind enum groups 非 常 に 大 規 模 な 環 境 下 で は

setgrent(), getgrent()endgrent() と い っ た シ ス テ ム コ ー ル 群 の 呼 び 出 し に よ る ユ ー ザ の 一 覧 取 得 を 抑 止 す る 必 要 が あ る か も 知 れ な い 。 winbind enum groups パ ラ メ ー タ が false の 場 合 、 getpwent シ ス テ ム コ ー ル の 呼 び 出 し は 全 く デ ー タ を 返 却 し な い 。 警 告 : グ ル ー プ 一 覧 (enumeration)を 無 効 に す る と 幾 つ か の プ ロ グ ラ ム に つ い て は 異 常 動 作 を 引 き 起 こ す 恐 れ が あ る 。 デ フ ォ ル ト : winbind enum groups = no

template homedir

Windows NT の ユ ー ザ に 対 す る ユ ー ザ 情 報 を 作 成 す る 際 に 、 winbindd デ ー モ ン は こ の パ ラ メ ー タ に よ っ て ユ ー ザ の ホ ー ム デ ィ レ ク ト リ の 位 置 を 設 定 す る 。 文 字 列 %D が あ れ ば 、 ユ ー ザ の Windows NTに お け る ド メ イ ン 名 に 置 き 換 え ら れ る 。 文 字 列 %U が あ れ ば 、 ユ ー ザ の Windows NTに お け る ユ ー ザ 名 に 置 き 換 え ら れ る 。 デ フ ォ ル ト : template homedir = /home/%D/%U

template shell

Windows NT の ユ ー ザ に 対 す る ユ ー ザ 情 報 を 作 成 す る 際 に 、 winbindd デ ー モ ン は こ の パ ラ メ ー タ に よ っ て ユ ー ザ の シ ェ ル を 設 定 す る 。 デ フ ォ ル ト : template shell = /bin/false

設 定 例

ユ ー ザ や グ ル ー プ 情 報 の 参 照 や ド メ イ ン コ ン ト ロ ー ラ で の 認 証 を 行 な う た め に winbindd を 設 定 す る 場 合 は 、 以 下 の よ う な 設 定 を 行 な う こ と に な る 。 こ の 設 定 は Red Hat Linux 6.2 で 確 認 し て い る 。

/etc/nsswitch.conf に 以 下 の 記 述 を 行 な う :

passwd: files winbind
group: files winbind

/etc/pam.d/*auth 行 を 以 下 の よ う に 設 定 す る :

auth required /lib/security/pam_securetty.so

auth required

/lib/security/pam_nologin.so

auth sufficient

/lib/security/pam_winbind.so

auth required /lib/security/pam_pwdb.so use_first_pass shadow nullok

sufficient キ ー ワ ー ド と use_first_pass キ ー ワ ー ド の 利 用 に 特 に 注 意 す る こ と 。 こ こ で account 行 を 以 下 の よ う に 置 き 換 え る :

account required /lib/security/pam_winbind.so 次 の ス テ ッ プ は ド メ イ ン へ の 参 加 で あ る 。 こ れ は samedit プ ロ グ ラ ム を 用 い て 、 以 下 の よ う に し て 行 な う :

samedit -S ’*’ -W DOMAIN -UAdministrator

-U パ ラ メ ー タ に 続 く ユ ー ザ 名 は 、 そ の マ シ ン 上 で administrator 権 限 の あ る ユ ー ザ で あ れ ば 誰 で も よ い 。 引 続 き 、 samedit コ マ ン ド 上 で 、 以 下 の コ マ ン ド を 実 行 す る :

createuser MACHINE$ -j DOMAIN -L こ れ は 、 ド メ イ ン 名 が "DOMAIN"、 Samba マ シ ン の 名 前 が "MACHINE" の 場 合 の 例 で あ る 。 次 に libnss_winbind.so.2/lib に 、 pam_winbind.so/lib/security に 各 々 コ ピ ー す る 。 最 後 に 、 smb.conf に 以 下 の よ う な デ ィ レ ク テ ィ ブ が 含 ま れ る よ う に 設 定 を 行 な う :

[global]

winbind separator = +

winbind cache time = 10
template shell = /bin/bash
template homedir = /home/%D/%U
winbind uid = 10000-20000
winbind gid = 10000-20000
workgroup = DOMAIN
security = domain
password server = *

こ こ で winbindd を 起 動 し 、 ユ ー ザ と グ ル ー プ デ ー タ ベ ー ス に NT側 の ユ ー ザ や グ ル ー プ が 含 ま れ て い る こ と と 、 DOMAIN+user形 式 の ユ ー ザ 名 を 用 い る こ と で 、 UNIXマ シ ン に ド メ イ ン の ユ ー ザ と し て 、 ロ グ オ ン で き る こ と を 確 認 す る 。 getent passwdgetent group コ マ ン ド を 使 っ て 、 winbindd が 適 切 な 動 作 を 行 な っ て い る こ と を 確 認 す る こ と も で き る 。

メ モ

以 下 の メ モ は winbinddを 設 定 し た り 実 行 し た り す る 際 に 有 用 で あ る :

winbindd が 動 作 す る に は 、 同 じ マ シ ン 上 で nmbdが 実 行 さ れ て い る 必 要 が あ る 。 winbinddは 、 起 動 時 と SIGHUP シ グ ナ ル を 受 信 し た 時 に Windows NT サ ー バ に 信 頼 す る ド メ イ ン の リ ス ト を 問 い 合 わ せ る 。 そ の た め 、 実 行 中 の winbindd に 新 し い サ ー バ 間 の 信 頼 関 係 を 認 識 さ せ る た め に は 、 SIGHUP シ グ ナ ル を 送 る 必 要 が あ る 。

winbinddの nsswitch モ ジ ュ ー ル に よ っ て 名 前 の 解 決 を 行 な う ク ラ イ ア ン ト プ ロ セ ス は 、 $WINBINDD_DOMAIN と い う 名 前 の 環 境 変 数 を 読 み と る 。 こ の 変 数 に は コ ン マ で 区 切 ら れ た Windows NTの ド メ イ ン 名 が 含 ま れ て お り 、 winbindd は こ こ に 記 述 さ れ た Windows NT の ド メ イ ン に 対 し て の み 、 ユ ー ザ と グ ル ー プ 名 の 解 決 を 行 な お う と す る 。

PAM は 、 簡 単 に 誤 っ た 設 定 が 行 な わ れ て し ま う 。 PAM の 設 定 フ ァ イ ル を 修 正 す る 際 は 、 何 を 行 な っ て い る か を き ち ん と 確 認 す る こ と 。 PAM の 設 定 を 誤 る こ と で 、 誰 も シ ス テ ム に ロ グ イ ン で き な く な っ て し ま う こ と も あ り 得 る 。 複 数 の UNIX マ シ ン が winbindd を 実 行 し て い た 場 合 で も 、 通 常 winbindd に よ っ て 割 り 当 て ら れ る ユ ー ザ や グ ル ー プ IDが 同 一 に は な ら な い 。 ユ ー ザ や グ ル ー プ の IDは ロ ー カ ル マ シ ン 内 で の み 有 効 で あ る 。

Windows NT の rid か ら UNIX の ユ ー ザ や グ ル ー プ IDへ の マ ッ ピ ン グ フ ァ イ ル が 壊 れ た り な く な っ た り し た 場 合 、 こ の マ ッ ピ ン グ 情 報 は 失 わ れ る 。

シ グ ナ ル

以 下 の シ グ ナ ル が winbindd デ ー モ ン を 操 作 す る た め に 利 用 可 能 で あ る 。

SIGHUP

smb.conf(5) フ ァ イ ル を 再 読 み 込 み さ せ て 、 実 行 中 の winbindd に パ ラ メ ー タ の 変 更 を 反 映 さ せ る 。 こ の シ グ ナ ル に よ り 、 ユ ー ザ と グ ル ー プ 情 報 の キ ャ ッ シ ュ も ク リ ア さ れ る 。 wibindd が 信 頼 す る ド メ イ ン の リ ス ト も 、 同 様 に 再 読 み 込 み さ れ る 。

SIGUSR1

SIGUSR1 シ グ ナ ル に よ り 、 winbindd は 、 割 り 当 て た ユ ー ザ と グ ル ー プ IDに 関 す る 情 報 と と も に 、 ス テ ー タ ス 情 報 を winbind ロ グ フ ァ イ ル に 書 き 込 む 。 ロ グ フ ァ イ ル は log file パ ラ メ ー タ で 指 定 さ れ た フ ァ イ ル 名 の フ ァ イ ル に 書 き 込 ま れ る 。

フ ァ イ ル

/etc/nsswitch.conf(5)

Name service switch の 設 定 フ ァ イ ル で あ る

/tmp/.winbindd/pipe ク ラ イ ア ン ト が winbindd プ ロ グ ラ ム と 通 信 す る た め の UNIX の パ イ プ で あ る 。 セ キ ュ リ テ ィ 上 の 理 由 で winbind ク ラ イ ア ン ト は /tmp/.winbindd デ ィ レ ク ト リ と /tmp/.winbindd/pipe フ ァ イ ル の 両 方 の 所 有 者 が root の 時 の み winbindd デ ー モ ン と の 接 続 を 行 な お う と す る 。
/lib/libnss_winbind.so.X

name service switchラ イ ブ ラ リ の 実 体 で あ る 。

$LOCKDIR/winbindd_idmap.tdb

Windows NT の rid と UNIXの ユ ー ザ や グ ル ー プ IDと の マ ッ ピ ン グ を 格 納 す る ロ ッ ク デ ィ レ ク ト リ ($LOCKDIR)は Sambaの コ ン パ イ ル 時 に --with-lockdir オ プ シ ョ ン を 用 い る こ と で 設 定 で き 、 デ フ ォ ル ト で は /usr/local/samba/var/locks で あ る 。

$LOCKDIR/winbindd_cache.tdb キ ャ ッ シ ュ さ れ た ユ ー ザ と グ ル ー プ の 情 報 を 格 納 す る

VERSION

こ の マ ニ ュ ア ル ペ ー ジ は Samba バ ー ジ ョ ン 2.2 一 式 用 で あ る 。 た だ し 、 winbindd は Samba の 正 式 な リ リ ー ス 版 に ま だ 含 ま れ て い な い 。

参 照

nsswitch.conf(5), samba(7) <URL:samba.7.html>, wbinfo(1) <URL:wbinfo.1.html>, smb.conf(5) <URL:smb.conf.5.html>

AUTHOR

オ リ ジ ナ ル の Samba ソ フ ト ウ ェ ア と 関 連 す る ユ ー テ ィ リ テ ィ は 、 Andrew Tridgell に よ っ て 作 成 さ れ た 。 現 在 Samba は Samba Team に よ っ て 、 Linux カ ー ネ ル の 開 発 と 同 様 の オ ー プ ン ソ ー ス プ ロ ジ ェ ク ト と し て 開 発 が 行 な わ れ て い る 。

wbinfo お よ び winbindd は Tim Potter に よ っ て 書 か れ た 。

Samba 2.2 に お け る DocBook 形 式 へ の 変 換 は 、 Gerald Carter に よ っ て 行 な わ れ た 。