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的默认端口
Mar 31 Servers
Nginx反向代理多个服务器的实现方法
Mar 31 Servers
基于Apache Hudi在Google云构建数据湖平台的思路详解
Apr 07 Servers
详解Nginx的超时keeplive_timeout配置步骤
May 25 Servers
Linux服务器离线安装 nginx的详细步骤
Jun 16 Servers
git中cherry-pick命令的使用教程
Jun 25 Servers
腾讯云服务器部署前后分离项目之前端部署
Jun 28 Servers
在虚拟机中安装windows server 2008的图文教程
Jun 28 Servers
vscode远程免密登入Linux服务器的配置方法
Jun 28 Servers
使用 DataAnt 监控 Apache APISIX的原理解析
Jul 07 Servers
教你使用RustDesk 搭建一个自己的远程桌面中继服务器
Aug 14 Servers
ubuntu端向日葵键盘输入卡顿问题及解决
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
两个开源的Php输出Excel文件类
2010/02/08 PHP
PHP页面间参数传递的四种方法详解
2013/06/09 PHP
php有道翻译api调用方法实例
2014/12/22 PHP
php array_walk 对数组中的每个元素应用用户自定义函数详解
2016/11/18 PHP
JavaScript 学习笔记(四)
2009/12/31 Javascript
浅谈js的setInterval事件
2014/12/05 Javascript
js ajaxfileupload.js上传报错的解决方法
2016/05/05 Javascript
jQuery unbind 删除绑定事件详解
2016/05/24 Javascript
webpack处理 css\less\sass 样式的方法
2017/08/21 Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
2017/10/20 Javascript
fullpage.js最后一屏滚动方式
2018/02/06 Javascript
移动端自适应flexible.js的使用方法(不用三大框架,仅写一个单html页面使用)推荐
2019/04/02 Javascript
Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址
2019/05/21 Javascript
js事件触发操作实例分析
2019/06/21 Javascript
vscode调试node.js的实现方法
2020/03/22 Javascript
vue项目前端微信JSAPI与外部H5支付相关实现过程及常见问题
2020/04/14 Javascript
js重写alert事件(避免alert弹框标题出现网址)
2020/12/04 Javascript
Python中二维列表如何获取子区域元素的组成
2017/01/19 Python
Python基础教程之浅拷贝和深拷贝实例详解
2017/07/15 Python
python中map()函数的使用方法示例
2017/09/29 Python
python字典操作实例详解
2017/11/16 Python
Python实用技巧之利用元组代替字典并为元组元素命名
2018/07/11 Python
详解如何将python3.6软件的py文件打包成exe程序
2018/10/09 Python
django用户登录验证的完整示例代码
2019/07/21 Python
Django之编辑时根据条件跳转回原页面的方法
2019/08/21 Python
django queryset相加和筛选教程
2020/05/18 Python
10个python爬虫入门基础代码实例 + 1个简单的python爬虫完整实例
2020/12/16 Python
pytorch 中forward 的用法与解释说明
2021/02/26 Python
澳大利亚排名第一的露营和户外设备在线零售商:Outbax
2020/05/06 全球购物
介绍一下Java中的static关键字
2012/05/12 面试题
公司合作协议书范本
2014/04/18 职场文书
机械专业求职信
2014/05/25 职场文书
义务教育学校标准化建设汇报材料
2014/08/16 职场文书
教师节学生演讲稿
2014/09/03 职场文书
C3 线性化算法与 MRO之Python中的多继承
2021/10/05 Python
win10如何开启ahci模式?win10开启ahci模式详细操作教程
2022/07/23 数码科技