如何在Fedora 30上的Apache中启用TLS 1.3

TLS 1.3是传输层安全性(TLS)协议的一个版本,该协议于2018年作为RFC 8446中的提议标准发布。与以前的版本相比,它提供了安全性和性能方面的改进。

本指南将演示如何使用Fedora 30上的Apache Web服务器启用TLS 1.3。

要求

  • 运行Fedora 30的Vultr Cloud Compute(VC2)实例。
  • 有效的域名和正确配置A/ AAAA/ CNAME为您的域DNS记录。
  • 有效的TLS证书。我们将从“加密”中获取一个。
  • Apache版本2.4.36或更高版本。
  • OpenSSL版本1.1.1或更高版本。

在你开始之前

检查Fedora版本。

cat /etc/fedora-release
# Fedora release 30 (Thirty)

创建一个non-root具有sudo访问权限的新用户帐户并切换到该帐户。

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

注意: 用您的用户名替换johndoe

设置时区。

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

确保您的系统是最新的。

sudo dnf check-upgrade || sudo dnf upgrade -y

安装所需的软件包。

sudo dnf install -y socat git

禁用SELinux和防火墙。

sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld

安装acme.sh客户端并从Let's Encrypt获得TLS证书

安装acme.sh。

sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail your_email@example.com
cd ~
source ~/.bashrc

检查版本。

/etc/letsencrypt/acme.sh --version
# v2.8.2

为您的域获取RSA和ECDSA证书。

# RSA
sudo /etc/letsencrypt/acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength 2048
# ECC/ECDSA
sudo /etc/letsencrypt/acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength ec-256

注意: 用您的域名替换example.com命令。

创建明智的目录来存储您的证书和密钥。我们将使用/etc/letsencrypt

sudo mkdir -p /etc/letsencrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

安装证书并��其复制到/etc/letsencrypt

# RSA
sudo /etc/letsencrypt/acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem 
# ECC/ECDSA
sudo /etc/letsencrypt/acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem

运行上述命令后,您的证书和密钥将位于以下位置:

  • RSA/etc/letsencrypt/example.com
  • ECC / ECDSA/etc/letsencrypt/example.com_ecc

安装Apache

Apache在版本2.4.36中添加了对TLS 1.3的支持。Fedora 30系统附带了支持TLS 1.3的Apache和OpenSSL,因此无需构建自定义版本。

通过dnf程序包管理器下载并安装Apache的最新2.4分支及其SSL模块。

sudo dnf install -y httpd mod_ssl

检查版本。

sudo httpd -v
# Server version: Apache/2.4.39 (Fedora)
# Server built:   May  2 2019 14:50:28

启动并启用Apache。

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

为TLS 1.3配置Apache

既然我们已经成功安装了Apache,我们就可以对其进行配置,以开始在服务器上使用TLS 1.3。

运行sudo vim /etc/httpd/conf.d/example.com.conf,并使用以下基本配置填充文件。

<IfModule mod_ssl.c>
  <VirtualHost *:443>
    ServerName example.com

    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3

    # RSA
    SSLCertificateFile "/etc/letsencrypt/example.com/fullchain.pem"
    SSLCertificateKeyFile "/etc/letsencrypt/example.com/private.key"
    # ECC
    SSLCertificateFile "/etc/letsencrypt/example.com_ecc/fullchain.pem"
    SSLCertificateKeyFile "/etc/letsencrypt/example.com_ecc/private.key"

  </VirtualHost>
</IfModule>

保存文件并退出。

检查配置。

sudo apachectl configtest

重新加载Apache以激活新配置。

sudo systemctl reload httpd.service

通过Web浏览器中的HTTPS协议打开您的网站。要验证TLS 1.3,可以使用浏览器开发工具或SSL Labs服务。以下屏幕截图显示了运行TLS 1.3的Chrome的安全标签。

如何在Fedora 30上的Apache中启用TLS 1.3

如何在Fedora 30上的Apache中启用TLS 1.3

您已在Fedora 30服务器上的Apache中成功启用TLS 1.3。TLS 1.3的最终版本于2018年8月定义,因此没有更好的时间开始采用这项新技术了。

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息