なにが Open なんだかよくわからない Lion Server のディレクトリサービスですが、 Open LDAP + Heimdal + Apple Password Server の組み合わせ、を Open Directory と呼んでいるようです。メールサービスと同じように適当に GUI からほげほげとデフォルト値のまま弄っていけば、死ぬ程面倒な Open LDAP がすんなりと構成されるってところが素晴らしい。…そこから先が死ぬ程面倒なので商用ベースであればやっぱり AD 選択するのは必然だよねー。いや AD だって面倒なんだけどシェアがある分ノウハウも貯まっているいるからいいって話だけど。
最初にハマったのは kerberos 。なんでかわかんないけど ldap と Password Server は動いてるのに kerberos だけが stopped になってしまう…。と悩んでいたらセットアップのときに realm だけをデフォルト値のホスト名からドメイン名に変更したんだけど、それがマズかったらしく、そこを変えた場合は下の LDAP 検索ベースを変えなきゃイケナイという話だったのでした。
次にハマったのがクライアントの設定。認証サーバーを選ぶところがあるんだけどそこで SSL を利用する、しないというオプションがあり、ちゃんと SSL 使ってるので利用するぜ、としていたんだけどそのあとに証明書を信用するかどうかっつーダイアログが出ていて、ちゃんととった証明書だしってことで信用していたんだけど、これを信用しないにしないとちゃんと設定ができない、という…。詳しくはアップル – サポートの「Lion Server:SSL を実行する Lion Open Directory サーバをバインドするときに「サーバの追加ができません」というメッセージが表示される」…ってちっとも詳しく書いてないし!!
さて、弄って初めて分かったことですが、Lion Server ではネットワークアカウントだろうがローカルアカウントだろうが、等しく GeneratedUID と UniqueID が割り振られます。で、ネットワークアカウントとローカルアカウントの違いはデータがどこにストアされているかどうかだけ、なので GeneratedUID はたぶん大丈夫ですが、 UniqueID は所謂 uid なのでバリバリぶつかります。さらに、アカウント名は Windows と違ってネットワークアカウントとローカルアカウントの差がつけられません(命名規則を付ければいいんでしょうけど)。かといってローカルアカウントをネットワークアカウントに変更する方法は(今のところ)見つけられていないので今まで使っていたアカウントのまま Kerberos による SSO を実現するにはどーしたらいいのやら…。結局力技で対処したので別記事にします。
もう一つ、順調に Zombie プロセスが殺せないまま着々と増えていったので、仕方ないから再起動をかまそうとしたところ、再起動すらできなくなって電源ボタン長押しの強制シャットダウンを行ったところ、それを機に Open Directory が壊れたらしく、ローカルアカウントで入って Open Directory 再設定という楽しいイベントにも遭遇しました。…バックアップって大事! ということで Tutorial: Backup Your Open Directory Server Using Launchd を参考に毎日 Open Directory のバックアップも取るようになりました。結構前に書かれたっぽいページですが、 Lion Server でもちゃんとバックアップがとれているように見えます。リストアのテストやってないからわかんないけど!(笑)
以下おまけ
ローカルユーザー一覧
dscl . -list /Users
ローカルユーザー詳細
dscl . -read /Users/username
ローカルユーザー変更
dscl . -change /Users/username Attribute before after
ネットワークユーザー一覧
dscl /LDAPv3/127.0.0.1 -list /Users
ネットワークユーザー詳細
dscl /LDAPv3/127.0.0.1 -read /Users/username
ローカルユーザー変更
dscl -u directoryadminaccount /LDAPv3/127.0.0.1 -change /Users/username Attribute before after
「Open Directory 四苦八苦」への1件の返信
今日、Lion Serverからネットワークアカウントサーバに接続しようとしたら、同じ現象が出て悩んでましたが、おかげさまで解決しました。ありがとうございました。
まさか、「信頼しない」で解決するとは…そりゃ、自己署名ですけどね。
自分もリンク先にあるアップルのサポート情報を見つけて読んだのですが、「解決方法 OS X Lion v10.7.2 以降に アップデートします。」とあるけど、10.7.3で起きてるし。