Chapter 6. Performing Additional Configuration on Satellite Server
6.1. Installing and configuring Red Hat Lightspeed in Satellite Copy linkLink copied to clipboard!
Red Hat Lightspeed in Satellite analyzes system health and configuration by applying predefined rules to a small set of local data, such as installed packages, running services, and configuration settings. When you install Red Hat Lightspeed in Satellite locally, you can generate Red Hat Lightspeed recommendations without sending system data to Red Hat services.
- With Red Hat Lightspeed in Satellite enabled, you cannot use the hosted Red Hat Lightspeed services for hosts registered to your Satellite. Enabling Red Hat Lightspeed in Satellite prevents you from using any Red Hat Hybrid Cloud Console services on hosts registered to Satellite.
- If you install Satellite with external databases, you cannot enable Red Hat Lightspeed in Satellite. Enabling Red Hat Lightspeed in Satellite prevents you from using external databases.
Red Hat Lightspeed in Satellite follows the standard lifecycle policy for Red Hat Satellite. To update Red Hat Lightspeed in Satellite, follow the standard update instructions for Satellite.
6.1.1. Installing Red Hat Lightspeed in Satellite with the Satellite ISO image Copy linkLink copied to clipboard!
You can use the Satellite installation ISO image to access the required container content.
Prerequisites
-
Ensure that
skopeois installed. For more information, see Getting container tools in Red Hat Enterprise Linux 9 Building, running, and managing containers.
Procedure
- Download and mount the Satellite ISO image: For more information, see Section 4.3, “Installing the Satellite packages from the offline repositories”.
- Set up the local repositories for disconnected environments. For more information, see Section 4.3, “Installing the Satellite packages from the offline repositories”.
Set up containers on your Satellite Server:
# /media/sat6/setup_containersEnable the plugin:
# satellite-installer --enable-iopDownload and populate the Common Vulnerabilities and Exposures (CVE) mapping file:
$ curl -o cvemap.xml https://security.access.redhat.com/data/meta/v1/cvemap.xml-
Transfer the
cvemap.xmlfile to your disconnected Satellite Server. Copy the file to
/var/lib/foreman/:# cp cvemap.xml /var/lib/foreman/Satellite detects the file and automatically publishes it to
/var/www/html/pub/iop/data/meta/v1/cvemap.xml.
6.1.2. Installing Red Hat Lightspeed in Satellite by using export and import Copy linkLink copied to clipboard!
You can transfer the container images from a connected system to a disconnected Satellite Server.
Prerequisites
- You have a connected system with access to the container registry.
- You have prepared a disconnected Satellite Server.
- Ensure that Podman is installed on both systems. For more information, see Getting container tools in Red Hat Enterprise Linux 9 Building, running, and managing containers.
Procedure
On the connected system, log in to the container registry:
$ podman login --username My_Username --password My_Password registry.redhat.ioExport the container images. Save the following script to a file and execute it on the connected system:
#!/bin/bash images=( "satellite/iop-ingress-rhel9:6.18" "satellite/iop-advisor-frontend-rhel9:6.18" "satellite/iop-host-inventory-rhel9:6.18" "satellite/iop-vmaas-rhel9:6.18" "satellite/iop-remediations-rhel9:6.18" "satellite/iop-vulnerability-frontend-rhel9:6.18" "satellite/iop-host-inventory-frontend-rhel9:6.18" "satellite/iop-advisor-backend-rhel9:6.18" "satellite/iop-puptoo-rhel9:6.18" "satellite/iop-yuptoo-rhel9:6.18" "satellite/iop-insights-engine-rhel9:6.18" "satellite/iop-vulnerability-engine-rhel9:6.18" "satellite/iop-gateway-rhel9:6.18" "amq-streams/kafka-39-rhel9:2.9.1-1" ) for image in "${images[@]}"; do name=$(basename "${image}" | cut -d: -f1) image_url="registry.redhat.io/${image}" echo "Processing ${image}..." # Pull the image podman pull ${image_url} # Save image to archive podman save --output /tmp/${name}.tar ${image_url} done-
Transfer the archive files to the disconnected Satellite Server. Place the archive files in the
/tmpdirectory. On the disconnected Satellite Server, import the container images. Save the following script to a file and execute it on the disconnected Satellite Server:
#!/bin/bash images=( "satellite/iop-ingress-rhel9:6.18" "satellite/iop-advisor-frontend-rhel9:6.18" "satellite/iop-host-inventory-rhel9:6.18" "satellite/iop-vmaas-rhel9:6.18" "satellite/iop-remediations-rhel9:6.18" "satellite/iop-vulnerability-frontend-rhel9:6.18" "satellite/iop-host-inventory-frontend-rhel9:6.18" "satellite/iop-advisor-backend-rhel9:6.18" "satellite/iop-puptoo-rhel9:6.18" "satellite/iop-yuptoo-rhel9:6.18" "satellite/iop-insights-engine-rhel9:6.18" "satellite/iop-vulnerability-engine-rhel9:6.18" "satellite/iop-gateway-rhel9:6.18" "amq-streams/kafka-39-rhel9:2.9.1-1" ) for image in "${images[@]}"; do name=$(basename "${image}" | cut -d: -f1) image_url="registry.redhat.io/${image}" echo "Processing ${image}..." # Import the image podman load --input /tmp/${name}.tar doneEnable the Red Hat Lightspeed in Satellite plugin:
# satellite-installer --enable-iop
6.2. Configuring Satellite Server to consume content from a custom CDN by using Satellite web UI Copy linkLink copied to clipboard!
If you have an internal Content Delivery Network (CDN) or serve content on an accessible web server, you can configure your Satellite Server to consume Red Hat repositories from this CDN server instead of the Red Hat CDN. A CDN server can be any web server that mirrors repositories in the same directory structure as the Red Hat CDN.
You can configure the source of content for each organization. Satellite recognizes automatically which Red Hat repositories from the subscription manifest in your organization are available on your CDN server.
Prerequisites
- You have a CDN server that provides Red Hat content and is accessible by Satellite Server.
- If your CDN server uses HTTPS, ensure you have uploaded the SSL certificate into Satellite. For more information, see Importing Custom SSL Certificates in Managing content.
- You have uploaded a manifest to your organization.
Procedure
- In the Satellite web UI, navigate to Content > Subscriptions.
- Click Manage Manifest.
- Select the CDN Configuration tab.
- Select the Custom CDN tab.
- In the URL field, enter the URL of your CDN server from which you want Satellite Server to consume Red Hat repositories.
- Optional: In the SSL CA Content Credential, select the SSL certificate of the CDN server.
- Click Update.
- You can now enable Red Hat repositories consumed from your internal CDN server.
6.3. Configuring Satellite Server to consume content from a custom CDN by using Hammer CLI Copy linkLink copied to clipboard!
If you have an internal Content Delivery Network (CDN) or serve content on an accessible web server, you can configure your Satellite Server to consume Red Hat repositories from this CDN server instead of the Red Hat CDN. A CDN server can be any web server that mirrors repositories in the same directory structure as the Red Hat CDN.
You can configure the source of content for each organization. Satellite recognizes automatically which Red Hat repositories from the subscription manifest in your organization are available on your CDN server.
Prerequisites
- You have a CDN server that provides Red Hat content and is accessible by Satellite Server.
- If your CDN server uses HTTPS, ensure you have uploaded the SSL certificate into Satellite. For more information, see Importing Custom SSL Certificates in Managing content.
- You have uploaded a manifest to your organization.
Procedure
- Connect to your Satellite Server using SSH.
Set CDN configuration to your custom CDN server:
$ hammer organization configure-cdn \ --name="My_Organization" \ --type=custom_cdn \ --url https://my-cdn.example.com \ --ssl-ca-credential-id "My_CDN_CA_Cert_ID"
6.4. Configuring Inter-Satellite Synchronization (ISS) Copy linkLink copied to clipboard!
Configure Inter-Satellite Synchronization on your disconnected Satellite Server to provide content in your disconnected network.
6.4.1. Configuring Satellite Server to synchronize content through exports by using Satellite web UI Copy linkLink copied to clipboard!
If you deployed your downstream Satellite Server as air gapped, configure your Satellite Server as such to avoid attempts to consume content from a network.
Procedure
- In the Satellite web UI, navigate to Content > Subscriptions.
- Click Manage Manifest.
- Switch to the CDN Configuration tab.
- Select the Export Sync tab.
- Click Update.
Additional resources
6.4.2. Configuring Satellite Server to synchronize content through exports by using Hammer CLI Copy linkLink copied to clipboard!
If you deployed your downstream Satellite Server as air gapped, configure your Satellite Server as such to avoid attempts to consume content from a network.
Procedure
- Log in to your Satellite Server by using SSH.
Set CDN configuration to sync by using exports:
$ hammer organization configure-cdn \ --name="My_Organization" \ --type=export_sync
Additional resources
6.4.3. Configuring Satellite Server to synchronize content over a network by using Satellite web UI Copy linkLink copied to clipboard!
Configure a downstream Satellite Server to synchronize repositories from a connected upstream Satellite Server over HTTPS by using the Satellite web UI.
Prerequisites
- A network connection exists between the upstream Satellite Server and the downstream Satellite Server.
- You imported the same subscription manifest on both the upstream and downstream Satellite Server. For more information, see Section 4.9, “Importing Red Hat subscription manifests into Satellite”.
- On the upstream Satellite Server, you enabled the required repositories for the organization. For more information, see Enabling Red Hat Repositories in Managing content.
The upstream user is an admin or has the following permissions:
-
view_organizations -
view_products -
export_content -
view_lifecycle_environments -
view_content_views
-
-
On the downstream Satellite Server, you have imported the SSL certificate of the upstream Satellite Server using the contents of
http://upstream-satellite.example.com/pub/katello-server-ca.crt. For more information, see Importing SSL Certificates in Managing content. - The downstream user is an admin or has the permissions to create product repositories and organizations.
Procedure
- Navigate to Content > Subscriptions.
- Click Manage Manifest.
- Navigate to the CDN Configuration tab.
- Select the Network Sync tab.
- In the URL field, enter the address of the upstream Satellite Server.
- In the Username, enter your username for upstream login.
- In the Password, enter your password or personal access token for upstream login.
- In the Organization label field, enter the label of the upstream organization.
-
Optional: In the Lifecycle Environment Label field, enter the label of the upstream lifecycle environment. Default is
Library. -
Optional: In the Content view label field, enter the label of the upstream content view. Default is
Default_Organization_View. - From the SSL CA Content Credential menu, select a CA certificate used by the upstream Satellite Server.
- Click Update.
- In the Satellite web UI, navigate to Content > Products.
- Select the product that contains the repositories that you want to synchronize.
From the Select Action menu, select Sync Now to synchronize all repositories within the product.
You can also create a synchronization plan to ensure updates on a regular basis. For more information, see Creating a Synchronization Plan in Managing content.
6.4.4. Configuring Satellite Server to synchronize content over a network by using Hammer CLI Copy linkLink copied to clipboard!
Configure a downstream Satellite Server to synchronize repositories from a connected upstream Satellite Server over HTTPS by using Hammer CLI.
Prerequisites
- A network connection exists between the upstream Satellite Server and the downstream Satellite Server.
- You imported the same subscription manifest on both the upstream and downstream Satellite Server. For more information, see Section 4.9, “Importing Red Hat subscription manifests into Satellite”.
- On the upstream Satellite Server, you enabled the required repositories for the organization. For more information, see Enabling Red Hat Repositories in Managing content.
The upstream user is an admin or has the following permissions:
-
view_organizations -
view_products -
export_content -
view_lifecycle_environments -
view_content_views
-
-
On the downstream Satellite Server, you have imported the SSL certificate of the upstream Satellite Server using the contents of
http://upstream-satellite.example.com/pub/katello-server-ca.crt. For more information, see Importing SSL Certificates in Managing content. - The downstream user is an admin or has the permissions to create product repositories and organizations.
Procedure
- Connect to your downstream Satellite Server using SSH.
View information about the upstream CA certificate:
$ hammer content-credential show \ --name="My_Upstream_CA_Cert" \ --organization="My_Downstream_Organization"Note the ID of the CA certificate for the next step.
Set CDN configuration to an upstream Satellite Server:
$ hammer organization configure-cdn \ --name="My_Downstream_Organization" \ --type=network_sync \ --url https://upstream-satellite.example.com \ --username upstream_username --password upstream_password \ --ssl-ca-credential-id "My_Upstream_CA_Cert_ID" \ --upstream-organization-label="_My_Upstream_Organization" \ [--upstream-lifecycle-environment-label="My_Lifecycle_Environment"] \ [--upstream-content-view-label="My_Content_View"]The default lifecycle environment label is
Library. The default content view label isDefault_Organization_View.
6.5. Configuring pull-based transport for remote execution Copy linkLink copied to clipboard!
By default, remote execution uses push-based SSH as the transport mechanism for the Script provider. If your infrastructure prohibits outgoing connections from Satellite Server to hosts, you can use remote execution with pull-based transport instead, because the host initiates the connection to Satellite Server. The use of pull-based transport is not limited to those infrastructures.
The pull-based transport comprises pull-mqtt mode on Capsules in combination with a pull client running on hosts.
The pull-mqtt mode works only with the Script provider. Ansible and other providers will continue to use their default transport settings.
Procedure
Enable the pull-based transport on your Satellite Server:
# satellite-installer --foreman-proxy-plugin-remote-execution-script-mode pull-mqttConfigure the firewall to allow the MQTT service on port 1883:
# firewall-cmd --add-service=mqttMake the changes persistent:
# firewall-cmd --runtime-to-permanentIn
pull-mqttmode, hosts subscribe for job notifications to either your Satellite Server or any Capsule Server through which they are registered. Ensure that Satellite Server sends remote execution jobs to that same Satellite Server or Capsule Server:$ hammer settings set \ --name remote_execution_prefer_registered_through_proxy \ --value true
Next steps
- Configure your hosts for the pull-based transport. For more information, see Transport modes for remote execution in Managing hosts.
6.6. Enabling power management on hosts Copy linkLink copied to clipboard!
To perform power management tasks on hosts using the intelligent platform management interface (IPMI) or a similar protocol, you must enable the baseboard management controller (BMC) module on Satellite Server.
Red Hat Satellite supports the following BMC providers:
-
freeipmi -
ipmitool -
redfish
Prerequisites
- Your host has a network interface of the BMC type. Satellite Server uses this NIC to pass credentials to the host.
Procedure
Enable the BMC module and select the default provider:
# satellite-installer \ --foreman-proxy-bmc "true" \ --foreman-proxy-bmc-default-provider "freeipmi"- In the Satellite web UI, navigate to Infrastructure > Subnets.
- Select the subnet of your host.
- On the Capsules tab, select your Satellite Server as BMC Capsule.
- Click Submit.
Next steps
- Configure a BMC interface on your host. For more information, see Configuring a baseboard management controller (BMC) interface in Managing hosts.
6.7. Configuring Satellite Server for outgoing emails Copy linkLink copied to clipboard!
To send email messages from Satellite Server, you can use an SMTP server or the sendmail command.
The sendmail command is a deprecated feature. Deprecated functionality is still included in Satellite and continues to be supported. However, it will be removed in a future release of this product and is not recommended for new deployments.
Use the SMTP service on Satellite Server instead.
For the most recent list of major functionality that has been deprecated or removed within Satellite, refer to the Deprecated features section of the Satellite release notes.
Prerequisites
-
Some SMTP servers with anti-spam protection or greylisting features are known to cause problems. To set up outgoing email with such a service, install and configure an SMTP service on Satellite Server for relay or use the
sendmailcommand.
Procedure
- In the Satellite web UI, navigate to Administer > Settings.
Click the Email tab and set the configuration options to match your preferred delivery method. The changes have an immediate effect.
The following example shows the configuration options for using an SMTP server:
Expand Table 6.1. Using an SMTP server as a delivery method Name Example value Additional information Delivery method
SMTP
SMTP address
smtp.example.com
SMTP authentication
login
SMTP HELO/EHLO domain
example.com
SMTP password
password
Use the login credentials for the SMTP server.
SMTP port
25
SMTP username
user@example.com
Use the login credentials for the SMTP server.
The following example uses gmail.com as an SMTP server:
Expand Table 6.2. Using gmail.com as an SMTP server Name Example value Additional information Delivery method
SMTP
SMTP address
smtp.gmail.com
SMTP authentication
plain
SMTP HELO/EHLO domain
smtp.gmail.com
SMTP enable StartTLS auto
Yes
SMTP password
app password
Use the Google app password. For more information, see Sign in with app passwords in Google Help Center.
SMTP port
587
SMTP username
user@gmail.com
Use the Google account name.
The following example uses the
sendmailcommand as a delivery method:Expand Table 6.3. Using sendmail as a delivery method Name Example value Additional information Delivery method
Sendmail
Sendmail location
/usr/sbin/sendmail
For security reasons, both Sendmail location and Sendmail argument settings are read-only and can be only set in
/etc/foreman/settings.yaml. Both settings currently cannot be set viasatellite-installer. For more information see the sendmail 1 man page.Sendmail arguments
-i
To send email by using an SMTP server that uses TLS authentication, also perform one of the following steps:
Mark the CA certificate of the SMTP server as trusted. To do so, execute the following commands on Satellite Server:
# cp mailca.crt /etc/pki/ca-trust/source/anchors/ # update-ca-trust extractWhere
mailca.crtis the CA certificate of the SMTP server.-
Alternatively, in the Satellite web UI, set the
SMTP enable StartTLS autooption toNo.
-
Click Test email to send a test message to the user’s email address to confirm the configuration is working. If a message fails to send, the Satellite web UI displays an error. See the log at
/var/log/foreman/production.logfor further details.
Additional resources
6.8. Configuring Satellite to manage the lifecycle of a host registered to a Identity Management realm Copy linkLink copied to clipboard!
As well as providing access to Satellite Server, hosts provisioned with Satellite can also be integrated with Identity Management realms. Red Hat Satellite has a realm feature that automatically manages the lifecycle of any system registered to a realm or domain provider.
Use this section to configure Satellite Server or Capsule Server for Identity Management realm support, then add hosts to the Identity Management realm group.
6.8.1. Installing and configuring Identity Management packages on Satellite Server or Capsule Server Copy linkLink copied to clipboard!
To use Identity Management for provisioned hosts, complete the following steps to install and configure Identity Management packages on Satellite Server or Capsule Server:
Procedure
Install the
ipa-clientpackage on Satellite Server or Capsule Server:# satellite-maintain packages install ipa-clientConfigure the server as a Identity Management client:
# ipa-client-installCreate a realm proxy user,
realm-capsule, and the relevant roles in Identity Management:# foreman-prepare-realm admin realm-capsuleNote the principal name that returns and your Identity Management server configuration details because you require them for the following procedure.
6.8.2. Configuring Satellite Server or Capsule Server for Identity Management realm support Copy linkLink copied to clipboard!
Complete the following procedure on your Satellite Server and every Capsule Server that you want to use.
Procedure
Copy the
/root/freeipa.keytabfile to any Capsule Server that you want to include in the same principal and realm:# scp /root/freeipa.keytab root@capsule.example.com:/etc/foreman-proxy/freeipa.keytabOn your Satellite Server, move the
/root/freeipa.keytabfile to the/etc/foreman-proxydirectory:# mv /root/freeipa.keytab /etc/foreman-proxyOn your Satellite Server and Capsule Servers, set ownership to the
foreman-proxyuser and group:# chown foreman-proxy:foreman-proxy /etc/foreman-proxy/freeipa.keytabEnter the following command on all Capsules that you want to include in the realm. If you use the integrated Capsule on Satellite, enter this command on Satellite Server:
# satellite-installer --foreman-proxy-realm true \ --foreman-proxy-realm-keytab /etc/foreman-proxy/freeipa.keytab \ --foreman-proxy-realm-principal realm-capsule@EXAMPLE.COM \ --foreman-proxy-realm-provider freeipaYou can also use these options when you first configure the Satellite Server.
Ensure that the most updated versions of the ca-certificates package is installed and trust the Identity Management Certificate Authority:
# cp /etc/ipa/ca.crt /etc/pki/ca-trust/source/anchors/ipa.crt # update-ca-trust extractOptional: If you configure Identity Management on an existing Satellite Server or Capsule Server, complete the following steps to ensure that the configuration changes take effect:
Restart the foreman-proxy service:
# systemctl restart foreman-proxy- In the Satellite web UI, navigate to Infrastructure > Capsules.
- Locate the Capsule you have configured for Identity Management and from the list in the Actions column, select Refresh.
6.8.3. Creating a realm for the Identity Management-enabled Capsule Copy linkLink copied to clipboard!
After you configure your Capsule with Identity Management, you must create a realm and add the Identity Management-configured Capsule to the realm.
Procedure
- In the Satellite web UI, navigate to Infrastructure > Realms and click Create Realm.
- In the Name field, enter a name for the realm.
- From the Realm Type list, select the type of realm.
- From the Realm Capsule list, select Capsule Server where you have configured Identity Management.
- Click the Locations tab and from the Locations list, select the location where you want to add the new realm.
- Click the Organizations tab and from the Organizations list, select the organization where you want to add the new realm.
- Click Submit.
6.8.4. Updating host groups with realm information Copy linkLink copied to clipboard!
You must update any host groups that you want to use with the new realm information.
Procedure
- In the Satellite web UI, navigate to Configure > Host Groups.
- Select the host group that you want to update.
- Select the Network tab.
- From the Realm list, select the realm you create as part of this procedure.
- Click Submit.
6.8.5. Adding hosts to a Identity Management host group Copy linkLink copied to clipboard!
Identity Management supports the ability to set up automatic membership rules based on a system’s attributes. Red Hat Satellite’s realm feature provides administrators with the ability to map the Red Hat Satellite host groups to the Identity Management parameter userclass which allow administrators to configure automembership.
When nested host groups are used, they are sent to the Identity Management server as they are displayed in the Red Hat Satellite User Interface. For example, Parent/Child/Child.
Satellite Server or Capsule Server sends updates to the Identity Management server, however automembership rules are only applied at initial registration.
Procedure
On the Identity Management server, create a host group:
# ipa hostgroup-add hostgroup_name --desc=hostgroup_descriptionCreate an
automembershiprule:# ipa automember-add --type=hostgroup hostgroup_name automember_ruleWhere you can use the following options:
-
automember-addflags the group as an automember group. -
--type=hostgroupidentifies that the target group is a host group, not a user group. -
automember_ruleadds the name you want to identify the automember rule by.
-
Define an automembership condition based on the
userclassattribute:# ipa automember-add-condition --key=userclass --type=hostgroup --inclusive-regex=^webserver hostgroup_name ---------------------------------- Added condition(s) to "hostgroup_name" ---------------------------------- Automember Rule: automember_rule Inclusive Regex: userclass=^webserver ---------------------------- Number of conditions added 1 ----------------------------Where you can use the following options:
-
automember-add-conditionadds regular expression conditions to identify group members. -
--key=userclassspecifies the key attribute asuserclass. -
--type=hostgroupidentifies that the target group is a host group, not a user group. -
--inclusive-regex=^webserver identifies matching values with a regular expression pattern. hostgroup_name – identifies the target host group’s name.
NoteWhen a system is added to Satellite Server’s hostgroup_name host group, it is added automatically to the Identity Management server’s "hostgroup_name" host group. Identity Management host groups allow for Host-Based Access Controls (HBAC), sudo policies and other Identity Management functions.
-
6.9. Configuring Satellite Server with a custom SSL certificate Copy linkLink copied to clipboard!
By default, Red Hat Satellite uses a self-signed SSL certificate to enable encrypted communications between Satellite Server, Capsule Servers, and all hosts. If you cannot use a Satellite self-signed certificate, you can configure Satellite Server to use an SSL certificate signed by an external certificate authority (CA).
When you configure Red Hat Satellite with custom SSL certificates, you must fulfill the following requirements:
- You must use the privacy-enhanced mail (PEM) encoding for the SSL certificates.
- You must not use the same SSL certificate for both Satellite Server and Capsule Server.
- The same CA must sign certificates for Satellite Server and Capsule Server.
- An SSL certificate must not also be a CA certificate.
- An SSL certificate must include a subject alt name (SAN) entry that matches the common name (CN).
- An SSL certificate must be allowed for Key Encipherment using a Key Usage extension.
- An SSL certificate must not have a shortname as the CN.
- You must not set a passphrase for the private key.
To configure your Satellite Server with a custom certificate, complete the following procedures:
- Section 6.9.1, “Creating a custom SSL certificate for Satellite Server”
- Section 6.9.2, “Deploying a custom SSL certificate to Satellite Server”
- Section 6.9.3, “Deploying a custom SSL certificate to hosts”
- If you have Capsule Servers registered to Satellite Server, configure them with custom SSL certificates. For more information, see Configuring Capsule Server with a Custom SSL Certificate in Installing Capsule Server.
6.9.1. Creating a custom SSL certificate for Satellite Server Copy linkLink copied to clipboard!
Use this procedure to create a custom SSL certificate for Satellite Server. If you already have a custom SSL certificate for Satellite Server, skip this procedure.
Procedure
To store all the source certificate files, create a directory that is accessible only to the
rootuser:# mkdir /root/satellite_certCreate a private key with which to sign the certificate signing request (CSR). The private key must be unencrypted:
# openssl genrsa -out /root/satellite_cert/satellite_cert_key.pem 4096If you already have a private key, skip this step.
Optional: Verify that the key is unencrypted:
# openssl pkey -noout -in /root/satellite_cert/satellite_cert_key.pemIf the command does not ask for a password, the key is unencrypted. If your private key is password-protected, remove the password.
Create the
/root/satellite_cert/openssl.cnfconfiguration file for the CSR and include the following content:[ req ] req_extensions = v3_req distinguished_name = req_distinguished_name prompt = no [ req_distinguished_name ] commonName = satellite.example.com [ v3_req ] basicConstraints = CA:FALSE keyUsage = digitalSignature, keyEncipherment extendedKeyUsage = serverAuth, clientAuth subjectAltName = @alt_names [ alt_names ] DNS.1 = satellite.example.comFor more information about the
[ v3_req ]parameters and their purpose, see RFC 5280: Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile.Optional: If you want to add Distinguished Name (DN) details to the CSR, add the following information to the
[ req_distinguished_name ]section:[req_distinguished_name] CN = satellite.example.com countryName = My_Country_Name stateOrProvinceName = My_State_Or_Province_Name localityName = My_Locality_Name organizationName = My_Organization_Or_Company_Name organizationalUnitName = My_Organizational_Unit_NameThe options used in the configuration file include the following:
countryName- The country represented by a two-letter code
stateOrProvinceName- Full name of the state or province
localityName- Full name of the locality (example: New York)
organizationalUnitName- Division responsible for the certificate (example: IT department)
Generate CSR:
# openssl req -new \ -key /root/satellite_cert/satellite_cert_key.pem \ -config /root/satellite_cert/openssl.cnf \ -out /root/satellite_cert/satellite_cert_csr.pemThe options used in the configuration file include the following:
-key- Path to the private key
-config- Path to the configuration file
-out- Path to the CSR to generate
Send the certificate signing request to the certificate authority (CA). The same CA must sign certificates for Satellite Server and Capsule Server.
When you submit the request, specify the lifespan of the certificate. The method for sending the certificate request varies, so consult the CA for the preferred method. In response to the request, you can expect to receive a CA bundle and a signed certificate, in separate files.
6.9.2. Deploying a custom SSL certificate to Satellite Server Copy linkLink copied to clipboard!
Use this procedure to configure your Satellite Server to use a custom SSL certificate signed by a Certificate Authority.
Do not store the SSL certificates or .tar bundles in /tmp or /var/tmp directory. The operating system removes files from these directories periodically. As a result, satellite-installer fails to execute while enabling features or upgrading Satellite Server.
Procedure
Update certificates on your Satellite Server:
# satellite-installer \ --certs-server-cert "/root/satellite_cert/satellite_cert.pem" \ --certs-server-key "/root/satellite_cert/satellite_cert_key.pem" \ --certs-server-ca-cert "/root/satellite_cert/ca_cert_bundle.pem" \ --certs-update-server --certs-update-server-caThe options used in the command include the following:
--certs-server-cert- Path to Satellite Server certificate file that is signed by a Certificate Authority
--certs-server-key- Path to the private key that was used to sign Satellite Server certificate
--certs-server-ca-cert- Path to the Certificate Authority bundle
Verification
-
On a computer with network access to Satellite Server, navigate to the following URL:
https://satellite.example.com. - In your browser, view the certificate details to verify the deployed certificate.
6.9.3. Deploying a custom SSL certificate to hosts Copy linkLink copied to clipboard!
After you configure Satellite to use a custom SSL certificate, you must deploy the certificate to hosts registered to Satellite.
Procedure
Update the SSL certificate on each host:
# dnf install http://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm