在Apache 2.4中禁用TLS 1.0

时间:2017-04-16 13:05:07

标签: apache tls1.0

我是一位非技术但能够阅读的手册网站所有者。我在Debian 9.0服务器上运行Apache 2.4.10。我想禁用TLS 1.0。我看过Apache documentation for the SSLProtocol directive

在我的虚拟主机文件中,我使用了以下指令:

SSLProtocol all -TLSv1 -SSLv3

即使在重新加载然后重新启动Apache之后,它也无法正常工作。然后我也将相同的指令添加到ssl.conf文件中,只是为了确定,即使在重新加载和重新启动之后仍然没有运气。我也尝试了以下指令:

SSLProtocol +TLSv1.1 +TLSv1.2

仍然没有运气。我做了以下搜索,看看我是否在我的配置文件中的其他地方使用了SSLProtocol指令,但同样没有运气:

grep -R 'SSLProtocol' .

我还检查了网站的.htaccess文件,以确保我没有覆盖任何内容(虽然我不知道你可以在.htaccess文件中更改此设置)。有任何想法吗?谢谢你的帮助!

3 个答案:

答案 0 :(得分:2)

这里有一个答案:

How to disable TLS 1.1 & 1.2 in Apache?

基本上,您必须在 ssl.conf 文件中禁用此协议。在vhosts.conf或等效文件中执行此操作将无法正常工作(尽管在此处设置此配置是正确的),因为OpenSSL中存在一个错误,如其中一个答案所述。

答案 1 :(得分:1)

从今天(2018年11月15日)开始,有一个bug关于无法在Apache 2.4中禁用tls1.0的信息。因此,当您的修改无缘无故失效时,请不要打扰您。希望我们能尽快将其修补。

也要出票

  

这似乎已在 2.4.18 + 2.4.23 之间发生了变化,因为将SSLProtocol的使用设置为受尊敬。

答案 2 :(得分:0)

在很多情况下,对于此“错误”,事实表明,如果在服务器上安装了letencrypt,则它的配置文件会设置取代ssl.conf或vhosts设置的协议:

  

/etc/letsencrypt/options-ssl-apache.conf

Bug 60739 - SSLProtocol settings seem to have no effect