[root@k8snode2 ~]# cd /etc/nginx/
[root@k8snode2 nginx]# mkdir ssl/
[root@k8snode2 nginx]# cd ssl/
[root@k8snode2 ssl]# openssl req -x509 -nodes -days 36500 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt
Country Name (2 letter code) [AU]:US # 国家的名字
State or Province Name (full name) [Some-State]:New York # 省/自治区名称
Locality Name (eg, city) []:New York City # 城市名称
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Bouncy Castles, Inc. # 组织名称
Organizational Unit Name (eg, section) []:Ministry of Water Slides # 组织单位名称
Common Name (e.g. server FQDN or YOUR name) []:your_domain.com # 通用名
Email Address []:admin@your_domain.com #电子邮件地址
创建了有效期100年,加密强度为RSA2048的SSL密钥key和X509证书文件。
参数说明:
req: 配置参数-x509指定使用 X.509证书签名请求管理(certificate signing request (CSR))."X.509" 是一个公钥代表that SSL and TLS adheres to for its key and certificate management.
-nodes: 告诉OpenSSL生产证书时忽略密码环节.(因为我们需要Nginx自动读取这个文件,而不是以用户交互的形式)。
-days 36500: 证书有效期,100年
-newkey rsa:2048: 同时产生一个新证书和一个新的SSL key(加密强度为RSA 2048)
-keyout:SSL输出文件名
-out:证书生成文件名
它会问一些问题。需要注意的是在common name中填入网站域名,如wiki.xby1993.net即可生成该站点的证书,同时也可以使用泛域名如*.xby1993.net来生成所有二级域名可用的网站证书。
[root@k8snode2 ssl]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@k8snode2 ssl]# nginx -s reload
访问域名试试配置是否成功:jenkins.test.net