关闭 TLS Apache和Nginx中的1.0和1.1

所有版本的SSL /TLS 之前的协议 TLS 现在已弃用1.2,并认为它不安全。 许多Web服务器平台仍然具有 TLS 1.0和 TLS 默认情况下启用1.1。 但是,所有现代网络浏览器都与 TLS 1.2。 因此,对于网站所有者来说,最好检查其服务器配置,以确保只有最新的安全版本的SSL /TLS 已启用,其他所有(包括 TLS TLS 1.1和SSL 3.0)被禁用。

本指南包含有关检查哪个版本的SSL /TLS 在网站上启用,禁用过时的SSL /TLS (在Apache和Nginx中),并显示了由于服务器仅运行不推荐使用的不安全版本的SSL /而导致的浏览器错误示例TLS.

选中已启用的SSL /TLS 版本

在线工具

您可以快速检查SSL /TLS 您的网站通过访问CDN77的支持 TLS 检查 并输入您要检查的域名。 如下所示, https://example.com 当前禁用SSL版本2和3,但是启用所有版本的 TLS (包括已弃用的 TLS 1.1和1.0):

SSL /TLS example.com支持的版本

NMAP

您还可以检查SSL /TLS 具有开放源代码的网站所支持的版本和密码 NMAP 命令行工具:

nmap --script ssl-enum-ciphers -p

SSL /的默认端口TLS is 443。 下面的命令将生成一个报告 example.com:

$ nmap --script ssl-enum-ciphers -p 443 example.com在7.80-2020-08 25:13 EDT对example.com(10)的Nmap扫描报告中启动Nmap 93.184.216.34(https://nmap.org)主机已启动(0.031秒延迟)。 example.com的其他地址(未扫描):2606:2800:220:1:248:1893:25c8:1946端口状态服务443 / tcp打开https | ssl-enum-ciphers:|   TLSv1.0:| 密码:       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA(secp256r1)-A |       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA(secp256r1)-A |       TLS_DHE_RSA_WITH_AES_128_CBC_SHA(dh 2048)-A |       TLS_DHE_RSA_WITH_AES_256_CBC_SHA(dh 2048)-A |       TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA(dh 2048)-A |       TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA(dh 2048)-A |       TLS_RSA_WITH_AES_256_CBC_SHA(rsa 2048)-A |       TLS_RSA_WITH_CAMELLIA_256_CBC_SHA(rsa 2048)-A |       TLS_RSA_WITH_AES_128_CBC_SHA(rsa 2048)-A |       TLS_RSA_WITH_CAMELLIA_128_CBC_SHA(rsa 2048)-A |       TLS_DHE_RSA_WITH_SEED_CBC_SHA(dh 2048)-A |       TLS_RSA_WITH_SEED_CBC_SHA(rsa 2048)-A | 压缩机: NULL | 密码首选项:服务器|   TLSv1.1:| 密码:       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA(secp256r1)-A |       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA(secp256r1)-A |       TLS_DHE_RSA_WITH_AES_128_CBC_SHA(dh 2048)-A |       TLS_DHE_RSA_WITH_AES_256_CBC_SHA(dh 2048)-A |       TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA(dh 2048)-A |       TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA(dh 2048)-A |       TLS_RSA_WITH_AES_256_CBC_SHA(rsa 2048)-A |       TLS_RSA_WITH_CAMELLIA_256_CBC_SHA(rsa 2048)-A |       TLS_RSA_WITH_AES_128_CBC_SHA(rsa 2048)-A |       TLS_RSA_WITH_CAMELLIA_128_CBC_SHA(rsa 2048)-A |       TLS_DHE_RSA_WITH_SEED_CBC_SHA(dh 2048)-A |       TLS_RSA_WITH_SEED_CBC_SHA(rsa 2048)-A | 压缩机: NULL | 密码首选项:服务器|   TLSv1.2:| 密码:       TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256(secp256r1)-A |       TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384(secp256r1)-A |       TLS_DHE_RSA_WITH_AES_128_GCM_SHA256(dh 2048)-A |       TLS_DHE_RSA_WITH_AES_256_GCM_SHA384(dh 2048)-A |       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256(secp256r1)-A |       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA(secp256r1)-A |       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384(secp256r1)-A |       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA(secp256r1)-A |       TLS_DHE_RSA_WITH_AES_128_CBC_SHA256(dh 2048)-A |       TLS_DHE_RSA_WITH_AES_128_CBC_SHA(dh 2048)-A |       TLS_DHE_RSA_WITH_AES_256_CBC_SHA256(dh 2048)-A |       TLS_DHE_RSA_WITH_AES_256_CBC_SHA(dh 2048)-A |       TLS_RSA_WITH_AES_128_GCM_SHA256(RSA 2048)-A |       TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA(dh 2048)-A |       TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA(dh 2048)-A |       TLS_RSA_WITH_AES_256_CBC_SHA(rsa 2048)-A |       TLS_RSA_WITH_CAMELLIA_256_CBC_SHA(rsa 2048)-A |       TLS_RSA_WITH_AES_128_CBC_SHA(rsa 2048)-A |       TLS_RSA_WITH_CAMELLIA_128_CBC_SHA(rsa 2048)-A |       TLS_DHE_RSA_WITH_SEED_CBC_SHA(dh 2048)-A |       TLS_RSA_WITH_SEED_CBC_SHA(rsa 2048)-A | 压缩机: NULL | 密码首选项:服务器| _最小强度:已完成Nmap:在1秒内扫描了1个IP地址(3.88个主机已启动)

服务器配置

阿帕奇

禁用 TLS 在Apache 1.0和1.1中,您需要编辑包含以下内容的配置文件: SSLProtocol 您网站的指令。 该文件可能位于不同的位置,具体取决于您的平台,版本或其他安装详细信息。 一些可能的位置是:

  • /usr/local/apache2/conf/extra/httpd-ssl.conf (默认的Apache安装)
  • /etc/apache2/mods-enabled/ssl.conf (Ubuntu / Debian)
  • /private/etc/apache2/extra/httpd-ssl.conf (苹果系统)

找到正确的配置文件后,请查找以开头的行 SSLProtocol。 在默认的macOS Apache安装中,此示例使用以下命令禁用SSLv3: - 运算符,但启用 TLS 1.0和1.1:

SSL协议全部-SSLv3

您可以禁用所有过时的SSL /版本TLS 通过如下指定它们来支持Apache:

SSLProtocol全部-SSLv3-TLSv1  - TLSv1.1

上面的配置启用 TLS 1.2以及 TLS 1.3在您的环境中是否可用。

Apache和虚拟主机

Apache可以在一台服务器上运行多个网站。 这些 虚拟主机 可能基于IP号,端口或域名,并且可能包含覆盖Apache基本配置的设置。 因此,您应该检查配置文件中每个虚拟主机的设置,尤其是在对基本SSL /TLS 配置似乎不起作用。

对于2.4.42之前的Apache版本(针对1.1.1之前的OpenSSL构建/链接),无法指定其他SSL /TLS 共享相同基本IP号和端口的基于名称的虚拟主机的协议– SSLProtocol 第一个虚拟主机的2.4.42%已应用到所有其他虚拟主机。 从Apache 1.1.1 / OpenSSL XNUMX开始, SSLProtocol 当每个基于名称的虚拟主机的 服务器名称指示(SNI) 由客户在 SSL /TLS 握手.

进行配置更改后,请重新加载Apache以使其生效。 有关的更多信息 SSLProtocol 指令,请参考Apache的 文件.

Nginx的

SSL /TLS 协议设置可以在主要的Nginx配置文件中指定(通常位于 /etc/nginx/nginx.conf)或您的网站配置文件中。 寻找以 ssl_protocols。 例如,以下是默认设置 nginx.conf 在Ubuntu上全新安装的Nginx文件:

ssl_协议 TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; #删除SSLv3,参考:POODLE

您可以编辑此行,以便仅使用最新的安全版本的SSL /TLS 被包含在内:

ssl_协议 TLSv1.2 TLSv1.3;

请注意,默认SSL配置中的任何设置都可能被配置单个域名的服务器块所覆盖,因此请确保检查是否对协议设置所做的更改未反映在您的网站中。

完成配置更改后,请重新加载Nginx使其生效。 有关更多信息,请参考Nginx的文档。 配置HTTPS服务器.

TLS 1.0和1.1浏览器错误

计划 TLS 当前认为版本1.0和1.1是不安全的,如果大多数现代浏览器遇到的网站过时,它们将产生错误消息 TLS 版本已启用,但 TLS 1.2或1.3不是。 这些错误的示例如下所示:

Google Chrome

Chrome测试是在Windows 84上使用Chrome 10完成的。截图来自Chrome。 请注意,当前版本的Microsoft Edge(基于Chromium)显示与Chrome相同的错误代码,并带有稍微不同的文本。

Google Chrome浏览器连接到正在运行的网站时,显示以下错误消息 TLS 1.0或1.1:

您的连接不完全安全
该网站使用了过时的安全配置,当它发送到该网站时,它可能会暴露您的信息(例如,密码,消息或信用卡)。
NET::ERR_SSL_OBSOLETE_VERSION

TLS Chrome中出现1.0错误消息点击 先进的 按钮将显示以下消息,以及指向该网站的链接,标记为 不安全:

用于加载此网站的连接使用 TLS 1.0或 TLS 1.1,已弃用,以后将禁用。 一旦禁用,将阻止用户加载该网站。 服务器应启用 TLS 1.2或更高版本。

有关的高级信息 TLS Chrome中的1.0和1.1

Mozilla Firefox浏览器

Firefox测试是在Windows 79.0上使用Firefox 10完成的。

当Mozilla Firefox连接到正在运行的网站时,会产生以下错误消息 TLS 1.0或1.1:

安全连接失败
与[URL]的连接期间发生错误。 对等使用不受支持的安全协议版本。
错误代码: SSL_ERROR_UNSUPPORTED_VERSION
...
该网站可能不支持 TLS 1.2协议,这是Firefox支持的最低版本。 启用 TLS 1.0和1.1可能允许此连接成功。
TLS 1.0和 TLS 1.1在将来的版本中将被永久禁用。

Firefox TLS 1.0和1.1错误消息

点击 启用 TLS 1.0 1.1和 按钮可能有助于加载该网站,但这不是一次性的豁免。 重新禁用 TLS 1.0和1.1,转到 about:config 在Firefox中并设置 security.tls.version.enable-deprecatedfalse.

将 security.tls.version.enable-deprecated 设置为 false

苹果Safari

Safari测试是使用macOS 13.1.2(Catalina)上的Safari版本10.15.6完成的

苹果的Safari浏览器将使用以下方式加载HTTPS网站: TLS 1.0和1.1,但将在浏览器的地址栏中显示“不安全”消息。

TLS Apple Safari中的1.0网站

了解更多信息

阅读有关与早期版本相关的安全性问题 TLS,请阅读我们的文章, 提早提倡 TLS 为了更安全的互联网。 有关之间的重要区别的更多信息 TLS 1.2和 TLS 1.3,签出 TLS 1.3在这里停留.

而且,一如既往,如果您有任何疑问,请通过以下电子邮件与我们联系 Support@SSL.com,致电 1-877-SSL-SECURE,或只需单击此页面右下方的聊天链接。 您还可以在我们的网站上找到许多常见支持问题的答案 知识库。 感谢您访问SSL.com!

Twitter
Facebook
LinkedIn
Reddit
电子邮箱

保持信息灵通和安全

SSL.com 是网络安全领域的全球领导者, PKI 和数字证书。注册以接收最新的行业新闻、提示和产品公告 SSL.com.

我们希望收到您的反馈

参加我们的调查,让我们知道您对最近购买的想法。