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 相关文章推荐
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
Mar 09 Servers
fastdfs+nginx集群搭建的实现
Mar 31 Servers
Windows下使用Nginx+Tomcat做负载均衡的完整步骤
Mar 31 Servers
Apache Calcite 实现方言转换的代码
Apr 24 Servers
配置nginx 重定向到系统维护页面
Jun 08 Servers
图文详解Nginx版本平滑升级方案
Sep 15 Servers
nginx刷新页面出现404解决方案(亲测有效)
Mar 18 Servers
详解ZABBIX监控ESXI主机的问题
Jun 21 Servers
Zabbix对Kafka topic积压数据监控的问题(bug优化)
Jul 07 Servers
nginx七层负载均衡配置详解
Jul 15 Servers
SpringBoot前端后端分离之Nginx服务器下载安装过程
Aug 14 Servers
解决ubuntu安装软件时,status-code=409报错的问题
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
防止MySQL注入或HTML表单滥用的PHP程序
2009/01/21 PHP
getimagesize获取图片尺寸实例
2014/11/15 PHP
php操作xml入门之xml标签的属性分析
2015/01/23 PHP
php使用Jpgraph绘制复杂X-Y坐标图的方法
2015/06/10 PHP
curl和libcurl的区别简介
2015/07/01 PHP
PHP进程通信基础之信号
2017/02/19 PHP
[原创]PHP实现SQL语句格式化功能的方法
2017/07/28 PHP
PHP中抽象类,接口功能、定义方法示例
2019/02/26 PHP
JQuery上传插件Uploadify使用详解及错误处理
2010/04/27 Javascript
js 实现在离开页面时提醒未保存的信息(减少用户重复操作)
2013/01/16 Javascript
JS 获取浏览器和屏幕宽高等信息的实现思路及代码
2013/07/31 Javascript
使用JS实现图片展示瀑布流效果的实例代码
2016/09/12 Javascript
微信小程序入门教程
2016/11/18 Javascript
JavaScript仿聊天室聊天记录
2016/12/27 Javascript
Vue 父子组件、组件间通信
2017/03/08 Javascript
js中作用域的实例解析
2017/03/16 Javascript
浅谈vue引用静态资源需要注意的事项
2018/09/28 Javascript
JavaScript实现数字前补“0”的五种方法示例
2019/01/03 Javascript
JS面向对象之多选框实现
2020/01/17 Javascript
SpringBoot在yml配置文件中配置druid的操作
2020/11/16 Javascript
python文件的md5加密方法
2016/04/06 Python
对numpy中的数组条件筛选功能详解
2018/07/02 Python
python手机号前7位归属地爬虫代码实例
2020/03/31 Python
Python eval函数介绍及用法
2020/11/09 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
2021/01/27 Python
伦敦剧院及景点门票:Encore Tickets
2018/07/01 全球购物
JAVA和C++的区别
2013/10/06 面试题
Solaris操作系统的线程机制
2012/12/23 面试题
银行会计财务工作个人的自我评价
2013/10/29 职场文书
市级青年文明号申报材料
2014/05/26 职场文书
辩护词范文大全
2015/05/21 职场文书
《游戏公平》教学反思
2016/02/20 职场文书
2016年小学感恩节活动总结
2016/04/01 职场文书
如何书写你的职业生涯规划书?
2019/06/27 职场文书
python实现图片九宫格分割的示例
2021/04/25 Python
AudioContext 实现音频可视化(web技术分享)
2022/02/24 Javascript