第 6 章 使用 SSL/TLS 证书进行概念部署验证
使用以下部分配置带有 SSL/TLS 证书的 Red Hat Quay 部署概念证明。
6.1. 使用 SSL/TLS
要使用自签名证书配置 Red Hat Quay,您必须创建一个证书颁发机构(CA)和名为 ssl.cert
和 ssl.key
的主密钥文件。
以下示例假设您已使用 DNS 或其他命名机制配置了服务器主机名 quay-server.example.com
,如在 /etc/hosts
文件中添加条目。如需更多信息,请参阅"为 Red Hat Quay 配置端口映射"。
6.1.1. 创建证书颁发机构
使用以下步骤创建证书颁发机构(CA)。
步骤
输入以下命令生成 root CA 密钥:
$ openssl genrsa -out rootCA.key 2048
输入以下命令生成 root CA 证书:
$ openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 1024 -out rootCA.pem
输入您的证书请求中包含的信息,包括服务器主机名,例如:
Country Name (2 letter code) [XX]:IE State or Province Name (full name) []:GALWAY Locality Name (eg, city) [Default City]:GALWAY Organization Name (eg, company) [Default Company Ltd]:QUAY Organizational Unit Name (eg, section) []:DOCS Common Name (eg, your name or your server's hostname) []:quay-server.example.com
6.1.1.1. 签名证书
使用以下步骤为证书签名。
步骤
输入以下命令生成服务器密钥:
$ openssl genrsa -out ssl.key 2048
输入以下命令生成签名请求:
$ openssl req -new -key ssl.key -out ssl.csr
输入您的证书请求中包含的信息,包括服务器主机名,例如:
Country Name (2 letter code) [XX]:IE State or Province Name (full name) []:GALWAY Locality Name (eg, city) [Default City]:GALWAY Organization Name (eg, company) [Default Company Ltd]:QUAY Organizational Unit Name (eg, section) []:DOCS Common Name (eg, your name or your server's hostname) []:quay-server.example.com
创建配置文件
openssl.cnf
,指定服务器主机名,例如:openssl.cnf
[req] req_extensions = v3_req distinguished_name = req_distinguished_name [req_distinguished_name] [ v3_req ] basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment subjectAltName = @alt_names [alt_names] DNS.1 = quay-server.example.com IP.1 = 192.168.1.112
使用配置文件生成证书
ssl.cert
:$ openssl x509 -req -in ssl.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out ssl.cert -days 356 -extensions v3_req -extfile openssl.cnf