Nginx配置Https安全认证的实现


Posted in Servers onMay 26, 2021

1、Http与Https的区别

HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。

HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

HTTPS和HTTP的区别主要如下:

1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

1)http访问:未认证在部分浏览器上访问是会提示不安全的,有安全隐患

Nginx配置Https安全认证的实现

2)https访问:认证后

Nginx配置Https安全认证的实现

Nginx配置Https

 一、安装nginx的SSL模块

1、配置ssl证书前,要确保你的nginx安装了ssl模块,一般情况下自己安装的nginx都是不存在ssl模块的。

检查自己的nginx是否安装了ssl模块

cd nginx的安装目录sbin下输入

./nginx -V

Nginx配置Https安全认证的实现

如果有出现红框中的信息,证明有安装。

2、没有安装ssl模块的情况

进入你的nginx解压后的目录(不是nginx安装目录),输入

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

接下来执行

make  #切记不要执行make install 否则会重新安装nginx

3、进入objs文件夹,文件夹中存在nginx文件,替换掉sbin下的nginx

#如果开启了nginx先进入sbin中停掉nginx服务
./nginx -s stop #停止nginx服务
# cp 压缩后的nginx路径(你自己的)  安装的nginx路径(你自己的) 
cp /root/nginx/objs/nginx /usr/local/ngin/sbin

4、成功之后,进入nginx安装目录,查看ssl是否安装成功

./nginx -V
#权限不足可执行给nginx权限
chmod 111 nginx

二、配置SSL证书

阿里云可申请免费的ssl证书,具体可百度(证书一般是pem和key文件)

1、将证书上传到一个文件夹中(自定义)

mkdir -p /nginx/card-key-pem

Nginx配置Https安全认证的实现

2、配置ssl,进入nginx安装目录中的conf文件中

cd /usr/local/nginx/conf
vim nginx.conf
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    
server {
        listen       443;  #监听443端口
        server_name  www.qingfenginn.top; 	#你的域名

        ssl on;		#开启ssl
        ssl_certificate /root/nginx/card-key-pem/5386933_www.qingfenginn.top.pem;	#你上传的ssl证书的pem文件路径
        ssl_certificate_key /root/nginx/card-key-pem/5386933_www.qingfenginn.top.key; 	#你上传的ssl证书的key文件路径

        location / {	#访问路径
           #反向代理到你的项目 http://公网地址:端口
           proxy_pass http://www.qingfenginn.top:81; 
        }
 }


server {
        listen 80;	#监听80端口
        server_name www.qingfenginn.top;
		#将请求转成https
        rewrite ^(.*)$ https://$host$1 permanent; 
    }
}

注意:配置完后,nginx会同时监听443端口和80端口,443端口需要在安全组开发端口

3、重启nginx,使配置生效

进入sbin目录

先校验一下配置文件是否正确

./nginx -t

Nginx配置Https安全认证的实现

在启动nginx

./nginx -s reload //重启
./nginx -s stop  //停止
./nginx			//启动

之后就可以用你的域名访问了

到此这篇关于Nginx配置Https安全认证的实现的文章就介绍到这了,更多相关Nginx配置Https认证内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
Nginx开启Brotli压缩算法实现过程详解
Mar 31 Servers
Nginx实现高可用集群构建(Keepalived+Haproxy+Nginx)
May 27 Servers
配置nginx 重定向到系统维护页面
Jun 08 Servers
为Centos安装指定版本的Docker
Apr 01 Servers
docker-compose部署Yapi的方法
Apr 08 Servers
在Windows Server 2012上安装 .NET Framework 3.5 所遇到的问题
Apr 29 Servers
讨论nginx location 顺序问题
May 30 Servers
Linux中文件的基本属性介绍
Jun 01 Servers
ubuntu下常用apt命令介绍
Jun 05 Servers
在虚拟机中安装windows server 2008的图文教程
Jun 28 Servers
CentOS7设置ssh服务以及端口修改方式
Dec 24 Servers
ubuntu开机后ROS程序自启动问题
Dec 24 Servers
nginx部署多前端项目的几种方法
Nginx如何配置Http、Https、WS、WSS的方法步骤
May 11 #Servers
windows下快速安装nginx并配置开机自启动的方法
uwsgi+nginx代理Django无法访问静态资源的解决
May 10 #Servers
教你快速开启Apache SkyWalking的自监控
Apache Calcite 实现方言转换的代码
Apr 24 #Servers
apache基于端口创建虚拟主机的示例
Apr 24 #Servers
You might like
ThinkPHP自定义函数解决模板标签加减运算的方法
2015/07/03 PHP
php操作xml并将其插入数据库的实现方法
2016/09/08 PHP
php微信公众号开发(2)百度BAE搭建和数据库使用
2016/12/15 PHP
百度Popup.js弹出框进化版 拖拽小框架发布 兼容IE6/7/8,Firefox,Chrome
2010/04/13 Javascript
jQuery 隐藏和显示 input 默认值示例
2014/06/03 Javascript
基于jQuery实现仿百度首页换肤背景图片切换代码
2015/08/25 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之主动触发事件和模拟冒泡处理
2015/11/24 Javascript
Bootstrap框架动态生成Web页面文章内目录的方法
2016/05/12 Javascript
基于JQuery实现图片上传预览与删除操作
2016/05/24 Javascript
Angular4表单验证代码详解
2017/09/03 Javascript
JavaScript事件对象深入详解
2018/12/30 Javascript
axios封装,使用拦截器统一处理接口,超详细的教程(推荐)
2019/05/02 Javascript
浅谈TypeScript的类型保护机制
2020/02/23 Javascript
python查询sqlite数据表的方法
2015/05/08 Python
Python实现XML文件解析的示例代码
2018/02/05 Python
Python科学计算包numpy用法实例详解
2018/02/08 Python
批量将ppt转换为pdf的Python代码 只要27行!
2018/02/26 Python
利用Python yagmail三行代码实现发送邮件
2018/05/11 Python
Python使用分布式锁的代码演示示例
2018/07/30 Python
python入门:这篇文章带你直接学会python
2018/09/14 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
2019/02/21 Python
python用match()函数爬数据方法详解
2019/07/23 Python
django项目中使用手机号登录的实例代码
2019/08/15 Python
Python搭建代理IP池实现存储IP的方法
2019/10/27 Python
基于h5py的使用及数据封装代码
2019/12/26 Python
python实现图片素描效果
2020/09/26 Python
Radley英国官网:英国莱德利小狗包
2019/03/21 全球购物
俄罗斯宠物用品网上商店:ZooMag
2019/12/12 全球购物
如何在Cookie里面保存Unicode和国际化字符
2013/05/25 面试题
高中生的自我鉴定范文
2014/01/24 职场文书
化工实习心得体会
2014/09/09 职场文书
党员干部四风问题整改措施思想汇报
2014/10/12 职场文书
校本研修个人总结
2015/02/28 职场文书
2015年度绩效考核工作总结
2015/05/27 职场文书
2016高考寄语集锦
2015/12/04 职场文书
Redis唯一ID生成器的实现
2022/07/07 Redis