Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.13.3. 配置特定应用程序

不同的应用为 TLS 提供自己的配置机制。本节介绍最常用的服务器应用使用的 TLS相关配置文件,并提供典型配置的示例。
无论您选择使用什么配置,请始终确保您的服务器应用程序强制实施服务器端密码顺序,以便使用的密码套件由您配置的顺序决定。

4.13.3.1. 配置 Apache HTTP 服务器

Apache HTTP 服务器可以使用 OpenSSLNSS 库来满足其 TLS 的需求。根据您选择的 TLS 库,您需要安装 mod_ssl 或 mod_nss 模块(由 eponymous 软件包提供)。例如,要安装提供 OpenSSL mod_ssl 模块的软件包,以 root 用户身份运行以下命令:
~]# yum install mod_ssl
mod_ssl 软件包安装 /etc/httpd/conf.d/ssl.conf 配置文件,该文件可用于修改 Apache HTTP 服务器的 TLS相关设置。同样,mod_nss 软件包会安装 /etc/httpd/conf.d/nss.conf 配置文件。
安装 httpd-manual 软件包以获取 Apache HTTP 服务器的完整文档,包括 TLS 配置。/etc/httpd/conf.d/ssl.conf 配置文件中的指令在 file:///usr/share/httpd/manual/mod/mod_ssl.html /usr/share/httpd/manual/mod_ssl.html 中详细介绍。各种设置示例位于/usr/share/httpd/manual/ssl/ssl_howto.html 中
修改 /etc/httpd/conf.d/ssl.conf 配置文件中的设置时,请确定至少考虑以下三个指令:
SSLProtocol
使用此指令指定您要允许的 TLS (或 SSL)版本。
SSLCipherSuite
使用这个指令指定首选的密码套件或禁用您要禁止的密码套件。
SSLHonorCipherOrder
取消注释并将此指令设置为 on,以确保连接的客户端遵循您指定的密码顺序。
例如:
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite HIGH:!aNULL:!MD5
SSLHonorCipherOrder on
请注意,上面的配置是最少量的,可以通过遵循 第 4.13.1 节 “选择 Algorithms 来启用” 中概述的建议来显著强化。
若要配置和使用 mod_nss 模块,请修改 /etc/httpd/conf.d/nss.conf 配置文件。mod_nss 模块派生自 mod_ssl,因此它与它共享许多功能,尤其是配置文件的结构,以及可用的指令。请注意,mod_nss 指令具有前缀 NSS 而不是 SSL。有关 mod_nss 的信息,请参阅 https://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html,包括不适用于 mod_nss 的 mod_ssl 配置指令列表。