波神

导航

Linux上设置nginx支持https

1、前提条件

如果系统没有自带openssl,则需要安装。

2、生成证书

# 1、首先,进入你想创建证书和私钥的目录,例如:
cd /etc/nginx/

# 2、创建服务器私钥,命令会让你输入一个口令:
openssl genrsa -des3 -out server.key 1024

# 3、创建签名请求的证书(CSR):
openssl req -new -key server.key -out server.csr

# 4、在加载SSL支持的Nginx并使用上述私钥时除去必须的口令:
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key


# 5、最后标记证书使用上述私钥和CSR:
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

3、配置nginx配置文件支持ssl

下面黑色加粗部分为ssl的配置

server {
        listen       443;

        ssl                  on;
        ssl_certificate      /etc/nginx/server.crt;
        ssl_certificate_key  /etc/nginx/server.key;
        ssl_session_timeout  5m;

        location / {
                alias  /usr/share/nginx/html;
                #proxy_pass http://10.111.131.19:3000;
                #try_files $uri $uri/ /index.html =404;
        }

        location /auth
        {
                proxy_pass http://172.16.60.5:8081/auth;
                #proxy_pass http://172.16.80.85:80/auth;
                #proxy_pass http://172.16.101.67:8081/auth;
                #proxy_pass http://10.111.131.84:8080/auth;
                proxy_set_header X-Real-IP          $remote_addr;
                proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;
                proxy_set_header Host $host:$server_port;
                proxy_set_header X-Forwarded-Proto "https";
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Real-IP $remote_addr;
        }

 

posted on 2016-11-25 14:43  波神  阅读(346)  评论(0编辑  收藏  举报