Nginx配置SSL证书提供https访问

1. 安装SSL模块

要在 Nginx 中配置https,就必须安装ssl模块,也就是:http_ssl_module

  • 进入到 Nginx 的解压目录:xxx/nginx-1.16.1
  • 新增ssl模块(原来的模块需要保留)
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/ temp/nginx/scgi \
--with-http_ssl_module
  • 编译和安装
make
make install

2. 配置HTTPS

把SSL证书.crt和私钥.key拷贝到某个目录,如/usr/local/nginx/conf目录中
新增server监听443端口

server {
    listen      443;
    server_name     www.supergan.cn;

    # 开启ssl
    ssl     on;
    # 配置ssl证书
    ssl_certificate     1_www.supergan.cn.crt;
    # 配置证书秘钥
    ssl_certificate_key 2_www.supergan.cn.key;

    # ssl会话cache
    ssl_session_cache   shared:SSL:1m;
    # ssl会话超时时间
    ssl_session_timeout 5m;

    # 配置加密套件,写法遵循 openssl 标准
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;

    location / {
        proxy_pass http://tomcats/;
    }
}
posted @ 2020-09-21 10:53  小动物不困  阅读(136)  评论(0)    收藏  举报