Nginx系列之使用ssl模块配置支持代理HTTPS链接

举报
yd_273762914 发表于 2020/12/17 23:46:40 2020/12/17
【摘要】 Nginx系列之使用ssl模块配置支持HTTPS访问 1、博客前言介绍 最近在用nginx代理https的第三方链接,因为不是做运维,所以对nginx并不是特殊熟悉,所以到处询问摸索了挺久 2、查看ssl_module 要使用nginx代理https的链接,先用检查nginx是否已经有安装了ssl module,如图使用命令: cd /usr/local/ngi...

Nginx系列之使用ssl模块配置支持HTTPS访问

1、博客前言介绍

最近在用nginx代理https的第三方链接,因为不是做运维,所以对nginx并不是特殊熟悉,所以到处询问摸索了挺久

2、查看ssl_module

要使用nginx代理https的链接,先用检查nginx是否已经有安装了ssl module,如图使用命令:
cd /usr/local/nginx/sbin && ./nginx -V
在这里插入图片描述

3、安装openssl和openssl-devel

如果nginx没安装openssl,可以使用yum命令进行安装

yum -y install openssl openssl-devel

  
 
  • 1

检查openssl是否安装成功

openssl version -a

  
 
  • 1

4、创建服务器私钥

使用命令,回车之后,会让你输入密钥,reload nginx配置时候都要你验证这个PAM密码

openssl genrsa -des3 -out server.key 1024 

  
 
  • 1

5、创建签名请求的证书

创建签名请求的证书(CSR),用于颁发公钥

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

  
 
  • 1

6、配置nginx reload不需要密码

cp server.key server.key.org
openssl rsa -in server.key.org -out server.key 
  
 
  • 1
  • 2

7、标记证书使用上述私钥和CSR

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

  
 
  • 1

8、修改nginx配置,支持SSL

server { listen 80; listen 443 ssl; server_name  localhost; #access_log  logs/host.access.log  main;
		# 开启ssl
		# ssl on;
		#证书位置 ssl_certificate /usr/local/nginx/server.crt;
		#私钥位置 ssl_certificate_key  /usr/local/nginx/server.key; ssl_session_timeout  5m;
		#指定密码为openssl支持的格式 ssl_protocols  SSLv2 SSLv3 TLSv1;
		#密码加密方式 ssl_ciphers  HIGH:!aNULL:xues!MD5;
		#依赖SSLv3和TLSv1协议的服务器密码将优先于客户端密码 ssl_prefer_server_ciphers   on; // ... 省略
}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

注意点:

  • 要listen 443端口,https的端口是443,listen 443 ssl;
  • 要同时支持http和https链接代理,要注释ssl on;
  • ssl_certificatessl_certificate_key,这两个参数需要根据证书位置配置

配置location代理转发:

location /portal{ proxy_pass  https://127.0.0.1:8888/portal; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr;  #获取真实ip proxy_connect_timeout   90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;#获取代理者的真实ip proxy_redirect off; }

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

文章来源: smilenicky.blog.csdn.net,作者:smileNicky,版权归原作者所有,如需转载,请联系作者。

原文链接:smilenicky.blog.csdn.net/article/details/110958237

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。