Sun Enterprise Authentication Mechanism 1.0.1 ガイド

一般的な SEAM エラーメッセージ (A-M)

この節では、SEAM コマンド、SEAM デーモン、PAM フレームワーク、GSS インタフェース、および Kerberos ライブラリに関する、より一般的なエラーメッセージをアルファベット順 (A-M) に示します。

エラーメッセージ

major_error minor_error 名前をインポート中に gssapi エラー
(major_error minor_error gssapi error importing name)
原因

サービス名のインポート時にエラーが発生しました。

解決方法

ホストの keytab ファイルに host または ftp のサービスプリンシパルがあることを確認します。

エラーメッセージ

すべての認証システムが無効になっています;接続は拒否されました。
(All authentication systems disabled; connection refused)
原因

このバージョンの rlogind は認証機構をサポートしていません。

解決方法

rlogind を呼び出すときに -k オプションを指定していることを確認します。このオプションはデフォルトで inetd.conf ファイルに指定されている必要があります。

エラーメッセージ

このホストにアクセスするには、別の認証メカニズムを使用する必要があります
(Another authentication mechanism must be used to access this host)
原因

認証を行うことができませんでした。

解決方法

クライアントが認証に Kerberos V5 を使用していることを確認します。

エラーメッセージ

暗号化に必要な認証のネゴシエーションに失敗しました。終了します。
(Authentication negotiation has failed, which is required for encryption. Good bye.)
原因

認証について、サーバーとネゴシエーションできませんでした。

解決方法

telnet コマンドの toggle authdebug を呼び出して認証デバッグを起動して、手がかりとなるようなデバッグメッセージを探します。また、資格が有効であることも確認します。

エラーメッセージ

kadmin インタフェースを初期化中に、krb5 admin サーバーホスト名が無効です。
(Bad krb5 admin server hostname while initializing kadmin interface)
原因

krb5.conf ファイルにおいて、admin サーバー (マスター KDC) に対して無効なホスト名が構成されています。

解決方法

krb5.conf ファイルにおいて、admin サーバー (マスター KDC) に対して正しいホスト名を指定していることを確認します。

エラーメッセージ

要求したレルムの KDC に接続できません。
(Cannot contact any KDC for requested realm)
原因

要求されたレルム内で KDC が応答しませんでした。

解決方法

少なくとも 1 つの KDC (マスターまたはスレーブのどちらか) に使用可能であること、つまり、krb5kdc デーモンが KDC 上で動作していることを確認します。構成されている KDC のリスト (kdc = kdc_name) については、/etc/krb5/krb5.conf を調べます。

エラーメッセージ

ホストのレルムを決定できません。
(Cannot determine realm for host)
原因

Kerberos がホストのレルム名を見つけることができません。

解決方法

Kerberos 構成ファイル (krb5.conf) にデフォルトのレルム名が存在すること、あるいはドメイン名のマッピングが設定されていることを確認します。

エラーメッセージ

ネットワークに暗号化で書き込みできません。
(Cannot encrypt-write network)
原因

データの暗号化で問題が発生しました。

解決方法

他にも問題が発生していないかシステムを調べます。手がかりになるような他の syslog メッセージを探します。

エラーメッセージ

要求したレルムの KDC が見つかりません。
(Cannot find KDC for requested realm)
原因

要求されたレルム内に KDC が見つかりませんでした。

解決方法

Kerberos 構成ファイル (krb5.conf) の realm セクションに KDC が指定されていることを確認します。

エラーメッセージ

レルム realm_name を初期化できません。(cannot initialize realm realm_name)
原因

KDC が stash ファイルを持っていない可能性があります。

解決方法

KDC が stash ファイルを持っていることを確認します。持っていない場合、kdb5_util(1M) コマンドを使用して stash ファイルを作成して、もう一度 krb5kdc を実行します (/etc/init.d/kdc)。

エラーメッセージ

要求したレルムの KDC を解決できません。
(Cannot resolve KDC for requested realm)
原因

Kerberos がレルム内の KDC を見つけることができません。

解決方法

Kerberos 構成ファイル (krb5.conf) の realm セクションに KDC が指定されていることを確認します。

エラーメッセージ

パスワードは再使用できません。
(Cannot reuse password)
原因

入力したパスワードは、以前、このプリンシパルで使用されています。

解決方法

以前使用されていないパスワードを使用します。あるいは、各プリンシパルの KDC データベースに保存されているパスワード以外のパスワードを使用します。KDC データベースに保存されるパスワードの数はプリンシパルのポリシーによって決定されます。

エラーメッセージ

転送された資格を取得できません。
(Can't get forwarded credentials)
原因

資格の転送ができませんでした。

解決方法

プリンシパルの資格が転送可能であることを確認します。

エラーメッセージ

Kerberos 構成ファイルを開けません/見つかりません。
(Can't open/find Kerberos configuration file)
原因

Kerberos 構成ファイル (krb5.conf) が利用できませんでした。

解決方法

krb5.conf ファイルが適切なディレクトリにあり、適切なアクセス権 (root の書き込み権と任意のユーザーの読み取り権) を持っていることを確認します。

エラーメッセージ

クライアントが必要なチェックサムを提供しませんでした--接続は拒否されました。
(Client did not supply required checksum--connection rejected)
原因

チェックサム付きの認証について、クライアントとネゴシエーションできませんでした。クライアントが初期接続をサポートしていない古い Kerberos V5 プロトコルを使用している可能性があります。

解決方法

クライアントが初期接続をサポートしている Kerberos V5 プロトコルを使用していることを確認します。

エラーメッセージ

初期チケット要求でクライアント/サーバーレルムが一致していません。
(Client/server realm mismatch in initial ticket request)
原因

初期チケット要求において、クライアントとサーバー間でレルムが一致しませんでした。

解決方法

通信しているサーバーがクライアントと同じレルムにあること、あるいはレルム構成が正しいことを確認します。

エラーメッセージ

クライアントまたはサーバーの鍵が null です。
(Client or server has a null key)
原因

プリンシパルの鍵が null です。

解決方法

kadmin(1M)cpw コマンドを使用して、プリンシパルの鍵を null 以外に修正します。

エラーメッセージ

kadmin インタフェースを初期化中に、サーバーとの通信の失敗です。
(Communication failure with server while initializing kadmin interface)
原因

admin サーバー (マスター KDC) として入力したホスト上で kadmind が動作していませんでした。

解決方法

マスター KDC として正しいホスト名を指定しているか確認します。正しいホスト名を指定している場合は、指定したマスター KDC 上で kadmind が動作していることを確認します。

エラーメッセージ

構成エラー: -c を使ったチェックサムを行う場合は、Kerberos V4 接続を行うことはできません
(Configuration error: Requiring checksums with -c is inconsistent
with allowing Kerberos V4 connections)
原因

チェックサム付きの認証について、クライアントとネゴシエーションできませんでした。クライアントが初期接続をサポートしていない古い Kerberos V5 プロトコルを使用している可能性があります。

解決方法

クライアントが初期接続をサポートしている Kerberos V5 プロトコルを使用していることを確認します。

エラーメッセージ

構成エラー: -c を使ったチェックサムを行う場合は、Kerberos V4 接続を行うことはできません
(Credentials cache file permissions incorrect)
原因

資格キャッシュ (/tmp/krb5cc_uid) に適切な読み取り権または書き込みのアクセス権を持っていません。

解決方法

資格キャッシュに読み取り権と書き込み権を持っていることを確認します。

エラーメッセージ

資格キャッシュ入出力操作が失敗しました。 XXX
(Credentials cache I/O operation failed XXX)
原因

システムの資格キャッシュ (/tmp/krb5cc_uid) への書き込み中に Kerberos に問題が発生しました。

解決方法

資格キャッシュが削除されていないこと、および df コマンドを使用して、デバイスに空領域があることを確認します。

エラーメッセージ

復号化で整合性チェックが失敗しました。
(Decrypt integrity check failed)
原因

チケットが無効である可能性があります。

解決方法
  1. 資格が有効であることを確認します。kdestroy でチケットを削除して、kinit で新しいチケットを作成します。

  2. ターゲットのホストの keytab が正しいバージョンのサービス鍵を持っていることを確認します。まず、kadmin(1M) を使用して、Kerberos データベースにあるサービスプリンシパル (たとえば、host/FQDN_hostname) の鍵バージョン番号を表示します。そして、ターゲットのホスト上で klist -k を実行して、同じ鍵バージョン番号を持っていることを確認します。

エラーメッセージ

des_read の再試行回数が XX を超過しました。
(des_read retry count exceeded)
原因

データの読み取り中にエラーが繰り返し発生しました。

解決方法

他にも問題が発生していないかシステムを調べます。手がかりになるような他の syslog メッセージを探します。

エラーメッセージ

df: ファイルシステムを statvfs できません: 引数が正しくありません
(df: cannot statvfs filesystem: Invalid argument)
原因

適切な root 資格を持っていないため、df コマンドがレポートを生成するときに、現在マウントしている Kerberos 化された NFS ファイルシステムにアクセスできません。マウントしている Kerberos 化されたファイルシステムの資格を削除しても、ファイルシステムは自動的にマウント解除されません。

解決方法

Kerberos 化されたファイルシステムにアクセスするには、新しい root 資格を作成する必要があります。Kerberos 化されたファイルシステムへのアクセスが必要なくなった場合は、ファイルシステムをマウント解除します。

エラーメッセージ

Encryption could not be enabled. Goodbye.
(暗号化を有効にできませんでした。終了します。)
原因

暗号化について、サーバーとネゴシエーションできませんでした。

解決方法

telnet コマンドの toggle encdebug を起動し認証のデバッグを開始して、手がかりとなるようなデバッグメッセージを探します。

エラーメッセージ

暗号化が正しくネゴシエーションされませんでした。終了します。
(Encryption was not successfully negotiated. Goodbye.)
原因

暗号化について、ネゴシエーションできませんでした。

解決方法

KDC ログファイルのエラーメッセージを調べます。

エラーメッセージ

資格キャッシュの終わりに達しました。
(End of credential cache reached)
原因

資格キャッシュ (/tmp/krb5cc_uid) の読み取り中にエラーが発生しました。

解決方法

資格キャッシュが読み取り可能であり、データを持っていることを確認します。

エラーメッセージ

資格キャッシュを取得できませんでした。
(failed to obtain credentials cache)
原因

kadmin 初期化中、kadminadmin プリンシパルの資格を獲得しようとしたときに問題が発生しました。

解決方法

kadmin の実行時に、正しいプリンシパルまたはパスワード (あるいは、その両方) を使用したことを確認します。

エラーメッセージ

この実装では、フィールドが長すぎます。
(Field is too long for this implementation)
原因

Kerberos 化されたアプリケーションから送信されたメッセージのサイズが大きすぎました。Kerberos が扱うことができるメッセージの最大サイズは 65535 バイトです。さらに、Kerberos が送信するプロトコルメッセージ内の個々のフィールドにも制限があります。

解決方法

Kerberos 化されたアプリケーションが送信するメッセージのサイズが有効であることを確認します。

エラーメッセージ

GSS-API (または Kerberos) エラー
(GSS-API (or Kerberos) error)
原因

これは汎用 GSS-API または Kerberos のエラーメッセージです。複数の問題が原因である可能性があります。

解決方法

/var/krb5/kdc.log ファイルを開いて、このエラーが発生したときに、エラーの原因をさらに特定できる GSS-API エラーメッセージが記録されていないかを調べます。

エラーメッセージ

ホスト名を展開できません。
(Hostname cannot be canonicalized)
原因

Kerberos はホスト名を完全指定できません。

解決方法

DNS にホスト名が存在していること、およびホスト名からアドレスへのマッピングとアドレスからホスト名へのマッピングに一貫性があることを確認します。

エラーメッセージ

レルム間のチケットが無効です。
(Illegal cross-realm ticket)
原因

送信したチケットのレルム間関係が正しくありません。レルムの委任関係の設定が間違っている可能性があります。

解決方法

使用しているレルムの委任関係が正しいことを確認します。

エラーメッセージ

Kerberos 構成ファイルのフォーマットが不適切です。
(Improper format of Kerberos configuration file)
原因

Kerberos 構成ファイル (krb5.conf) に無効なエントリがあります。

解決方法

krb5.conf ファイルのすべての関係の後に「=」記号と値が続いていることを確認して、各サブセクションの括弧が対で存在していることを確認します。

エラーメッセージ

メッセージのチェックサムのタイプが不適切です。
(Inappropriate type of checksum in message)
原因

メッセージのチェックサムのタイプが無効です。

解決方法

krb5.confkdc.conf ファイルに有効なチェックサムのタイプが指定されているかどうかを調べます。

エラーメッセージ

ネットアドレスが間違っています。
(Incorrect net address)
原因

ネットワークアドレスが一致していません。転送されるチケットのネットワークアドレスが、チケットが処理されるネットワークアドレスと異なります。チケットの転送時にエラーが発生した可能性があります。

解決方法

ネットワークアドレスが正しいことを確認します。つまり、kdestroy でチケットを削除して、kinit で新しいチケットを作成します。

エラーメッセージ

ファイルロックモードのフラグが無効です。
(Invalid flag for file lock mode)
原因

Kerberos の内部エラーが発生しました。

解決方法

バグを報告してください。

エラーメッセージ

符号化に対し無効なメッセージタイプが指定されました。
(Invalid message type specified for encoding)
原因

Kerberos は、Kerberos 化されたアプリケーションから送信されたメッセージのタイプを認識できませんでした。

解決方法

ユーザーのサイトやベンダーで開発した Kerberos 化されたアプリケーションを使用する場合は、そのアプリケーションが Kerberos を正しく使用していることを確認します。

エラーメッセージ

文字クラス数が正しくありません。
(Invalid number of character classes)
原因

プリンシパル用に入力したパスワードは、そのプリンシパルのポリシーが適用されているパスワードクラス数に達しません。

解決方法

パスワードの入力時に、ポリシーが必要とする最小数のパスワードクラス数を使用していることを確認します。

エラーメッセージ

KADM エラー: メモリー割り当ての失敗です。
(KADM err: Memory allocation failure)
原因

kadmin を実行するための十分なメモリーがありません。

解決方法

メモリーを解放して、もう一度 kadmin を実行します。

エラーメッセージ

KDC は要求したオプションを処理できません。
(KDC can't fulfill requested option)
原因

KDC は要求されたオプションを許可しませんでした。考えられる問題として、遅延または転送可能なオプションを要求したが、KDC がそれを許可しなかった可能性があります。また、TGT の更新を要求したが、更新可能な TGT がなかった可能性もあります。

解決方法

要求したオプションを KDC が許可しなかったのか、持っていないものを要求しようとしていたのかを確認します。

エラーメッセージ

KDC ポリシーは要求を拒否します。
(KDC policy rejects request)
原因

KDC ポリシーは要求を許可しませんでした。たとえば、KDC への要求に IP アドレスがなかったとか、要求した転送を KDC が許可しなかったなどです。

解決方法

kinit に正しいオプションを指定していることを確認します。必要であれば、要求を許可するように、プリンシパルに関連するポリシーを変更するか、プリンシパルの属性を変更します。ポリシーまたはプリンシパルを変更するには、kadmin(1M) を使用します。

エラーメッセージ

KDC 応答は予期したものと一致しませんでした。
(KDC reply did not match expectations)
原因

KDC の応答には、期待されたプリンシパル名が入っていませんでした。あるいは、応答時の値が間違っていました。

解決方法

通信している KDC が RFC1510 に準拠していること、送信した要求が Kerberos V5 の要求であること、あるいは KDC が利用可能であることを確認します。

エラーメッセージ

Kerberos V5 は認証を拒否します。
(Kerberos V5 refuses authentication)
原因

認証について、サーバーとネゴシエーションできませんでした。

解決方法

telnet コマンドの toggle authdebug を呼び出して認証デバッグを起動して、手がかりとなるようなデバッグメッセージを探します。また、資格が有効であることも確認します。

エラーメッセージ

鍵テーブルエントリが見つかりません。
(Key table entry not found)
原因

ネットワークアプリケーションサーバーの keytab 内にサービスプリンシパルのエントリが存在しません。

解決方法

適切なサービスプリンシパルをサーバーの keytab に追加して、Kerberos 化されたサービスを提供できるようにします。

エラーメッセージ

鍵テーブルのプリンシパルの鍵バージョン番号が正しくありません。
(Key version number for principal in key table is incorrect)
原因

プリンシパルの鍵バージョンが keytab と Kerberos 内で異なります。サービスの鍵が変更されたか、古いサービスチケットを使用している可能性があります。

解決方法

たとえば、kadmin を使用してサービスの鍵が変更された場合、新しい鍵を取り出して、サービスを実行しているホストの keytab に格納する必要があります。

また、古い鍵を持つ古いサービスチケットを使用している可能性もあります。この場合、kdestroy を実行して、もう一度 kinit を実行します。

エラーメッセージ

login: load_modules: /usr/lib/security/pam_krb5.so.1 モジュールを開けません。
(login: load_modules: can not open module /usr/lib/security/pam_krb5.so.1)
原因

Kerberos PAM モジュールがなくなったか、有効な実行可能バイナリではありません。

解決方法

Kerberos PAM モジュールが /usr/lib/security に存在しており、有効な実行可能バイナリであることを確認します。また、/etc/pam.confpam_krb5.so.1 への正しいパスが入っていることも確認します。

エラーメッセージ

krb5_get_in_tkt 内部でループが検出されました。
(Looping detected inside krb5_get_in_tkt)
原因

Kerberos は何回か初期チケットを獲得しようとしましたが、失敗しました。

解決方法

少なくとも 1 つの KDC が認証要求に応答していることを確認します。

エラーメッセージ

マスター鍵がデータベースと一致しません。
(Master key does not match database)
原因

読み込まれたデータベースダンプは、マスター鍵を含むデータベースから作成されていませんでした。このデータベースは /var/krb5/.k5.REALM にあります。

解決方法

読み込まれたデータベースダンプ内のマスター鍵が /var/krb5/.k5.REALM にあるマスター鍵と一致することを確認します。

エラーメッセージ

一致する資格が見つかりません。
(Matching credential not found)
原因

要求と一致する資格が見つかりませんでした。要求が必要とする資格は、資格キャッシュにありません。

解決方法

kdestroy でチケットを削除して、kinit で新しいチケットを作成します。

エラーメッセージ

メッセージの順序が違います。
(Message out of order)
原因

逐次順序のプライバシで送信されたメッセージが間違った順番で到着しました。転送中にいくつかのメッセージがなくなった可能性があります。

解決方法

Kerberos セッションを初期化し直してください。

エラーメッセージ

メッセージストリームが変更されました。
(Message stream modified)
原因

計算されたチェックサムとメッセージのチェックサムが一致しません。転送中にメッセージが変更された可能性があります。つまり、セキュリティが侵害された可能性を示しています。

解決方法

メッセージがネットワークを通じて正しく送信されていることを確認します。このメッセージは送信中にメッセージが傍受された可能性を示しているため、kdestroy でチケットを削除して、使用している Kerberos サービスを初期化し直します。