You are viewing an old version of this content. View the current version.
Compare with Current
View Version History
« Previous
Version 8
Next »
This article is updated for Certificate Manager 8.9.
This article describes how to install Smart ID Certificate Manager (CM) server components on Linux.
The CM servers comprises several sub-components that may be loaded into the same computer or distributed to several computers in order to obtain higher performance. See this list of CM server components.
Prerequisites
Prerequisites
Make sure you have access to the license file before starting the installation.
Step-by-step instruction
Install server components
- To make install_server.sh executable, issue this command:
chmod a+x install_server.sh
- Execute install_server.sh.
Enter the full installation path, for example:
Confirm the path.
Enter the full configuration files path, for example:
- Confirm the path.
- Enter the name of the license file.
- Confirm the file name.
Enter the number or name of each server component, for which you have a license, separated by space (" "). See this list of CM server components.
- Select the database engine from the list.
- Select the machine where the database is installed. Default is localhost.
- Select JDBC port for the database.
- Enter the database instance name.
- Enter the name of the database CM user. Default is lcmreq.
- Enter the password for the lcmreq user.
After the installation
Message after installation
- Await a message from the installation program confirming a successful installation. If an error message occurs, correct the indicated error and restart the installation using the shell script setup.sh located in the directory <install_root>/install.
Option: Start CM SNMP monitor: <install_root>/bin/cmsnmp start
.
Option: Move configuration files
After the installation, it is possible to manually move the configuration files to any other path. Do this before you start any of the CM server components.
Modify each <install_root>/bin/*_launch.conf file and point to a new configuration path:
SERVICEARGUMENTS='-p <new_configuration_path>'
- The service user used to run the CM components must have both read and write access rights to the new configuration path.
Executing as a service user
It is recommended to execute the CM services as a separate non-root service user. Do the following:
- Make sure the CM services are stopped.
- Create the user (for example,
useradd cmuser
). Make the service user owner of the directory <install_root> . For example, by issuing the following command:
chown -R cmuser:cmuser /opt/cm/server/
Update the files <install_root>/bin/*_launch.conf so that they specify a line with SERVICEUSER
, for example:
This can be scripted using a command such as:
sed -i -e 's/# SERVICEUSER/SERVICEUSER/' /opt/cm/server/bin/*_launch.conf
Executing as a system service
The <install_root>/bin/cmservices script can be used to install or remove the CF, CIS and CMSNMP services as system services.
Run the following command to install the CM services as system services. You must specify the user and group that the service should be run as.
sudo <install_root>/bin/cmservices install cf cmuser cmuser
This script can also be used to start, stop or check the status of any of the CM services, see an example here for CF:
sudo ./cmservices status cf
Start the services:
sudo service cmsnmp start
sudo service cis start
sudo service cf start
- Check the log files in <configuration_root>/logs to see that the services started successfully. If not, see the following steps for troubleshooting.
The CM server components will use the first found Java executable available on the $PATH. To use a specific Java version, or if $PATH does not include a directory where Java can be found, you can explicitly specify which Java to use by setting a parameter in <install_root>/bin/*_launch.conf:
JAVA=/usr/jvm/jdk-default/bin/java
- When installing CM services on a system that uses systemd, it is possible that the default $PATH as seen by the systemd service wrappers, does not include the expected Java version. If this is the case, then invoking, for example,
sudo service cis start
might not start the service - it will instead be reported as active (exited) by sudo service cis status
. To remedy this, see the previous step on how to explicitly set the Java executable to use. - While it is recommended to use systemd for running the CM services when available, it is also possible to specify a runtime directory for the services' PID and descriptor files when starting the CM component applications directly. The directory for storing the runtime files can be configured with the RUNTIMEDIR environment variable in the *_launch.conf file, or from the current directory if RUNTIMEDIR is not specified.