この節では、SEAM ソフトウェアで発生する問題の解決方法を示します。
krb5.conf ファイルが適切にフォーマットされていない場合、telnet コマンドは失敗します。しかし、krb5.conf ファイルをコマンドに対し正しく指定した場合、dtlogin と login コマンドは成功します。この問題が発生した場合、次のエラーメッセージが表示されます。
krb5 初期化中にエラー: Kerberos 構成ファイルのフォーマットが不適切です。 (Error initializing krb5: Improper format of Kerberos configuration) |
krb5.conf ファイルのフォーマットに問題がある場合、セキュリティが侵害される可能性が高くなります。この問題は SEAM 機能を使用する前に解決しておかなければなりません。
Kerberos データベースの伝達に失敗した場合、スレーブ KDC とマスター KDC 間で (あるいは、その逆で)、/usr/krb5/bin/rlogin -x を実行してください。
アクセスを制限するように KDC を設定している場合、rlogin は無効となるため、この問題を解決する目的には使用できません。KDC への rlogin を有効にするには、/etc/inetd.conf ファイルにある eklogin エントリのコメントを解除して、次のように inetd を再起動します。
# ps -eaf | grep inetd inetd のプロセス ID が表示される。 # kill -1 pid_of_inetd |
問題が解決した後は、inetd.conf ファイルを元の状態に変更して、もう一度 inetd を再起動する必要があります。
rlogin が動作しない場合、KDC の keytab に問題がある可能性があります。rlogin が動作する場合、rlogin と伝達ソフトウェアは同じ host/host_name プリンシパルを使用するため、keytab またはネームサービスに問題はありません。この場合、kpropd.acl ファイルが正しいことを確認します。
Kerberos 化された NFS ファイルシステムのマウントが失敗した場合、/var/tmp/rc_nfs ファイルが NFS サーバー上に存在していることを確認します。所有者が root でない場合、そのファイルシステムを削除して、もう一度マウントしてみます。
Kerberos 化された NFS ファイルシステムにアクセスするときに問題が発生した場合、ユーザーのシステムと NFS サーバー上にある inetd.conf ファイルに gssd のエントリが存在していることを確認します。
Kerberos 化された NFS ファイルシステムにアクセスするときに、「invalid argument」または「bad directory」というエラーメッセージが表示された場合、NFS ファイルシステムをマウントするときに完全指定の DNS 名を使用していない可能性があります。マウントしているホストは、サーバーの keytab にあるサービスプリンシパルのホスト名部分と異なります。
この問題は、サーバーが複数のイーサネットインタフェースを持っていて、「ホストごとに複数のアドレスレコード」という方式ではなく、「インタフェースごとに名前」という方式を使用するように DNS を設定している場合にも発生します。SEAM の場合、次のように、「ホストごとに複数のアドレスレコード」という方式を設定しなければなりません [Ken Hornstein、「Kerberos FAQ」、[http://www.nrl.navy.mil/CCS/people/kenh/kerberos-faq.html]、1998 年 12 月 11 日。] 。
my.host.name. A 1.2.3.4 A 1.2.4.4 A 1.2.5.4 my-en0.host.name. A 1.2.3.4 my-en1.host.name. A 1.2.4.4 my-en2.host.name. A 1.2.5.4 4.3.2.1 PTR my.host.name. 4.4.2.1 PTR my.host.name. 4.5.2.1 PTR my.host.name.
この例では、異なるインタフェースへの 1 つの参照を許可して、サーバーの keytab にある 3 つのサービスプリンシパルではなく、1 つのサービスプリンシパルを許可するように設定しています。
すでに root プリンシパルをホストの keytab に追加しているのにもかかわらず、ユーザーのシステム上でスーパーユーザーになろうとしたときに認証が失敗した場合、考えられる問題は 2 つあります。まず、keytab 内の root プリンシパルがそのインスタンスとして完全指定名を持っていることを確認します。その場合、/etc/resolv.conf ファイルを調べて、システムが DNS クライアントとして正しく設定されていることを確認します。