第17章 トラブルシューティング


この章では、Certificate System のインストール時に発生する一般的な使用上の問題のいくつかを説明します。

問:

init スクリプトは OK ステータスを返しましたが、その CA インスタンスは応答しません。理由

答:

これは起こらないはずです。通常 (常にではありませんが)、これは CA のリスナーの問題を示しますが、さまざまな原因が考えられます。インスタンスの catalina.out、システム、およびデバッグログファイルをチェックして、発生したエラーを確認します。これは、いくつかの共通エラーを示しています。1 つの状況は、CA の PID があり、プロセスが実行されているが、サーバーのリスナーが開かれていないことを示している場合です。これにより、catalina.out ファイルに Java 呼び出しクラスエラーが返されます。

Oct 29, 2010 4:15:44 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-9080
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav64)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav43)
        at java.lang.reflect.Method.invoke(Method.jav615)
        at org.apache.catalina.startup.Bootstrap.load(Bootstrap.jav243)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.jav408)
Caused by: java.lang.UnsatisfiedLinkError: jss4

これは、JSS または NSS の誤ったバージョンがあることを意味します。このプロセスでは、パスに libnss3.so が必要です。以下のコマンドでこれを確認します。

# ldd /usr/lib64/libjss4.so

libnss3.so が見つからない場合は、LD_LIBRARY_PATH 変数の設定を解除して CA を再起動してください。

# unset LD_LIBRARY_PATH
# pki-server restart <instance_name>
問:

pkiconsole が開かず、stdout に Java 例外が表示される

答:

これはおそらく、間違った JRE がインストールされているか、間違った JRE がデフォルトとして設定されていることを意味します。alternatives --config java を実行して、選択されている JRE を確認します。Red Hat Certificate System には OpenJDK 1.8 が必要です。

問:

pkiconsole の実行を試みたが "Socket exceptions in stdout" が表示される理由

答:

これは、ポートに問題があることを意味します。管理ポートの SSL 設定が間違っている (server.xml の設定が間違っている) か、管理者インターフェイスにアクセスするために間違ったポートが付与されています。ポートエラーは以下のようになります。

NSS Cipher Supported '0xff04'
java.io.IOException: SocketException cannot read on socket
        at org.mozilla.jss.ssl.SSLSocket.read(SSLSocket.jav1006)
        at org.mozilla.jss.ssl.SSLInputStream.read(SSLInputStream.jav70)
        at
com.netscape.admin.certsrv.misc.HttpInputStream.fill(HttpInputStream.jav303)
        at
com.netscape.admin.certsrv.misc.HttpInputStream.readLine(HttpInputStream.jav224)
        at
com.netscape.admin.certsrv.connection.JSSConnection.readHeader(JSSConnection.jav439)
        at
com.netscape.admin.certsrv.connection.JSSConnection.initReadResponse(JSSConnection.jav430)
        at
com.netscape.admin.certsrv.connection.JSSConnection.sendRequest(JSSConnection.jav344)
        at
com.netscape.admin.certsrv.connection.AdminConnection.processRequest(AdminConnection.jav714)
        at
com.netscape.admin.certsrv.connection.AdminConnection.sendRequest(AdminConnection.jav623)
        at
com.netscape.admin.certsrv.connection.AdminConnection.sendRequest(AdminConnection.jav590)
        at
com.netscape.admin.certsrv.connection.AdminConnection.authType(AdminConnection.jav323)
        at
com.netscape.admin.certsrv.CMSServerInfo.getAuthType(CMSServerInfo.jav113)
        at com.netscape.admin.certsrv.CMSAdmin.run(CMSAdmin.jav499)
        at com.netscape.admin.certsrv.CMSAdmin.run(CMSAdmin.jav548)
        at com.netscape.admin.certsrv.Console.main(Console.jav1655)
問:

証明書の登録を試みたが "request is not submitted…​Subject Name Not Found" エラーが表示される

答:

これは、カスタム LDAP ディレクトリー認証プロファイルで最も頻繁に発生し、ディレクトリー操作が失敗したことを示しています。特に、作業 DN を作成できないために失敗しました。このエラーは CA のデバッグログに表示されます。たとえば、このプロファイルは、ディレクトリーを認識しないカスタム属性 (MYATTRIBUTE) を使用します。

[14/Feb/2011:15:52:25][http-1244-Processor24]: BasicProfile: populate() policy
setid =userCertSet
[14/Feb/2011:15:52:25][http-1244-Processor24]: AuthTokenSubjectNameDefault:
populate start
[14/Feb/2011:15:52:25][http-1244-Processor24]: AuthTokenSubjectNameDefault:
java.io.IOException: Unknown AVA keyword 'MYATTRIBUTE'.
[14/Feb/2011:15:52:25][http-1244-Processor24]: ProfileSubmitServlet: populate
Subject Name Not Found
[14/Feb/2011:15:52:25][http-1244-Processor24]: CMSServlet: curDate=Mon Feb 14
15:52:25 PST 2011 id=caProfileSubmit time=13

サブジェクト DN で使用されるカスタムコンポーネント (属性、オブジェクトクラス、および未登録の OID) は、障害を引き起こす可能性があります。ほとんどの場合、RHC 2253 で定義されている X.509 属性は、カスタム属性ではなくサブジェクト DN で使用する必要があります。

問:

登録した証明書が公開されないのはなぜですか。

答:

これは通常 CA の設定が間違っていることを示しています。エラーが主にデバッグログで検索され、このログには設定が間違っている場所が示されます。たとえば、以下にはマッパーに関連する問題があります。

[31/Jul/2010:11:18:29][Thread-29]: LdapSimpleMap: cert subject
dn:UID=me,E=me@example.com,CN=yes
[31/Jul/2010:11:18:29][Thread-29]: Error mapping:
mapper=com.netscape.cms.publish.mappers.LdapSimpleMap@258fdcd0 error=Cannot
find a match in the LDAP server for certificate. netscape.ldap.LDAPException:
error result (32); matchedDN = ou=people,c=test; No such object

CA の CS.cfg ファイルまたは CA コンソールの Publishing タブで公開設定を確認します。この例では、この問題はマッピングパラメーターにあり、既存 の LDAP 接尾辞を指している必要があります。

ca.publish.mapper.instance.LdapUserCertMap.dnPattern=UID=$subj.UID,dc=publish
問:

リモートホストから pkiconsole ユーティリティーを開く方法

答:

特定の状況では、管理者はリモートホストから Certificate System サーバー上の pkiconsole を開く必要があります。このため、管理者は Virtual Network Computing (VNC) 接続を使用できます。

  1. Red Hat Certificate System サーバーなどで VNC サーバーを設定します。リモートデスクトップアクセスの詳細は、Red Hat Enterprise Linux 8 ドキュメントの デスクトップへのリモートアクセス を参照してください。

    重要

    pkiconsole ユーティリティーは、Federal Information Processing Standard (FIPS) モードが有効になっているサーバーでは実行できません。Certificate System サーバーで FIPS モードが有効になっている場合は、Red Hat Enterprise Linux で別のホストを使用して VNC サーバーを実行します。このユーティリティーは非推奨になることに注意してください。

  2. VNC ウィンドウで pkiconsole ユーティリティーを開きます。以下に例を示します。

    # pkiconsole -d nssdb -n 'optional client cert nickname' https://server.example.com:8443/ca
注記

VNC ビューアーは、さまざまなオペレーティングシステムで使用できます。ただし、Red Hat は、統合リポジトリーから Red Hat Enterprise Linux にインストールされた VNC ビューアーのみをサポートします。

LDAP サーバーが応答しないときにどうすればよいですか。

内部データベースに使用されている Red Hat Directory Server インスタンスが実行されていない場合、接続の問題が発生した場合、または TLS 接続障害が発生した場合、それに依存するサブシステムインスタンスに接続できません。インスタンスのデバッグログは、特に LDAP 接続の問題を特定します。たとえば、LDAP サーバーがオンラインではない場合は、以下のようになります。

[02/Apr/2019:15:55:41][authorityMonitor]: authorityMonitor: failed to get LDAPConnection. Retrying in 1 second.
[02/Apr/2019:15:55:42][authorityMonitor]: In LdapBoundConnFactory::getConn()
[02/Apr/2019:15:55:42][authorityMonitor]: masterConn is null.
[02/Apr/2019:15:55:42][authorityMonitor]: makeConnection: errorIfDown true
[02/Apr/2019:15:55:42][authorityMonitor]: TCP Keep-Alive: true
java.net.ConnectException: Connection refused (Connection refused)
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.jav350)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.jav206)
[02/Apr/2019:15:55:42][authorityMonitor]: Can't create master connection in LdapBoundConnFactory::getConn!
    Could not connect to LDAP server host example911.redhat.com port 389 Error netscape.ldap.LDAPException:
        Unable to create socket: java.net.ConnectException: Connection refused (Connection refused) (-1)

抜線された、Red Hat Directory Server が停止した、重大なパケット損失が発生した、または TLS 接続を再作成できることを確認したなど、根本的なネットワークの問題を修正した後、問題の Certificate System インスタンスを停止して開始します。

# systemctl stop pki-tomcatd-nuxwdog@<instance_name>.service
# systemctl start pki-tomcatd-nuxwdog@<instance_name>.service
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.