2.6. 使用 SSL 证书配置 Capsule 服务器
Red Hat Satellite 使用 SSL 证书来启用 Satellite 服务器、外部 Capsule 服务器和所有主机之间的加密通信。根据机构的要求,您必须使用默认或自定义证书配置您的 Capsule 服务器。
- 如果您使用默认 SSL 证书,还必须使用不同的默认 SSL 证书配置每个外部 Capsule 服务器。更多信息请参阅 第 2.6.1 节 “使用默认 SSL 证书配置 Capsule 服务器”。
- 如果您使用自定义 SSL 证书,还必须使用不同的自定义 SSL 证书配置每个外部 Capsule 服务器。更多信息请参阅 第 2.6.2 节 “使用自定义 SSL 证书配置 Capsule 服务器”。
2.6.1. 使用默认 SSL 证书配置 Capsule 服务器
使用本节配置由 Satellite 服务器默认证书颁发机构(CA)签名的 SSL 证书的 Capsule 服务器。
先决条件
- Capsule 服务器已注册到 Satellite 服务器。如需更多信息,请参阅 注册到 Satellite 服务器。
- 已安装 Capsule 服务器软件包。如需更多信息,请参阅安装 Capsule 服务器软件包。
流程
在 Satellite 服务器上,要为您的胶囊服务器存储所有源证书文件,请创建一个只能被
root用户访问的目录,如/root/capsule_cert:# mkdir /root/capsule_cert在 Satellite 服务器上,为您的 Capsule 服务器生成
/root/capsule_cert/prompt.example.com-certs.tar证书存档:# capsule-certs-generate \ --foreman-proxy-fqdn capsule.example.com \ --certs-tar /root/capsule_cert/capsule.example.com-certs.tar
保留
satellite-installer命令的副本,该命令会返回该副本,以将证书部署到您的 Capsule 服务器。evince
-certs-generate 的输出示例output omitted satellite-installer --scenario capsule \ --certs-tar-file "/root/capsule_cert/capsule.example.com-certs.tar" \ --foreman-proxy-register-in-foreman "true" \ --foreman-proxy-foreman-base-url "https://satellite.example.com" \ --foreman-proxy-trusted-hosts "satellite.example.com" \ --foreman-proxy-trusted-hosts "capsule.example.com" \ --foreman-proxy-oauth-consumer-key "s97QxvUAgFNAQZNGg4F9zLq2biDsxM7f" \ --foreman-proxy-oauth-consumer-secret "6bpzAdMpRAfYaVZtaepYetomgBVQ6ehY" \ --puppet-server-foreman-url "https://satellite.example.com"
在 Satellite 服务器上,将证书归档文件复制到您的 Capsule 服务器中:
# scp /root/capsule_cert/capsule.example.com-certs.tar \ root@capsule.example.com:/root/capsule.example.com-certs.tar
在 Capsule 服务器上,要部署证书,请输入其 satellite-
certs-generate 命令返回的命令。satellite-installer当 Satellite 的网络连接或端口还没有打开时,您可以将
--foreman-proxy-register-in-foreman选项设置为false,以防止 Capsule 尝试连接到 Satellite 并报告错误。当正确配置了网络和防火墙时,将此选项设置为true再次运行安装程序。重要在部署证书后,请勿删除证书存档文件。例如,在升级 Capsule 服务器时需要这样做。
2.6.2. 使用自定义 SSL 证书配置 Capsule 服务器
如果您将 Satellite 服务器配置为使用自定义 SSL 证书,还必须使用不同的自定义 SSL 证书配置每个外部 Capsule 服务器。
要使用自定义证书配置您的 Capsule 服务器,请在每个 Capsule 服务器上完成以下步骤:
2.6.2.1. 将自定义 SSL 证书部署到 Capsule 服务器
使用这个流程,使用证书颁发机构签名的自定义 SSL 证书配置您的 Capsule 服务器。satellite-installer 命令,其 return-certs-generate 命令为每个 Capsule 服务器是唯一的。不要在多个胶囊服务器上使用相同的命令。
先决条件
- Satellite 服务器配置了自定义证书。如需更多信息,请参阅 在 连接的网络环境中安装 Satellite 服务器 中的 使用自定义 SSL 证书配置 Satellite 服务器。
- Capsule 服务器已注册到 Satellite 服务器。如需更多信息,请参阅 注册到 Satellite 服务器。
- 已安装 Capsule 服务器软件包。如需更多信息,请参阅安装 Capsule 服务器软件包。
流程
在 Satellite 服务器上,验证自定义 SSL 证书输入文件:
# katello-certs-check \ -t capsule -c /root/capsule_cert/capsule_cert.pem \ 1 -k /root/capsule_cert/capsule_cert_key.pem \ 2 -b /root/capsule_cert/ca_cert_bundle.pem 3
如果您在
/root/capsule_cert/openssl.cnf配置文件中为证书的 Common NameCN =设置通配符值,您必须在katello\":\" 选项。-certs-check命令中添加 -t如果命令成功,它会返回两个 evince
-certs-generate命令,则必须使用其中一个命令为您的 Capsule 服务器生成证书文件。katello-certs-check的输出示例Validation succeeded. To use them inside a NEW $CAPSULE, run this command: capsule-certs-generate --foreman-proxy-fqdn "$CAPSULE" \ --certs-tar "~/$CAPSULE-certs.tar" \ --server-cert "/root/capsule_cert/capsule_cert.pem" \ --server-key "/root/capsule_cert/capsule_cert_key.pem" \ --server-ca-cert "/root/capsule_cert/ca_cert_bundle.pem" \ To use them inside an EXISTING $CAPSULE, run this command INSTEAD: capsule-certs-generate --foreman-proxy-fqdn "$CAPSULE" \ --certs-tar "~/$CAPSULE-certs.tar" \ --server-cert "/root/capsule_cert/capsule_cert.pem" \ --server-key "/root/capsule_cert/capsule_cert_key.pem" \ --server-ca-cert "/root/capsule_cert/ca_cert_bundle.pem" \ --certs-update-server在 Satellite 服务器上,从
katello-certs-check命令的输出中,根据您的要求,输入为新或现有 Capsule 生成证书的 evince-certs-generate命令。在此命令中,将
$CAPSULE更改为您的 Capsule 服务器的 FQDN。保留
satellite-installer命令的副本,该命令会返回该副本,以将证书部署到您的 Capsule 服务器。evince
-certs-generate 的输出示例output omitted satellite-installer --scenario capsule \ --certs-tar-file "/root/capsule.example.com-certs.tar" \ --foreman-proxy-register-in-foreman "true" \ --foreman-proxy-foreman-base-url "https://satellite.example.com" \ --foreman-proxy-trusted-hosts "satellite.example.com" \ --foreman-proxy-trusted-hosts "capsule.example.com" \ --foreman-proxy-oauth-consumer-key "s97QxvUAgFNAQZNGg4F9zLq2biDsxM7f" \ --foreman-proxy-oauth-consumer-secret "6bpzAdMpRAfYaVZtaepYetomgBVQ6ehY" \ --puppet-server-foreman-url "https://satellite.example.com"
在 Satellite 服务器上,将证书归档文件复制到您的 Capsule 服务器中:
# scp /root/capsule_cert/capsule.example.com-certs.tar \ root@capsule.example.com:/root/capsule.example.com-certs.tar
在 Capsule 服务器上,要部署证书,请输入其 satellite-
certs-generate 命令返回的命令。satellite-installer当 Satellite 的网络连接或端口还没有打开时,您可以将
--foreman-proxy-register-in-foreman选项设置为false,以防止 Capsule 尝试连接到 Satellite 并报告错误。当正确配置了网络和防火墙时,将此选项设置为true再次运行安装程序。重要在部署证书后,请勿删除证书存档文件。例如,在升级 Capsule 服务器时需要这样做。
2.6.2.2. 将自定义 SSL 证书部署到主机
将 Capsule 服务器配置为使用自定义 SSL 证书后,还必须在注册到此 Capsule 服务器的每个主机上安装 katello-ca-consumer 软件包。
流程
在每个主机上安装
katello-ca-consumer软件包:# yum localinstall \ http://capsule.example.com/pub/katello-ca-consumer-latest.noarch.rpm