Nginx详解二十:Nginx深度学习篇之HTTPS的原理和作用、配置及优化
一、HTTPS原理和作用:
1、为什么需要HTTPS?
原因:HTTP不安全
1.传输数据被中间人盗用、信息泄露
2.数据内容劫持、篡改
2、HTTPS协议的实现
对传输内容进行加密以及身份验证
对称加密:加密秘钥和解密秘钥是对等的,一样的

非对称加密:

HTTPS加密协议原理:

中间人伪造客户端和服务端:

HTTPS的CA签名证书:

二、证书签名生成CA证书
先确认环境:已经安装openssl和nginx已经编译ssl的模块

生成秘钥和CA证书步骤:
步骤1、生成key秘钥
步骤2、生成证书签名请求文件(csr文件)
步骤3、生成证书签名文件(CA文件)
三、证书签名生成和Nginx的HTTPS服务场景演示
1、生成key秘钥
先创建一个用来放秘钥的文件夹

输入加密算法:openssl genrsa -idea -out jesonc.key 1024
回车,会让输入密码,这里设置为123456,完成后会生成一个.key的文件

2、生成证书签名请求文件(csr文件):openssl req -new -key jesonc.key -out jesonc.csr


3、生成证书签名文件(CA文件)
打包:openssl x509 -req -days 3650 -in jesonc.csr -signkey jesonc.key -out jesonc.crt
-days 3650:证书过期时间,10年

Nginx的HTTPS语法配置
ssl开关
配置语法:ssl on|off;
默认状态:ssl off;
配置方法:http、server
ssl证书文件
配置语法:ssl_certificate file;
默认状态:-
配置方法:http、server
ssl密码文件
配置语法:ssl_certificate_key file;
默认状态:ssl off;
配置方法:http、server
进入/etc/nginx/conf.d/

server
 {
   listen       443;
   server_name 192.168.1.141 jeson.t.imooc.io;
   ssl on;
   ssl_certificate /etc/nginx/ssl_key/jesonc.crt;
   ssl_certificate_key /etc/nginx/ssl_key/jesonc.key;
   #ssl_certificate_key /etc/nginx/ssl_key/jesonc_nopass.key;
index index.html index.htm;
   location / {
       root  /opt/app/code;
   }
}

配置好之后,关闭和启动,都需要数之前设置的密码
关闭:nginx -s stop -c /etc/nginx/nginx.conf
启动:nginx -c /etc/nginx/nginx.conf

确认已启用443的监听:netstat -luntp|grep 443

浏览器访问


HTTPS服务优化
方法一:激活keepalive长连接
方法二:设置ssl session缓存


检查并重载:

Nginx详解二十:Nginx深度学习篇之HTTPS的原理和作用、配置及优化的更多相关文章
- Nginx详解二十四:Nginx深度学习篇之灰度发布
		实战场景 - 灰度发布 灰度发布的作用:按照一定的关系区别,分部分的代码进行上线,使代码的发布能平滑过渡上线实现方式: 1.用户的信息cookie等信息区别 2.根据用户的IP地址 安装memcach ... 
- Nginx详解二十六:Nginx架构篇之性能优化
		一.性能优化考虑点 1.当前系统结构瓶颈 通过压力测试观察指标.日志检测.性能分析 2.了解业务模式 接口业务类型.系统层次化结构 3.性能与安全 二.ab接口压力测试工具 1.安装:yum -y i ... 
- Nginx详解二十八:Nginx架构篇Nginx+Lua的安全waf防火墙
		Nginx+Lua的安全waf防火墙 看一下别人写好的:https://github.com/loveshell/ngx_lua_waf 先安装git:yum -y install git 在/opt ... 
- Nginx详解二十五:Nginx架构篇之Nginx常见的问题
		Nginx常见的问题 1.相同server_name多个虚拟主机优先级访问,是按读取文件的优先级来排序 在/opt/app/下准备3个code文件夹,下面放入3个html文件,里面的内容分别是code ... 
- Nginx详解二十二:Nginx深度学习篇之Lua解释器安装及基础语法
		解释器 Lua:Lua是一个简洁.轻量.可扩展的脚本语言 Nginx+Lua优势充分的结合Nginx的并发处理epoll优势的Lua的轻量实现简单的功能切高并发的场景 安装Lua 1.安装解释器:yu ... 
- Nginx详解二十九:基于Nginx的中间件架构设计
		基于Nginx的中间件架构 一:了解需求 1.定义Nginx在服务体系中的角色 1.静态资源服务 2.代理服务 3.动静分离 2.静态资源服务的功能设计 3.代理服务 二:设计评估 三:配置注意事项 
- Nginx详解二:Nginx基础篇之Nginx的优点
		Nginx是一个开源且高性能.可靠的HTTP中间件.代理服务 常见的HTTP服务: HTTPD--Apache基金会 IIIS--微软 GWS--Google(不对外开放) Nginx优势: 一.IO ... 
- Nginx详解二十三:Nginx深度学习篇之Nginx+Lua开发环境搭建
		Nginx+Lua开发环境 1.下载LuaJIT解释器wget http://luajit.org/download/LuaJIT-2.0.2.tar.gztar -zxvf LuaJIT-2.0.2 ... 
- Nginx详解二十一:Nginx深度学习篇之配置苹果要求的openssl后台HTTPS服务
		配置苹果要求的证书: 1.服务器所有的连接使用TLS1.2以上的版本(openssl 1.0.2) 2.HTTPS证书必须使用SHA256以上哈希算法签名 3.HTTPS证书必须使用RSA2048位或 ... 
随机推荐
- maven(一) 一 修改仓库存放路径
			一.修改仓库存放路径 maven默认的仓库是在C盘下的,这样当重新装系统的时候,仓库就要重新建了.因此可以修改默认存放的位置. 修改仓库的地址在maven安装包(即apache-maven-bin)下 ... 
- JavaWeb(一)Servlet
			一.Servlet简介 Servlet 是J2EE的一个规范,为Java提供统一的web应用规范. 广义的Servlet 是指实现了servlet的类 二.Servlet工作原理 1.原理: 一个ht ... 
- 小程序学习(冒泡,快速创建文件,以及tarbar)
			1.关于小程序的事件冒泡机制 例如: <view catchtap="opp"> <text>当前内容</text> </view> ... 
- 【Math for ML】线性代数之——向量空间
			I. Groups 在介绍向量空间之前有必要介绍一下什么Group,其定义如下: 注意定义中的\(\bigotimes\)不是乘法,而是一种运算符号的统一标识,可以是乘法也可以是加法等. 此外,如果\ ... 
- ORA-03113: end-of-file on communication channel  磁盘慢,数据库启动失败
			磁盘慢,数据库启动失败:解决思路:1.让数据文件offline: 2.删除表空间 SQL> startup pfile='/server/oracle/admin/test/pfile/init ... 
- Linux下tar压缩解压缩命令详解
			tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的 ... 
- ipconfig命令查ip的时候给别人看有危险吗
			知识源:Unit 4: Networking 1 4.1 Networking 1 The Routing of a Packet 网址:https://www.baidu.com/link?url ... 
- .NET中制做对象的副本(一)
			.NET中对于复杂对象制作副本比较困难,闲暇之时写了这个方法,和大家分享. 本案例用于大型对象的副本制作,常见的应用场景就是树形对象节点的拷贝,但是也有局限性,目前使用于类里有基本类型(int sti ... 
- 【转】Vim速查表-帮你提高N倍效率
			Vim速查表-帮你提高N倍效率 转自:https://www.jianshu.com/p/6aa2e0e39f99 去年上半年开始全面使用linux进行开发和娱乐了,现在已经回不去windows了. ... 
- dubbo的本地存根(Stub)
			dubbo的本地存根的原理是:远程服务后,客户端通常只剩下接口,而实现全在服务器端,但提供方有些时候想在客户端也执行部分逻辑,那么就在服务消费者这一端提供了一个Stub类,然后当消费者调用provid ... 
