详细nginx配置SSL
1.nginx的ssl
让nginx实现用https来访问网站,http是80端口,https是443端口。
https其实就是一种加密的http
2.为什么要加密
例子:在网上银行汇款,在你汇款的过程当中,你会输入银行卡的密码,如果不加密,这些数据传输的过程中就有可能被人截获,破解。
如果你使用了https,数据在传输的过程中是会加密的。即使抓到了数据包,但是无法破解出来。
知识:
http(1.1版本) http 2(https)
3.0 怎么配置ssl?
首先得看你是yum安装的nginx还是编译安装的nginx
3.1yum安装nginx已经有参数--with-http_ssl_module
nginx -V ##查看参数
3.2 编译安装查看是否有--with-http_ssl_module (我选择的是编码编译安装的nginx)
/usr/local/nginx/sbin/nginx -V
3.3如果没有重新编译。进入nginx解压的目录
# cd /usr/local/src/nginx-1.17.0/
3.4 重新配置新的编译参数
# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
3.5 运行上面命令即可,等待配置,运行命令
# make
注:不用make install安装,不然会覆盖安装
3.6 停止nginx
# /etc/init.d/nginx stop
3.7 把刚刚编译好的nginx覆盖原有的nginx
# cp ./objs/nginx /usr/local/nginx/sbin/
3.8 查看编译的参数是否生效
# /usr/local/nginx/sbin/nginx -V
4.0 如何获取ssl证书?
申请证书:
网站:(沃通)
免费的:freessl.cn
这里拿的是免费的证书
进入freessl.cn首先注册 然后输入域名申请开通,这个过程需要去添加TXT记录来证明网站是你的。

会给你一个TXT的记录

然后在你的域名解析中添加

回到freessl.cn点击验证会给你CA证书,证书,秘钥

这时候回到linux 创建ssl的目录
# mkdir /usr/local/nginx/conf/ssl/
进入ssl目录
vim CA
添加浏览器生成的CA证书
编辑证书文件
# vim bbs.crt
复制粘贴证
编辑私钥文件
# vim bbs.key
复制粘贴私钥
配置conf配置文件
server
{
listen 443 ssl;
index index.html index.htm index.php;
root /data/wwwroot/bbs.centos.com;
server_name bbs.centos.com;
ssl_certificate /usr/local/nginx/conf/ssl/bbs.crt;
ssl_certificate_key /usr/local/nginx/conf/ssl/bbs.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
检测语法重载配置
# /usr/local/nginx/sbin/nginx -t
# /usr/local/nginx/sbin/nginx -s reload
另外也可以配置成
server
{
listen 443;
index index.html index.htm index.php;
root /data/wwwroot/bbs.centos.com;
server_name bbs.centos.com;
ssl on;
ssl_certificate /usr/local/nginx/conf/ssl/bbs.crt;
ssl_certificate_key /usr/local/nginx/conf/ssl/bbs.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
重启nginx
# /etc/init.d/nginx restart
查看监听端口
# netstat -lntp
5.0 配置好了可以访问但是centos有防火墙还需要开放443端口
# firewall-cmd --add-port=443/tcp --permanent ##永久放行443端口
# firewall-cmd -reload #重载
现在访问域名上效果图

详细nginx配置SSL的更多相关文章
- nginx配置ssl加密(单双向认证、部分https)
nginx配置ssl加密(单双向认证.部分https) nginx下配置ssl本来是很简单的,无论是去认证中心买SSL安全证书还是自签署证书,但最近公司OA的一个需求,得以有个机会实际折腾一番.一开始 ...
- [转帖]nginx配置ssl加密(单/双向认证、部分https)
nginx配置ssl加密(单/双向认证.部分https) https://segmentfault.com/a/1190000002866627 nginx下配置ssl本来是很简单的,无论是去认证 ...
- Windows下Nginx配置SSL实现Https访问(包含证书生成)
Vincent.李 Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...
- Centos7.2下Nginx配置SSL支持https访问(站点是基于.Net Core2.0开发的WebApi)
准备工作 1.基于nginx部署好的站点(本文站点是基于.Net Core2.0开发的WebApi,有兴趣的同学可以跳http://www.cnblogs.com/GreedyL/p/7422796. ...
- Nginx - 配置 SSL证书
nginx 配置 ssl 证书: 在nginx配置目录创建 cert目录 放置 SSL 的证书秘钥: 也可以使用配置绝对路径 /file/cert/cert.pem server { listen s ...
- nginx配置ssl双向证书
CA根证书制作 # 创建CA私钥 openssl genrsa -out ca.key 2048 #制作CA根证书(公钥) openssl req -new -x509 -days 3650 -key ...
- linux下nginx配置ssl证书(https)
nginx配置ssl很简单,首先需要两个文件,一个是crt文件,另一个是key文件,如下所示: xxx.crt; #(证书公钥)xxx.key; #(证书私钥) 把这两个文件放到nginx的conf ...
- nginx 配置 ssl 双向证书
CA 根证书制作 # 创建 CA 私钥 openssl genrsa -out ca.key 2048 #制作 CA 根证书(公钥) openssl req -new -x509 -days 3650 ...
- Nginx配置SSL报错 nginx: [emerg] unknown directive "ssl"
Nginx配置SSL报错 nginx: [emerg] unknown directive "ssl" 出现如图所示错误,处理办法如下 去nginx解压目录下执行 ./co ...
随机推荐
- 百度艾尼ERNIE专场再入魔都,11月23日线下开讲!
这个十一月,是属于深度学习开发者们的秋季盛宴.『WAVE Summit+』2019 深度学习开发者秋季峰会刚刚落下帷幕,基于ERNIE的语义理解工具套件也在此次峰会上全新发布,旨在为企业级开发者提供更 ...
- vue-cli3.X快速创建项目
1.安装 Vue CLI 的包名称由 vue-cli 改成了 @vue/cli. 如果你已经全局安装了旧版本的 vue-cli (1.x 或 2.x),你需要先通过以下方式先卸载它: npm unin ...
- JavaScript入门经典(第7版)读书笔记
断断续续看了十来天,终于看完了,还是学到些东西,这本书还是不错的,各方面都有涉及. 补充了下之前不完善的JS 知识 笔记一般只记必要的东西. Table of Contents 1. JavaScr ...
- [转载]2.3 UiPath循环活动For Each的介绍和使用
一.For Each的介绍 For Each:循环迭代一个列表.数组.或其他类型的集合, 可以遍历并分别处理每条信息 二.For Each在UiPath中的使用 1.打开设计器,在设计库中新建一个Fl ...
- 在ubuntu中编译内核是用make menuconfig报错:package 'ncurses' has n
执行过程如下: root@zyx-VirtualBox:~# cd /opt/EmbedSky/ root@zyx-VirtualBox:/opt/EmbedSky# cd linux-2.6.30. ...
- idea用hibernate创建一个表两个主键时遇到的问题
1>> idea功能简单,最大化的实现傻瓜式操作,不需要像eclipse一样手敲代码,尤其是在创建主键多个或者主键映射时. 2>> (1).首先,idea创建复合主键映射时,需 ...
- CentOS7 编码编译安装或卸载http2.4.25 一键脚本
待完善 CentOS 7测试 哈哈 #!/bin/bash #************************************************************** #Autho ...
- vue 封装方法
个我这个是局部引入方法,下次有需要全局在补上(全局:在main.js文件引入封装的方法js文件,然后用Vue.prototype) 一.新建一个js文件loading.js 二.编辑loading.j ...
- deepin MySQL 安装以及编码格式的修改utf-8
deepin MySQL 安装以及编码格式的修改utf-8: 1.sudo apt-get install mysql-server mysql-client 2.sudo mysql -u root ...
- .NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
.NET Core love gRPC 千呼万唤的 .NET Core 3.0 终于在 9 月份正式发布,在它的众多新特性中,除了性能得到了大大提高,比较受关注的应该是 ASP.NET Core 3. ...