
如何在Apache服务器上配置Let's Encrypt证书?
- 来源:本站
- 编辑: 超级管理员
- 时间:2025-06-21 14:13:35
- 阅读0次
在 Apache 服务器上配置 Let's Encrypt 证书需要确保证书路径正确、SSL 模块启用,并设置 HTTP 到 HTTPS 的重定向。以下是详细配置步骤:
一、准备工作
确认证书已成功申请
Let's Encrypt 证书文件默认存放在:
plaintext
/etc/letsencrypt/live/你的域名/fullchain.pem # 证书链(含网站证书和中间证书)
/etc/letsencrypt/live/你的域名/privkey.pem # 私钥
/etc/letsencrypt/live/你的域名/cert.pem # 网站证书
/etc/letsencrypt/live/你的域名/chain.pem # 中间证书
启用必要的 Apache 模块
bash
sudo httpd -M # 查看已启用的模块
sudo dnf install -y mod_ssl mod_http2 # 安装SSL和HTTP/2模块
sudo systemctl restart httpd # 重启Apache
二、配置 Apache 支持 HTTPS
1. 创建或编辑虚拟主机配置文件
bash
sudo nano /etc/httpd/conf.d/你的域名.conf
2. 配置 HTTPS 虚拟主机
添加以下内容(替换你的域名为实际域名):
apache
<VirtualHost *:443>
ServerName 你的域名
ServerAlias www.你的域名
DocumentRoot "/var/www/html" # 根据实际情况修改
# 证书配置
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/你的域名/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/你的域名/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/你的域名/chain.pem
# SSL/TLS优化配置(可选但推荐)
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite HIGH:!aNULL:!MD5
SSLHonorCipherOrder on
# HTTP/2支持(需mod_http2模块)
Protocols h2 http/1.1
# HSTS头部(强制HTTPS,生产环境建议启用)
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
# 其他配置(如日志、PHP解析等)
ErrorLog "/var/log/httpd/你的域名_error_log"
CustomLog "/var/log/httpd/你的域名_access_log" combined
</VirtualHost>
3. 配置 HTTP 到 HTTPS 的重定向
在同一文件中添加以下内容:
apache
<VirtualHost *:80>
ServerName 你的域名
ServerAlias www.你的域名
Redirect permanent / https://你的域名/
</VirtualHost>
三、配置验证与重启 Apache
检查配置语法
bash
sudo httpd -t
# 若输出 "Syntax OK",则配置正确
重启 Apache 服务
bash
sudo systemctl restart httpd
四、验证 HTTPS 配置
浏览器访问测试
打开 https://你的域名,检查:
地址栏是否显示安全锁标志(Chrome/Edge)或 “安全” 标签(Firefox)。
无混合内容警告(可通过开发者工具 → 控制台查看)。
SSL Labs 测试
访问 SSL Server Test,输入域名检测:
评级应为 A- 或更高。
无协议漏洞(如 POODLE、BEAST 等)。
五、优化配置建议
1. OCSP Stapling(提升连接速度)
在 HTTPS 虚拟主机中添加:
apache
SSLUseStapling on
SSLStaplingCache "shmcb:/var/run/ocsp(128000)"
2. 禁用 TLS 1.0/1.1(可选)
仅保留 SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 以提升安全性,但需确保客户端兼容性。
3. 启用 HTTP/2(已在配置中包含)
确保 mod_http2 模块已启用,通过 Protocols h2 http/1.1 支持 HTTP/2。
六、常见问题排查
1. 浏览器仍显示 “不安全”
原因:
证书路径错误或权限不足。
存在混合内容(如 HTTPS 页面加载 HTTP 资源)。
解决:
检查证书文件路径和权限(确保 Apache 用户有权读取)。
使用浏览器开发者工具 → 网络面板,排查 HTTP 资源并替换为 HTTPS。
2. Apache 无法启动 / 重启
原因:
配置语法错误。
端口冲突(如 443 端口被其他程序占用)。
解决:
检查 httpd -t 输出的错误信息。
使用 ss -tulpn | grep :443 检查端口占用情况。
通过以上配置,Apache 服务器将安全地使用 Let's Encrypt 证书提供 HTTPS 服务,并具备良好的性能和安全性。
- 如何在Apache服务器上配置Let's ···
2025-06-21
- 如何配置Nginx服务器以使用Let's···
2025-06-21
- 如何验证Let's Encrypt证书是否已···
2025-06-21
- 如何查看CentOS 9系统中文件的所···
2025-06-20
- 如何在CentOS 9中设置文件系统的···
2025-06-20
- centos9系统如何挂载出剩余硬盘?···
2025-06-20
- 面向未来的高可用境外服务器架构···
2024-08-26
- 跨境电商成功案例之优秀外国服务···
2024-08-22
- 从成本效益角度分析境外服务器的···
2024-08-17
- 如何规避使用外国服务器的风险问···
2024-08-16
- 搭建安全稳定的境外网站:首选外···
2024-08-19
- 针对中小企业的境外服务器配置指···
2024-08-22