nginx的https配置

 测试自签名的ssl证书

首先执行如下命令生成一个key

openssl genrsa -des3 -out ssl.key 1024

然后他会要求你输入这个key文件的密码。不推荐输入。因为以后要给nginx使用。每次reload nginx配置时候都要你验证这个PAM密码的。
由于生成时候必须输入密码。你可以输入后 再删掉。

mv ssl.key xxx.key
openssl rsa -in xxx.key -out ssl.key
rm xxx.key

然后根据这个key文件生成证书请求文件

openssl req -new -key ssl.key -out ssl.csr

以上命令生成时候要填很多东西 一个个看着写吧(可以随便,毕竟这是自己生成的证书)

最后根据这2个文件生成crt证书文件

openssl x509 -req -days 36500 -in ssl.csr -signkey ssl.key -out ssl.crt
这里36500是证书有效期,这个大家随意。最后使用到的文件是key和crt文件

下面是nginx配置

upstream backend {
    server 0.0.0.0:8080 weight=10;
}

server {
    listen 80;
    server_name aaa.com;
    rewrite ^/(.*) https://$server_name$1 permanent;
}

server {
    listen 443 ssl;
    server_name aaa.com;

    ssl                  on;
    ssl_certificate      /home/mmc/ssl.crt;
    ssl_certificate_key  /home/mmc/ssl.key;

    ssl_session_timeout  5m;
        
    location / {
        proxy_pass http://backend;
    }
}
原文地址:https://www.cnblogs.com/ziyouchutuwenwu/p/5207606.html