RIGHT:[[Sun 関係覚え書き]]
//Solaris から Active Directory パスワードを変更する
//////////////////////
http://www.sun.com/bigadmin/content/submitted/kerberos_pwd.html
より
//
----
Mike Myers, September,2004
Active Directory は通信時の認証と暗号化に MIT の Kerberos プロトコルを
使っていることはよく知られている.
また,Solaris には Kerberos のライブラリが含まれていることも
よく知られていることだ.
多くの文書が,これら 2つの事実を用いて
2つの認証を統合すること(これは巨大なプロジェクトとなりえる)に
ついて述べ始めている.
このテクニカル Tips はそのさわりだ.
Kerberos により,
少し設定をすれば Windows Active Directory の
パスワードを変更できるようになる.
もし,あなたが両方の環境で仕事をしていて,
まだ認証が統合されていないなら,
これは,手軽にできることだ.
最初のステップは,Solaris の Kerberos ライブラリを
設定することだ.
それには,次の 2つのパラメータが必要だ.
-Active Directory のドメイン名.
-Active Directory のサーバ名.
前者はたぶん,単にあなたのサイトのインターネットドメインだ.
(例えば,あなたのインターネットサイトが www.example.com だったら,
Active Directory ドメイン名は多分 EXAMPLE.COM だ.)
これを確認し,Active Directory のサーバ名を見つけるために,
Active Directory サーバが使っている DNS サーバと
同じサーバを /etc/resolv.conf ファイルで指定しているか確認しなさい.
そして,以下を実行する.
nslookup
set type=srv
_kpasswd._tcp
_kpasswd._tcp エントリは,
Active Directory がサーバを指定するために使う特別なキーだ.
(SRV レコードという.)
もし,1つ以上の返答があれば,
それらのどれを使ってもいいが,
ネットワーク的に一番近いものを指定するのがいい.
もしこれがうまくできないなら,Windows 管理者に尋ねましょう.
この情報を得たら,下の例を参考に /etc/krb5/krb5.conf を編集しましょう.
[libdefaults]
default_realm = <YOUR DOMAIN NAME>
default_tkt_enctypes = des-cbc-md5
default_tgs_enctypes = des-cbc-md5
[realms]
<YOUR DOMAIN NAME> = {
kdc = <NAME OF AD SERVER>:88
admin_server = <NAME OF AD SERVER>:464
# This is required for Solaris to use the older protocol
# to communicate with the Active Directory server
kpasswd_protocol = SET_CHANGE
}
[domain_realm]
<ANY MAPPINGS>
[appdefaults]
kinit = {
renewable = true
forwardable= true
}
ここで <ANY MAPPINGS> の部分はオプションで,
DNS ドメインと Active Directory ドメインが同じでない場合のみ必要だ.
そこには,次のようなエントリを書く.
<DNS DOMAIN> = <AD DOMAIN>
これは,Kerberos オペレーションとして <DNS DOMAIN>から自分自身を探す際に,
"<AD DOMAIN>"を使えという意味だ.
これらの作業が完了したら,
kpasswd を実行することができる.
もし,UNIX のログイン名と Windows Active Directory のログイン名が同じなら,
することはこれだけだ.
もし,Windows では異なるログイン名を使っているなら,
次のことをする必要がある.
kpasswd <windows login名>