SSL 配置

SSL 配置

SSL手动配置,可以看自动续签那篇,方案更优

1. 上传证书

进入网址下载证书文件后进行上传

./etc/
└── cert
    ├── ginwine.top_chain.crt
    ├── ginwine.top.key
    ├── ginwine.top.pem
    └── ginwine.top_public.crt

2. 创建/编辑配置文件

conf.d/xxxx.conf 文件

根域名配置

server {                                                                #HTTPS的默认访问端口443
    #如果未在此处配置HTTPS的默认访问端口,可能会造成Nginx无法启动。
    listen 443 ssl;
    #填写证书绑定的域名
    server_name [Domain];
    #填写证书文件绝对路径
    ssl_certificate /etc/nginx/cert/[Domain].pem;
    #填写证书私钥文件绝对路径
    ssl_certificate_key /etc/nginx/cert/[Domain].key;
    ssl_protocols  TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;
    ssl_ciphers    "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA HIGH !RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS";

    access_log     /var/log/nginx/couchdb.access.log;
    error_log        /var/log/nginx/couchdb.error.log;
    charset utf-8;

    location / {
        root /usr/share/nginx/html;
        index index.html index.htm;
    }
}

server{
        listen 80;
        server_name [Domain];
        rewrite ^/(.*)$ https://[Domain]:443/$1 permanent;
}

子域名配置

server {
     #HTTPS的默认访问端口443。
     #如果未在此处配置HTTPS的默认访问端口,可能会造成Nginx无法启动。
     listen 443 ssl;
     
     #填写证书绑定的域名
     server_name [Domain] [IP];
 
     #填写证书文件绝对路径
     ssl_certificate /etc/nginx/cert/[Domain].pem;
     #填写证书私钥文件绝对路径
     ssl_certificate_key /etc/nginx/cert/[Domain].key;
 
     ssl_session_cache shared:SSL:1m;
     ssl_session_timeout 5m;
	 
     #自定义设置使用的TLS协议的类型以及加密套件(以下为配置示例,请您自行评估是否需要配置)
     #TLS协议版本越高,HTTPS通信的安全性越高,但是相较于低版本TLS协议,高版本TLS协议对浏览器的兼容性较差。
     ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
     ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;

     #表示优先使用服务端加密套件。默认开启
     ssl_prefer_server_ciphers on;
 
 
    location / {
           root html;
           index index.html index.htm;
    }
    location ^~ /koishi/ {
        add_header 'Access-Control-Allow-Credentials' 'true';
        add_header 'Access-Control-Allow-Methods' 'OPTION, POST, GET, DELETE, PUT';
        add_header 'Access-Control-Allow-Headers' 'X-Requested-With, Content-Type';
		
		proxy_redirect off;
		proxy_set_header Host $host;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_pass http://[IP]:5140/;
    }
}
LICENSED UNDER CC BY-NC-SA 4.0
评论