当前位置:首页 > nginx > nginx配置 > 正文内容

nginx配置https

ssl证书获取有两种方式:购买相关机构签发的证书;自签发生成ssl证书,在这里我们使用openssl来生成证书


1、生成CA私钥

openssl genrsa 1024 > server.key

ssl1.png

2、生成CA自己的证书申请文件

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

填写以下内容:

Country Name (2 letter code) [XX]:CN     国家名称简写,两位字母

State or Province Name (full name) []:BJ   省份名称

Locality Name (eg, city) [Default City]:BJ  城市名称

Organization Name (eg, company) [Default Company Ltd]:CSA   组织名称,随便写

Organizational Unit Name (eg, section) []:CAS                   组织名称缩写,随便写

Common Name (eg, your name or your server's hostname) []:ZHANGSAN    姓名

Email Address []:1234@163.com        邮箱

Please enter the following 'extra' attributes
to be sent with your certificate request

A challenge password []:   密码为空

An optional company name []:     公司名称为空

ssl2.png

ssl3.png

生成了两个证书server.csr和server.key,server.csr是证书文件,server.key是私钥

3、根据csr证书申请书生成crt证书

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


所有证书生成完毕

server.csr:证书申请文件

server.key:私钥文件

server.crt:crt证书文件

ssl4.png

4、配置nginx

在server域中添加

vim /nginx/conf/vhosts/https.conf

listen 18843 ssl;       添加启用ssl支持

ssl_certificate /nginx/conf/server.crt;          网站证书文件路径

ssl_certificate_key /nginx/conf/server.key;      网站证书私钥文件路径

ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;           使用的ssl协议为TLSv1.1,TLSv1.2,TLSv1.3

ssl_session_cache shared:cache1:1M;    设置储存ssl会话的缓存区名称为cache,占用内存大小1M

配置方式有以下几种:

off:禁用https会话缓存

none:启用伪会话缓存支持,告知客户端进行会话复用,服务端不缓存会话参数

builtin:配置openssl缓存支持,无法在nginx的多个进程中共享缓存内容,格式为builtin[:size],

size为缓存占用内存的大小

shared:配置nginx共享缓存机制,可以在nginx多个工作进程中共享缓存内容,1M内存可以存储

4000多个会话,格式为shared:name:size,name为共享缓存区名称,size为缓存占用内存的大小

ssl_session_timeout 5m;                           设置客户端会话的缓存时间,默认是5m


重启nginx

/nginx/sbin/nginx -s reload

5、登录验证

因为是自签名的ssl证书,不是机构颁发的,所以浏览时会有红线提示不安全

ssl5.png


注意:当前ios系统不支持打开自签名的https网站,如果需要在ios上访问自签名的https网站(一般的情况是需要在测试环境调试),那么需要将ssl证书先上传到ios的设备上再进行访问



扫描二维码推送至手机访问。

版权声明:本文由个人博客发布,如需转载请注明出处。

本文链接:https://opszzfwordpress.club/post/136.html

分享给朋友:
返回列表

没有更早的文章了...

下一篇:nginx设置访问认证

“nginx配置https” 的相关文章

nginx设置访问认证

nginx设置访问认证

为了加强网站数据的安全性,可以对一些页面设置加密访问,这样,在访问该页面时,需要输入授权的用户、密码...

nginx访问日志

nginx访问日志

访问日志文件名称access.log配置方式访问日志位置:在主日志nginx.conf的http域配...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。