网站建设资讯

NEWS

网站建设资讯

如何让Nginx快速支持TLS1.3协议详解-创新互联

前言

创新互联建站专注于成华企业网站建设,成都响应式网站建设,电子商务商城网站建设。成华网站建设公司,为成华等地区提供建站服务。全流程定制网站开发,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

最近在看一些 TLS 协议 1.3 版本的相关知识,所以想分享一些信息,本文是第一篇,没有太多的理论细节,主要说下如何在 Nginx 上快速部署一个支持 TLS 1.3 协议版本的网站。

TLS 1.3 优势

TLS 1.3 相对于之前的版本,主要有两大优势:

Enhanced security: 安全性增强
Improved speed:速度提升

几个基本观点需要牢记。

1)截止到现在 TLS 1.3 协议仍然处于草案阶段,最新的 RFC 文档是 draft 28,对于大型系统来说,目前并不建议部署,当然对于个人网站来说,可以部署 TLS 1.3 版本 。

2)TLS 1.3 和 TLS 1.2 版本有很大的不同,从协议消息的角度来看,两者是不兼容的,也正因为此,大型系统目前不建议采用 TLS 1.3 版本。

关于这两个版本之间的差异,后续我会写文章详细描述。

3)Nginx 底层使用的密码库是 OpenSSL,也就是说是否支持 TLS 1.3 版本,取决于 OpenSSL 库。

目前 Nginx 1.13 以上的版本支持 TLS 1.3 版本,而 OpenSSL 1.1.1 版本支持 TLS 1.3 版本,最新的 OpenSSL 1.1.1-pre5 支持 TLS 1.3 draft 26。

这篇文章运行环境如下:

  • Ubuntu 14.04.5 LTS 系统
  • gcc version 4.8.4
  • Nginx nginx1.13.5
  • openssl1.1.1

如果大家在具体安装的时候,遇到各类问题,可能和软件版本、系统环境有关,需要查看手册或者在线 Google。

安装 OpenSSL

了解 TLS 1.3 版本,最好的工具就是 OpenSSL,所以第一步就是安装 OpenSSL 密码库和命令行工具。

运行如下命令:

$ cd /root 

# 下载源代码 
$ wget https://www.openssl.org/source/old/1.1.1/openssl-1.1.1-pre1.tar.gz 

$ cd openssl-1.1.1-pre1

$ grep TLS1_3_VERSION_DRAFT_TXT ./* -R
# 输出 draft 23 
./include/openssl/tls1.h:# define TLS1_3_VERSION_DRAFT_TXT "TLS 1.3 (draft 23)"

$ ./config --prefix=/usr/local/openssl1.1.1 --openssldir=/usr/local/openssl1.1.1 --libdir=lib shared -Wl,-R,'$(LIBRPATH)' -Wl,--enable-new-dtags enable-ec_nistp_64_gcc_128 enable-tls1_3

$ make 
$ make install

本文名称:如何让Nginx快速支持TLS1.3协议详解-创新互联
转载源于:http://njwzjz.com/article/dhsgsj.html