likewiseとFreeIPAの使い分け

likewise というソフトを使うと、 Linux PCにwindows ADのアカウントでログインできるので、freeipaは不要なのでは、という話があり、気になって夜も眠れないので、ubuntuのソースパッケージをダウンロードして読んでみた。

lpic 302 の範囲ともかぶるのでちょうどいい。


それによると、
1. ADはもともと LDAP + kerberos で構成されているので、情報を取り出すこと、認証を行うこと自体は元々できた(samba周りで)
2. ただし、idmapの方法が複雑な上に制限が多く(idmap_rid モジュールを使うと、windows SID (uid みたいなもの ?? )の最後から無理やり切り出すため、ドメインが複数になると、重複が発生する )使い勝手が微妙だった
3. 該当パッケージでは、 idmapの方法を付け加えて、 ( 何かhashを使っているようだがよくわからじ… ) SIDからのマッピングが重複しなくなっているらしい
ということのようだ。

結局 windows サーバーの LDAP+kerberosでもきちんとLinux にログインできそうで、この分なら確かにfreeipaへの置き換えは不要かもしれない。

もちろん、グループポリシーは直接Linuxには適用できないが、 puppet については、puppetmasterd が動けばDCと同一のノードである必要はないので、(別にLinuxでなくてもおk) 認証だけならこれでいいし、設定変更には問題はない。 基本的にはWindows PCを使い、一部だけLinux PCにしたいという環境では、まず最初に検討すべき案だろう。
キモは、ファイルサーバーのSSOがWindows 同様に使えるか、GroupWare への認証はwindows 同様に実現できるかなどとなるだろう。
( officeの問題はどうなったんだという声(ry )


ただし、ユーザーアプリからのログインが実現できるかになるかは、ADである以上やはり問題になるのだが、 アプリサーバーを Linuxに限れば、pam_winbind (中身はwindows ldap+kerberos + SIDのuidへのmapping, 上と同じ ) を使うことで、ユーザーアプリからもいけそうな感じではある。
(一般の freeipa の場合でもapache でSSOを使う時には、 mod_auth_pam あたりで、通常のログインができることを確かめるのがセオリーで、 ここでは、 /etc/pam.d/httpd の中身が、 pam_krb5.so から pam_winbind.so にかわっただけ。 apache側の変更は行わなくておk )

じゃあ、freeipaはいらないかと言われるとまあその通りなのかもしれないのだが、 unix 中心の環境なら freeipa で作った方が自然なので、まあ使い分けが必要だろう.
( freeipa は中身がopenldapではないので、値段が高いのが残念なところ )

ちなみにLinux中心 + freeipa + puppet で一部だけWindows を付け加えたい場合は
1. windows xp なら一応freipa で認証ができる
という事情があるため、 freeipa の documentationあたりを見回してみると見つかるか(ry
ただしvistaだとできないっぽ(ry