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的更多相关文章

  1. nginx配置ssl加密(单双向认证、部分https)

    nginx配置ssl加密(单双向认证.部分https) nginx下配置ssl本来是很简单的,无论是去认证中心买SSL安全证书还是自签署证书,但最近公司OA的一个需求,得以有个机会实际折腾一番.一开始 ...

  2. [转帖]nginx配置ssl加密(单/双向认证、部分https)

    nginx配置ssl加密(单/双向认证.部分https) https://segmentfault.com/a/1190000002866627   nginx下配置ssl本来是很简单的,无论是去认证 ...

  3. Windows下Nginx配置SSL实现Https访问(包含证书生成)

    Vincent.李   Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...

  4. Centos7.2下Nginx配置SSL支持https访问(站点是基于.Net Core2.0开发的WebApi)

    准备工作 1.基于nginx部署好的站点(本文站点是基于.Net Core2.0开发的WebApi,有兴趣的同学可以跳http://www.cnblogs.com/GreedyL/p/7422796. ...

  5. Nginx - 配置 SSL证书

    nginx 配置 ssl 证书: 在nginx配置目录创建 cert目录 放置 SSL 的证书秘钥: 也可以使用配置绝对路径 /file/cert/cert.pem server { listen s ...

  6. nginx配置ssl双向证书

    CA根证书制作 # 创建CA私钥 openssl genrsa -out ca.key 2048 #制作CA根证书(公钥) openssl req -new -x509 -days 3650 -key ...

  7. linux下nginx配置ssl证书(https)

    nginx配置ssl很简单,首先需要两个文件,一个是crt文件,另一个是key文件,如下所示: xxx.crt;  #(证书公钥)xxx.key; #(证书私钥) 把这两个文件放到nginx的conf ...

  8. nginx 配置 ssl 双向证书

    CA 根证书制作 # 创建 CA 私钥 openssl genrsa -out ca.key 2048 #制作 CA 根证书(公钥) openssl req -new -x509 -days 3650 ...

  9. Nginx配置SSL报错 nginx: [emerg] unknown directive "ssl"

    Nginx配置SSL报错 nginx: [emerg] unknown directive "ssl"     出现如图所示错误,处理办法如下 去nginx解压目录下执行 ./co ...

随机推荐

  1. js动态显示当前时间+数字大小转换+小于9前面补0

    <script type="text/javascript"> function getTime(){ var myDate = new Date(); // 年份 d ...

  2. C语言变量名和地址的关系【转载】//基础的东西

    原文链接:http://blog.csdn.net/ssff1/archive/2009/12/13/4998787.aspx 变量名不占空间 变量:用来标识(identify)一块内存区域,这块区域 ...

  3. Asp.net Core 系列之--4.事务、日志及错误处理

    ChuanGoing 2019-11-17 这篇原本时想把事务处理.日志处理.错误处理.授权于鉴权一并介绍完的,授权和鉴权我想结合自定义权限来介绍,全部放到这里篇幅可能太长,因此权限部分将会在下篇来介 ...

  4. CMDB连接方式

    1.agent agent (放在每台客户端服务器上,定时任务) 脚本演示 # 采集本机的信息 执行命令 import subprocess v1 = subprocess.getoutput('ip ...

  5. gitbook的插件配置

    原生的gitbook样式比较单一,美观度和功能欠佳,可通过相关插件进行拓展. 插件地址:https://plugins.gitbook.com/ 主目录下新建book.json: { "au ...

  6. poj 3281 Dining (Dinic)

    Dining Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 22572   Accepted: 10015 Descript ...

  7. PHP常用的三种输出语句

    今天介绍一下PHP三种常用的输出语句: 1.echo语句 2.print_r语句 3.var_dump语句 echo语句:可以输出数字.字符串 例: echo 12: echo 'aswedf'; e ...

  8. bootstrap中图片响应式

    主要解决的是在轮播图中图片响应式的问题 目的 各种终端都需要正常显示图片 移动端应该使用更小(体积)的图片 实现方式 给标签添加两个data-属性(如:data-img-sm="小图路径&q ...

  9. 原创|我是如何从零学习开发一款跨平台桌面软件的(Markdown编辑器)

    原始冲动 最近一直在学习 Electron 开发桌面应用程序,目的是想做一个桌面编辑器,虽然一直在使用Typore这款神器,但无奈Typore太过国际化,在国内水土不服,无法满足我的一些需求. 比如实 ...

  10. [apue] 神奇的 Solaris pipe

    说到 pipe 大家可能都不陌生,经典的pipe调用配合fork进行父子进程通讯,简直就是Unix程序的标配. 然而Solaris上的pipe却和Solaris一样是个奇葩(虽然Solaris前途黯淡 ...