openssl 生成nginx永久ssl证书

一、ssl证书制作

1、SSL证书制作依靠openssl,首先检查OpenSSL:一般centos7上默认装好了

[root@zq testzq]# openssl version

OpenSSL 1.0.2k-fips  26 Jan 2017

2、生成私钥和自签名的SSL证书:

2.1、生成私钥,参数genrsa:生成RSA私钥;-des3:des3算法;-out server.pass.key:生成的私钥文件名;2048:私钥长度

[root@zq testzq]# openssl genrsa -des3 -out server.pass.key 2048

Generating RSA private key, 2048 bit long modulus

.............................................................+++

.......................+++

e is 65537 (0x10001)

Enter pass phrase for server.pass.key:

Verifying - Enter pass phrase for server.pass.key:                #输入一个4位以上的密码

[root@zqtestzq]# ll

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key  #有密码的私钥文件

2.2、去除私钥中的密码

[root@zq testzq]# openssl rsa -in server.pass.key -out server.key

Enter pass phrase for server.pass.key:

writing RSA key

[root@zq testzq]# ll

-rw-r--r-- 1 root root 1679 1月  20 11:01 server.key            #无密码的私钥文件

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key    #有密码的私钥文件


[root@zq testzq]# openssl genrsa -des3 -out server.pass.key 2048

Generating RSA private key, 2048 bit long modulus

.............................................................+++

.......................+++

e is 65537 (0x10001)

Enter pass phrase for server.pass.key:

Verifying - Enter pass phrase for server.pass.key:                #输入一个4位以上的密码

[root@zqtestzq]# ll

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key  #有密码的私钥文件

2.2、去除私钥中的密码

[root@zq testzq]# openssl rsa -in server.pass.key -out server.key

Enter pass phrase for server.pass.key:

writing RSA key

[root@zq testzq]# ll

-rw-r--r-- 1 root root 1679 1月  20 11:01 server.key            #无密码的私钥文件

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key    #有密码的私钥文件

2.3、生成CSR(证书签名请求文件)

[root@zq testzq]# openssl req -new -key server.key -out server.csr -subj "/C=CN/ST=Guangdong/L=Guangzhou/O=xdevops/OU=xdevops/CN=gitlab.xdevops.cn"

参数说明:# req 生成证书签名请求   

                  # -new 新生成           

                  # -key 私钥文件               

                  # -out 生成的CSR文件             

                  # -subj 生成CSR证书的参数


2.4、生成自签名的SSL证书

[root@zq testzq]# openssl x509 -req -days 1825 -in server.csr -signkey server.key -out server.crt  #-days:证书有限期(天)

Signature ok

subject=/C=CN/ST=Guangdong/L=Guangzhou/O=xdevops/OU=xdevops/CN=gitlab.xdevops.cn

Getting Private key

[root@zq testzq]# ll

-rw-r--r-- 1 root root 1241 1月  20 11:00 server.crt            #自签名的SSL证书

-rw-r--r-- 1 root root 1021 1月  20 11:00 server.csr            #签名文件

-rw-r--r-- 1 root root 1679 1月  20 11:01 server.key            #无密码的私钥文件

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key  #有密码的私钥文件nginx

三、nginx配置

server {

    listen      8443;

    ssl          on;

    ssl_certificate /home/testzq/server.crt;      #配置已签名的SSL证书.crt

    ssl_certificate_key /home/testzq/server.key;  #配置已签名的证书私钥.key

    .............................................

server {

    listen      443;

    ssl          on;

    ssl_certificate /home/testzq/server.crt;

    ssl_certificate_key /home/testzq/server.key;

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容