阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

如何在Apache和Nginx中启用TLS 1.3

607次阅读
没有评论

共计 4283 个字符,预计需要花费 11 分钟才能阅读完成。

TLS 1.3 是传输层安全性(TLS)协议的最新版本,它基于现有的 1.2 规范和适当的 IETF 标准:RFC 8446. 它提供了比其前代产品更强的安全性和更高的性能改进。

在本文中,我们将向您展示获取有效 TLS 证书的分步指南,并在 Apache 或 Nginx Web 服务器上托管的域上启用最新的 TLS 1.3 版本协议。

要求:

  • Apache 2.4.37 或更高版本。
  • Nginx 版本 1.13.0 或更高版本。
  • OpenSSL 1.1.1 或更高版本。
  • 具有正确配置的 DNS 记录的有效域名。
  • 有效的 TLS 证书。

从 Let’s Encrypt 安装 TLS 证书

要从 Let’s Encrypt 获取免费的 SSL 证书,您需要在 Linux 系统上安装 Acme.sh 客户端以及一些所需的软件包,如图所示。

# apt install -y socat git  [在 Debian/Ubuntu 上]
# dnf install -y socat git  [在 RHEL/CentOS/Fedora 上]
# mkdir /etc/letsencrypt
# git clone https://github.com/Neilpang/acme.sh.git
# cd acme.sh
# ./acme.sh –install –home /etc/letsencrypt –accountemail your_email@example.com
# cd ~
# /etc/letsencrypt/acme.sh –issue –standalone –home /etc/letsencrypt -d example.com –ocsp-must-staple –keylength 2048
# /etc/letsencrypt/acme.sh –issue –standalone –home /etc/letsencrypt -d example.com –ocsp-must-staple –keylength ec-256

注意 :使用您的真实域名替换上述命令中的 example.com。

安装 SSL 证书后,您可以继续在您的域上启用 TLS 1.3,如下所述。

在 Nginx 上启用 TLS 1.3

正如我在上面的要求中提到的那样,从 Nginx 1.13 版本开始支持 TLS 1.3。如果您运行的是较旧的 Nginx 版本,则需要先升级到最新版本。

# apt install nginx
# yum install nginx

检查编译 Nginx 的 Nginx 版本和 OpenSSL 版本(确保 nginx 版本至少为 1.14,openssl 版本为 1.1.1)。

# nginx -V

样例输出

nginx version: nginx/1.14.1
built by gcc 8.2.1 20180905 (Red Hat 8.2.1-3) (GCC)
built with OpenSSL 1.1.1 FIPS  11 Sep 2018
TLS SNI support enabled
….

现在启动,启用并验证 nginx 安装。

# systemctl start nginx.service
# systemctl enable nginx.service
# systemctl status nginx.service

现在使用您喜欢的编辑器打开 nginx vhost 配置 /etc/nginx/conf.d/example.com.conf 文件。

# vi /etc/nginx/conf.d/example.com.conf

并找到 ssl_protocols 指令并在行尾添加 TLSv1.3,如下所示

server {
  listen 443 ssl http2;
  listen [::]:443 ssl http2;

  server_name example.com;

  # RSA
  ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
  # ECDSA
  ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;

  ssl_protocols TLSv1.2 TLSv1.3;
  ssl_ciphers ‘ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256’;
  ssl_prefer_server_ciphers on;
}

最后,验证配置并重新加载 Nginx。

# nginx -t
# systemctl reload nginx.service

在 Apache 中启用 TLS 1.3

从 Apache 2.4.37 开始,您可以利用 TLS 1.3。如果您运行的是旧版本的 Apache,则需要先升级到最新版本。

# apt install apache2
# yum install httpd

安装后,您可以验证 Apache 和编译 Apache 的 OpenSSL 版本。

# httpd -V
# openssl version

现在启动,启用并验证 nginx 安装。

————– 在 Debian/Ubuntu 上 ————–
# systemctl start apache2.service
# systemctl enable apache2.service
# systemctl status apache2.service

————– 在 RHEL/CentOS/Fedora 上 ————–
# systemctl start httpd.service
# systemctl enable httpd.service
# systemctl status httpd.service

现在使用您喜欢的编辑器打开 Apache 虚拟主机配置文件。

# vi /etc/httpd/conf.d/vhost.conf

或者

# vi /etc/apache2/apache2.conf

并找到 ssl_protocols 指令并在行尾添加 TLSv1.3,如下所示。

<VirtualHost *:443>
SSLEngine On

# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com/example.com.key;
# ECDSA
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/example.com.key;

ssl_protocols TLSv1.2 TLSv1.3
ssl_ciphers ‘ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256’;
ssl_prefer_server_ciphers on;
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem

    ServerAdmin admin@example.com
    ServerName www.example.com
    ServerAlias example.com
    #DocumentRoot /data/httpd/htdocs/example.com/
    DocumentRoot /data/httpd/htdocs/example_hueman/
  # Log file locations
  LogLevel warn
  ErrorLog  /var/log/httpd/example.com/httpserror.log
  CustomLog “|/usr/sbin/rotatelogs /var/log/httpd/example.com/httpsaccess.log.%Y-%m-%d 86400” combined
</VirtualHost>

最后,验证配置并重新加载 Apache。

————– 在 Debian/Ubuntu 上 ————–
# apache2 -t
# systemctl reload apache2.service

————– 在 RHEL/CentOS/Fedora 上 ————–
# httpd -t
# systemctl reload httpd.service

验证站点是否正在使用 TLS 1.3

通过 Web 服务器配置后,您可以使用 Chrome 70+ 版本上的 Chrome 浏览器开发工具检查您的站点是否通过 TLS 1.3 协议进行握手。

如何在 Apache 和 Nginx 中启用 TLS 1.3

验证域名上的 TLS 1.3 协议

就这样。您已在 Apache 或 Nginx Web 服务器上托管的域上成功启用了 TLS 1.3 协议。如果您对本文有任何疑问,请随时在下面的评论部分询问。

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计4283字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7991014
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
开发者福利:免费 .frii.site 子域名,一分钟申请即用

开发者福利:免费 .frii.site 子域名,一分钟申请即用

  开发者福利:免费 .frii.site 子域名,一分钟申请即用 前言 在学习 Web 开发、部署...
星哥带你玩飞牛NAS-8:有了NAS你可以干什么?软件汇总篇

星哥带你玩飞牛NAS-8:有了NAS你可以干什么?软件汇总篇

星哥带你玩飞牛 NAS-8:有了 NAS 你可以干什么?软件汇总篇 前言 哈喽各位玩友!我是是星哥,不少朋友私...
安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...
免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

  免费无广告!这款跨平台 AI RSS 阅读器,拯救你的信息焦虑 在算法推荐主导信息流的时代,我们...
还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比

小白也能看懂:什么是云服务器?腾讯云 vs 阿里云对比 星哥玩云,带你从小白到上云高手。今天咱们就来聊聊——什...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的NAS中!

星哥带你玩飞牛 NAS-10:备份微信聊天记录、数据到你的 NAS 中! 大家对「数据安全感」的需求越来越高 ...
星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...
颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

  颠覆 AI 开发效率!开源工具一站式管控 30+ 大模型 ApiKey,秘钥付费 + 负载均衡全...