linux系统下使用openssl命令生成一个csr文件,然后交由第三方信任机构签发证书。

具体步骤如下:

生成一个密钥

$ openssl genrsa -des3 -out domain.key 2048

复制一个无密码的key

$ openssl rsa -in domain.key -out domain_nopass.key

生成一个csr证书请求文件(提交给第三方机构的文件),在该步骤需要设置详细的信息。重要的是使用的email一定要是你申请的域名,如果你申请的域名是www.domain.com,那么email也必须是xxx@domain.com

$ openssl req -new -key domain_nopass.key -out domain.csr

自签发证书

$ openssl x509 -req -days 365 -in domain.csr -signkey domain_nopass.key -out domain.crt

然后在nginx配置文件里面添加上ssl信息

server {

    server_name www.domain.com;

    listen 443;

    ssl on;

    ssl_certificate /path/to/domain.crt;

    ssl_certificate_key /path/to/domain_nopass.key;

}