マシンをKerberosクライアントとして設定しています。 kerberos構成ファイルが実際にどのように有効になるか、およびその影響をクリアする方法について質問があります。私の実験は以下の通りです。
ステップ1、/etc/krb5.conf
ファイルを編集せずに、kinit
と入力して、期待どおりの結果を得ました。
aaaa@bbbb:~> kinit
kinit(v5): Configuration file does not specify default realm when parsing name aaaa
手順2、/etc/krb5.conf
を編集して有効なKerberosサーバー情報を入力し、もう一度kinit
と入力しました。
aaaa@bbbb:~> kinit
Password for aaaa@bbbb:
pingluo@zhejiangNEW:~> klist
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: aaaa@bbbb
Valid starting Expires Service principal
08/13/14 11:36:34 08/13/14 21:36:34 krbtgt/bbbb@bbbb
renew until 08/20/14 11:36:34
したがって、有効なkerberosチケットを取得できました。これは、構成が正しいことを示しています。
手順3、kdestroy
を使用して資格情報を破棄します。
ステップ4、/etc/krb5.conf
を削除して、これによりkerberos configがクリアされ、kinit
がステップ1のメッセージを表示することを期待しました。しかし、ステップ2のメッセージを見て驚いたので、kerberos configは削除されましたが、まだ有効でした。マシンを再起動しましたが、それでも同じでした。
誰かが何が起こったのか、そしてどうすればケルベロスを完全に取り除くことができるのか説明できますか?私のマシンはOpenSUSE13.1を実行しています。 krb5クライアントは1.11.3です。
現在キャッシュされている資格情報を調べた可能性があります。 kdestroyと入力し、次にkinitと入力して、それがクリアされるかどうかを確認します。
Kinitは、DNSルックアップを使用してレルムのKDCを見つけることもできます。これらのレコードを探します。
_kerberos._udp.EXAMPLE.COM。 IN SRV 10 0 88kdc1.example.com。 _kerberos._udp.EXAMPLE.COM。 IN SRV 20 0 88kdc2.example.com。 _kerberos-master._udp.EXAMPLE.COM。 IN SRV 0 0 88kdc1.example.com。 _kerberos-adm._tcp.EXAMPLE.COM。 IN SRV 0 0 749kdc1.example.com。 _kpasswd._udp.EXAMPLE.COM。 IN SRV 0 0 464kdc1.example.com。
Krb5.confファイルでオプションを指定することにより、これをオフにすることができます。それが問題ではない場合は、kinitでstraceを実行して、情報の取得元を確認することをお勧めします。