2018年8月,IETF阻止宣布了TLS1.3,相比tls1.2,tls大大加强了安全特性,启用了很多过时的加密算法,在软件生态方面,浏览器客户端,目前的最新版的firefox和chrome均已支持,但在服务端上,大部分发行版的软件仓库还不支持(rhel8和即将发布的debian 10会原生支持),需要我们手动编译相关软件才行。

先编译安装openssl

我们的Linux发行版选用CentOS 7.6,系统自带的openssl版本为1.0.2k,很遗憾不支持tls 1.3,由于很多系统自带软件对openssl有依赖,不能轻易删除或改变,所以我们将手动编译openssl 1.1.1c,并且安装在非标准目录。

下面导入下环境变量,方便后面编译nginx用。

下面开始编译安装nginx

先下载并安装依赖

configure一下:

编译并安装:

配置nginx

加载nginx的模块

systemd配置:

建立一些临时目录:

nginx的主配置文件:

配置下虚拟主机:

然后我们在对应的目录,放一个index.html文件,方便测试。用firefox打开测试网站https://wiki.ntbaobei.com ,看下加密连接的属性:

分析下具体的网络请求,可以发现http2也启用了。

查看下运行的进程:

可以看到我们是以nobody用户运行的,这点和配置文件上一样。

 

 

如何为网站启用http2及tls 1.3

发表评论

电子邮件地址不会被公开。 必填项已用*标注