Nginx之5金钟罩 - (SSL)

简介: Nginx从入门到深入之SSL

SSL加密连接

在此分享前,思考几个问题。
Q1.为什么服务器要启用SSL加密数据连接?
Q2.如何使用SSL?
Q3.启用SSL的优势、劣势?

A1. HTTP协议在传输过程中,对于数据是不加密的,如果有恶意截取、伪造的情况是非常危险的。HTTPS就是基于HTTP协议,通过SSL或TLS提供加密处理数据、验证对方身份以及数据完整性保护。目前Chorme浏览器已经默认将HTTP的站点当成不安全的网站类型,全站SSL将会而且必须是发展的趋势。
A2. 流程很简单,申请SSL证书,配置应用服务器支持SSL,测试网站SSL有效性。
A3. SSL优势对服务器及客户端交互的数据进行加密,保护数据安全。但凸显出来对性能是有一定的下降的(因为传统的TCP连接经历了三次握手即可传输数据,但在HTTPS场景下,还需要对RSA签名校验,对ECC秘钥交换、计算、加密、解密等等)。但在不同场景,HTTP及HTTPS有不同的应用,例如在文件分发只读的情况,无需启用HTTPS,例如在购物车等场景,必须启用HTTPS。

功能配置

1.申请SSL证书,我们采用阿里云云盾的免费单域名证书。然后下载证书存放到ECS服务器上。
image

2.在Nginx上,ngx_http_ssl_module模块为HTTPS提供必要的支持,默认是不开启的,如果需要Nginx支持SSL,需要在编译时加入--with-http_ssl_module编译选项,该模块依赖OpenSSL库。编辑nginx.conf文件增加SSL相关的配置信息。

server {
    listen 443 ssl;
    server_name nginx.yekangming.com;
    ssl_certificate /data/certificate/public.crt;
    ssl_certificate_key /data/certificate/private.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!MD5;

    location / {
        root /data/webroot/nginx;
        index index.html;
    }
}
ssl on; #旧版本的写法

配置详解

ssl_certificate /data/certificate/public.crt; #证书
ssl_certificate_key /data/certificate/private.key; #私钥
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #协议
ssl_ciphers HIGH:!aNULL:!MD5; #加密套件

访问效果
在Chorme浏览器访问,可以在左上角见到有锁头代表已经加密了连接使用了SSL。
image

小技巧

用户在访问时习惯性只会输入域名,而我们浏览器则会自动补齐协议http://
一般情况下都会配置跳转,让用户的请求从HTTP从定向到HTTPS。

目录
相关文章
|
2月前
|
前端开发 应用服务中间件 Linux
nginx解决springcloud前后端跨域问题,同时配置ssl
nginx解决springcloud前后端跨域问题,同时配置ssl
|
7月前
|
安全 搜索推荐 应用服务中间件
百度搜索:蓝易云【Nginx服务器上安装SSL证书?】
通过按照上述步骤正确安装SSL证书并配置Nginx服务器,您的网站将获得HTTPS连接,提供更安全的访问体验。这有助于提高您的网站在搜索引擎结果中的排名,并确保用户数据的保护。请记住,在SEO优化方面,确保网站内容的优质和关键词的优化也是至关重要的。
833 0
|
9月前
|
应用服务中间件 Linux 网络安全
虚拟机Centos下载安装Nginx并安装ssl模块——小白教程
虚拟机Centos下载安装Nginx并安装ssl模块——小白教程
255 0
|
6月前
|
应用服务中间件 网络安全 nginx
Nginx学习研究-Nginx 安装 SSL 配置 HTTPS
Nginx学习研究-Nginx 安装 SSL 配置 HTTPS
261 0
|
4月前
|
应用服务中间件 网络安全 nginx
nginx 常用命令 |升级到1.20.1版本 | 如何更换 Nginx SSL 证书
nginx 常用命令 |升级到1.20.1版本 | 如何更换 Nginx SSL 证书
152 0
|
2月前
|
应用服务中间件 网络安全 nginx
解决nginx:[emerg]unknown directive ssl错误
解决nginx:[emerg]unknown directive ssl错误
|
2月前
|
Java 应用服务中间件 网络安全
Nginx配置静态页面+springboot应用+swagger+SSL的实现
Nginx配置静态页面+springboot应用+swagger+SSL的实现
|
6月前
|
tengine 应用服务中间件 Linux
【Linux环境】如何在Nginx(或Tengine)服务器上安装ssl证书----介绍nginx服务器类型证书的下载与安装操作
【Linux环境】如何在Nginx(或Tengine)服务器上安装ssl证书----介绍nginx服务器类型证书的下载与安装操作
299 0
|
3月前
|
JavaScript 应用服务中间件 网络安全
nginx 配置 解决 vue history模式下空白 ,以及SSL证书安装
nginx 配置 解决 vue history模式下空白 ,以及SSL证书安装
|
4月前
|
应用服务中间件 Linux 网络安全
Linux【脚本 06】HTTPS转发HTTP安装OpenSSL、Nginx(with-http_ssl_module)及自签名的X.509数字证书生成(一键部署生成脚本分享)
Linux【脚本 06】HTTPS转发HTTP安装OpenSSL、Nginx(with-http_ssl_module)及自签名的X.509数字证书生成(一键部署生成脚本分享)
65 1