Questo contenuto non è disponibile nella lingua selezionata.
Chapter 12. Troubleshooting installation and cloning
This chapter covers some of the more common installation and migration issues that are encountered when installing Certificate System.
12.1. Installation Copia collegamentoCollegamento copiato negli appunti!
- Q: I cannot see any Certificate System packages or updates.
- Q: The init script returned an OK status, but my CA instance does not respond. Why?
- Q: I want to customize the subject name for the CA signing certificate, but do not see a way to do this using the pkispawn interactive install mode.
- Q: I want to set different certificate validity periods and extensions for my root certificate authority -but I do not see a way to set it using pkispawn.
- Q: I am seeing an HTTP 500 error code when I try to connect to the web services pages after configuring my subsystem instance.
I cannot see any Certificate System packages or updates.
Verify that your system is correctly registered to the Red Hat subscription management service, a valid subscription is assigned, and the Certificate System repository is enabled. For details, see Section 6.3.2.3, “Attaching a Red Hat subscription and enabling the Certificate System package repository”.
The init script returned an OK status, but my CA instance does not respond. Why?
This should not happen. Usually (but not always), this indicates a listener problem with the CA, but it can have many different causes. To see what errors have occurred, examine the journal
log by running the following command:
journalctl -u pki-tomcatd@instance_name.service
journalctl -u pki-tomcatd@instance_name.service
Alternatively, examine the debug log files at /var/log/pki/ instance_name/subsystem_type/debug
.
One situation is when there is a PID for the CA, indicating the process is running, but that no listeners have been opened for the server. This would return Java invocation class errors in the catalina.out
file:
This could mean that you have the wrong version of JSS or NSS. The process requires libnss3.so
in the path. Check this with this command:
ldd /usr/lib64/libjss4.so
ldd /usr/lib64/libjss4.so
If libnss3.so
is not found, set the correct classpath in the /etc/sysconfig/instance_name
configuration file. Then restart the CA using the systemctl restart pki-tomcatd@instance_name.service
command.
I want to customize the subject name for the CA signing certificate, but do not see a way to do this using the pkispawn
interactive install mode.
To do this, a configuration file representing delta links to the /usr/share/pki/server/etc/default.cfg
file is required. See the pkispawn(8)
and pki_default.cfg(5)
man pages.
I want to set different certificate validity periods and extensions for my root certificate authority -but I do not see a way to set it using pkispawn
.
You cannot currently do this using pkispawn
. However, there is a way to edit the certificate profiles used by pkispawn
to generate the root CA certificates.
You must do this before running pkispawn
to create a new CA instance.
Back up the original CA certificate profile used by
pkispawn
.cp -p /usr/share/pki/ca/conf/caCert.profile /usr/share/pki/ca/conf/caCert.profile.orig
# cp -p /usr/share/pki/ca/conf/caCert.profile /usr/share/pki/ca/conf/caCert.profile.orig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Open the CA certificate profile used by the configuration wizard.
vim /usr/share/pki/ca/conf/caCert.profile
# vim /usr/share/pki/ca/conf/caCert.profile
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Reset the validity period in the Validity Default to whatever you want. For example, to change the period to two years:
2.default.class=com.netscape.cms.profile.def.ValidityDefault 2.default.name=Validity Default 2.default.params.range=7200
2.default.class=com.netscape.cms.profile.def.ValidityDefault 2.default.name=Validity Default 2.default.params.range=7200
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Add any extensions by creating a new default entry in the profile and adding it to the list. For example, to add the Basic Constraint Extension, add the default (which, in this example, is default #9):
9.default.class=com.netscape.cms.profile.def.BasicConstraintsExtDefault 9.default.name=Basic Constraint Extension Constraint 9.default.params.basicConstraintsCritical=true 9.default.params.basicConstraintsIsCA=true 9.default.params.basicConstraintsPathLen=2
9.default.class=com.netscape.cms.profile.def.BasicConstraintsExtDefault 9.default.name=Basic Constraint Extension Constraint 9.default.params.basicConstraintsCritical=true 9.default.params.basicConstraintsIsCA=true 9.default.params.basicConstraintsPathLen=2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Then, add the default number to the list of defaults to use the new default:
list=2,4,5,6,7,8,9
list=2,4,5,6,7,8,9
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
Once the new profile is set up, then run
pkispawn
to create the new CA instance and go through the configuration wizard.
I am seeing an HTTP 500 error code when I try to connect to the web services pages after configuring my subsystem instance.
This is an unexpected generic error which can have many different causes. Check in the journal
, system
, and debug
log files for the instance to see what errors have occurred. This lists a couple of common errors, but there are many other possibilities.
Error #1: The LDAP database is not running.
If the Red Hat Directory Server instance use for the internal database is not running, then you cannot connect to the instance. This will be apparent in exceptions in the journal
file that the instance is not ready:
java.io.IOException: CS server is not ready to serve. com.netscape.cms.servlet.base.CMSServlet.service(CMSServlet.java:409) javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
java.io.IOException: CS server is not ready to serve.
com.netscape.cms.servlet.base.CMSServlet.service(CMSServlet.java:409)
javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
The Tomcat logs will specifically identify the problem with the LDAP connection:
5558.main - [29/Oct/2010:11:13:40 PDT] [8] [3] In Ldap (bound) connection pool to host ca1 port 389, Cannot connect to LDAP server. Error: netscape.ldap.LDAPException: failed to connect to server ldap://ca1.example.com:389 (91)
5558.main - [29/Oct/2010:11:13:40 PDT] [8] [3] In Ldap (bound) connection pool
to host ca1 port 389, Cannot connect to LDAP server. Error:
netscape.ldap.LDAPException: failed to connect to server
ldap://ca1.example.com:389 (91)
As will the instance’s debug
log:
[29/Oct/2010:11:39:10][main]: CMS:Caught EBaseException Internal Database Error encountered: Could not connect to LDAP server host ca1 port 389 Error netscape.ldap.LDAPException: failed to connect to server ldap://ca1:389 (91) at com.netscape.cmscore.dbs.DBSubsystem.init(DBSubsystem.java:262)
[29/Oct/2010:11:39:10][main]: CMS:Caught EBaseException
Internal Database Error encountered: Could not connect to LDAP server host
ca1 port 389 Error netscape.ldap.LDAPException: failed to connect to
server ldap://ca1:389 (91)
at com.netscape.cmscore.dbs.DBSubsystem.init(DBSubsystem.java:262)
Error #2: A VPN is blocking access.
Another possibility is that you are connecting to the subsystem over a VPN. The VPN must have a configuration option like Use this connection only for resources on its network enabled. If that option is not enabled, then the journal
log file for the instance’s Tomcat service shows a series of connection errors that result in the HTTP 500 error:
12.2. Java Console Copia collegamentoCollegamento copiato negli appunti!
- Q: I cannot open the pkiconsole and I am seeing Java exceptions in stdout.
- Q: I tried to run pkiconsole, and I got Socket exceptions in stdout. Why?
- Q: I attempt to start the console, and the system prompts me for my user name and password. After I enter these credentials, the console fails to appear.
I cannot open the pkiconsole
and I am seeing Java exceptions in stdout.
This probably means that you have the wrong JRE installed or the wrong JRE set as the default. Run alternatives --config java
to see what JRE is selected. Red Hat Certificate System requires OpenJDK 1.7.
I tried to run pkiconsole
, and I got Socket exceptions in stdout. Why?
This means that there is a port problem. Either there are incorrect SSL/TLS settings for the administrative port (meaning there is bad configuration in the server.xml
) or the wrong port was given to access the admin interface.
Port errors will look like the following:
I attempt to start the console, and the system prompts me for my user name and password. After I enter these credentials, the console fails to appear.
Make sure the user name and password you entered are valid. If so, enable the debug output and examine it.
To enable the debug output, open the /usr/bin/pkiconsole
file, and add the following lines:
============================================ ${JAVA} ${JAVA_OPTIONS} -cp ${CP} -Djava.util.prefs.systemRoot=/tmp/.java -Djava.util.prefs.userRoot=/tmp/java com.netscape.admin.certsrv.Console -s instanceID -D 9:all -a $1 ---------- note: "-D 9:all" is for verbose output on the console. ============================================
============================================
${JAVA} ${JAVA_OPTIONS} -cp ${CP} -Djava.util.prefs.systemRoot=/tmp/.java -Djava.util.prefs.userRoot=/tmp/java com.netscape.admin.certsrv.Console -s instanceID -D 9:all -a $1
----------
note: "-D 9:all" is for verbose output on the console.
============================================