Samba+OpenLDAPによるドメインログオン環境
CentOS 5.4 をクリーンインストールした直後の環境に対して、コマンド一発で OpenLDAP+Samba ドメインコントローラを実装してみるテスト。
関連情報
確認環境
- samba-3.4.5 (参考:Release Notes for 3.3.0, Release Notes for 3.4.0, Samba PDC (lenny))
- CentOS 5.4 ( インストールタイプは Server ) on XenServer 5.5.0。VM へのメモリ割り当ては 768MB。
- ネットワーク環境や DNS が正しく構成されていることが前提です。
- 独立したネットワークセグメント(ただしインターネットへのアクセスは必要)で実験しました。
ここにはサーバとクライアント(Windows7 Professional)とルータしかいません。
本番環境で実験すると、既存の Windows ネットワークのブラウジング環境に影響を与える恐れがあるのでお勧めしません。
- 下記のスクリプトを実行すると、デフォルトでは拙作の Samba RPM パッケージ(*1)が導入(*2)されます。
(別途入手/構築した)既存の Samba がすでにインストールしてあって、それを上書きしたくない方は、
KEEP_ORIGINAL_SAMBA を yes にしてください。
- (*1)…といっても、tar ball に入っていた samba.spec をリビルドしただけのものです。
- (*2)…RPM パッケージ公開環境の作成方法はこちらに書きました。
- メッセージは日本語で出しています。日本語が通るターミナルで実行してください。
- スクリプトの中で、FireWall(iptables) を無効にしています(リブートすれば元の設定に戻ります)。
- SELinux も無効にしています(リブートすれば元の設定に戻ります)。
コンセプト
ldapsam:editposix=yes
を利用しています。smbldap-tools
は使用しません。
実行方法
- create_new_domain.shをroot権限で動かします。内容は以下の通りです。
- 本スクリプトは毎回環境を上書きしますので、何回実行しても構いません。
- 【警告】元々デバッグのための環境作りが目的であり、毎回パスワードを手入力するのは効率が悪いので、
便宜上パスワードをコマンドライン上で指定しているところがあります。これはセキュリティ上好ましくありません。
スクリプト実行時の様子
確認済みの項目
- Windows7 からのドメイン参加および離脱。
- Windows7 からのドメインログオン(ユーザー名:ldap01)。
注意事項
Windows7 からのドメインログオン
Samba versions supporting Windows7 Domain Logonを参考にして、事前に
HKLM\System\CCS\Services\LanmanWorkstation\Parameters
DWORD DomainCompatibilityMode = 1
DWORD DNSNameResolutionRequired = 0
をレジストリに設定してから再起動で反映しておく。後は従来の Windows と変わらない。
ドメインへの参加には管理者のユーザIDとパスワードを要求されるので、ドメイン
管理者(本環境では Adinistrator)を指定する。
ldapsam:editposix=yes
を使う場合、(PDC が Windows Server でなくても)winbind は必須となる。
- winbind を動かす場合、情報が二重にキャッシュされることになるので nscd は動かしてはならない。
ここは authconfig が面倒を見てくれているようです。
- samba-3.4.3 と 3.4.5 では、winbind と kerberos5 サポートとの組み合わせの場合、
allow_weak_crypto
の問題でうまく動かないらしいという情報があります
(ネタ元:[Samba] Samba 3.4 Panic in Debianから始まるスレッド)。
今後確認してみたい項目