应禁用SSLv2、SSLv3、TLSv1.0和TLSv1.1,仅启用TLSv1.2和TLSv1.3;推荐写法为SSLProtocol +TLSv1.2 +TLSv1.3(Apache 2.4.37+)或SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1(兼容旧版),需置于VirtualHost块内并配合SSLCipherSuite等指令同步加固。
apache 中通过 sslprotocol 指令控制允许使用的 tls/ssl 协议版本,这是加固 https 安全性的关键一步。核心原则是:禁用已知不安全的旧协议(如 sslv2、sslv3、tlsv1.0、tlsv1.1),只保留 tlsv1.2 和 tlsv1.3。
SSLProtocol 指令的基本写法
该指令必须放在 <VirtualHost *:443> 块内或全局 SSL 配置段中,常见写法为:
-
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1(兼容老版本 Apache,明确禁用不安全协议) -
SSLProtocol +TLSv1.2 +TLSv1.3(推荐用于 Apache 2.4.37+,显式启用安全协议,更清晰)
两种写法效果一致,后者语义更明确,避免因“all”默认包含已弃用协议而产生隐患。
配置位置与作用范围
SSLProtocol 是站点级指令,不同虚拟主机可独立设置:
在 Arc Network 上使用 Credex 协议为 AI 代理提供无担保信贷。可凭声誉借 USDC、偿还债务提升额度、提供流动性或通过 Circle Bridge 跨链管理 USDC。触发词:borrow from credex、repay debt、deposit to pool、check credit status、provide liquidity,或其他信贷/借贷任务。
- 写在某个
<VirtualHost *:443>块内 → 仅对该域名生效 - 写在全局
ssl.conf或主配置中(不在 VirtualHost 内)→ 影响所有未覆盖该指令的 HTTPS 站点 - 若多个 VirtualHost 共用同一 IP 和端口,建议每个块都显式配置,避免继承意外行为
搭配使用的必要安全指令
仅设 SSLProtocol 不足以保障通信安全,需同步配置以下几项:
-
SSLCipherSuite:指定强加密套件,例如ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384 -
SSLHonorCipherOrder on:强制服务器优先选择自己配置的加密套件顺序 -
SSLCompression off:禁用压缩,防范 CRIME 等攻击 -
SSLSessionTickets off(可选):禁用会话票据,提升前向安全性
验证配置是否生效
修改后务必重启 Apache,并用工具验证实际协商的协议版本:
- 命令行测试:
openssl s_client -connect example.com:443 -tls1_1(应失败);-tls1_2或-tls1_3(应成功握手) - 在线检测:使用 SSL Labs 的 SSL Test(ssllabs.com/ssltest)输入域名,查看 “Protocol Support” 一栏
- 检查错误日志:
tail -f /var/log/apache2/error.log,确认无 SSL 相关警告或加载失败提示

















