You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法为网站及邮件服务器正常签发Let's Encrypt SSL证书求助

问题解决方案

一、SSL证书显示签发成功但未生效的排查与修复

1. 检查Cloudflare SSL模式配置

Cloudflare的SSL模式直接影响服务器证书是否生效:

  • 登录Cloudflare控制台,进入对应域名的「SSL/TLS」→「Overview」页面
  • 将模式从「Flexible」改为「Full」或「Full (strict)」(「Full (strict)」要求服务器必须有有效证书,适合确认证书安装正确后使用)

2. 验证服务器实际证书状态

SSH登录服务器后,执行以下命令确认证书是否真的安装到位:

  • 检查网站证书:openssl s_client -connect domain.com:443,查看返回内容中的「Issuer」字段,确认是否为「Let's Encrypt Authority X3」或类似Let's Encrypt签发机构
  • 检查邮件服务器证书:openssl s_client -connect mail.domain.com:465(SMTP SSL端口)或openssl s_client -connect mail.domain.com:993(IMAP SSL端口),同样确认签发机构

3. 重启相关服务加载新证书

证书安装后需重启服务才能生效,执行以下命令:

  • 重启OpenLiteSpeed(网站服务):systemctl restart lsws
  • 重启Postfix(邮件发送服务):systemctl restart postfix
  • 重启Dovecot(邮件接收服务):systemctl restart dovecot

4. 确认服务配置文件的证书路径

网站服务(OpenLiteSpeed)

进入CyberPanel的「Website → List Websites」,点击对应域名的「Manage」→「SSL」,确认已选中Let's Encrypt证书,同时检查配置文件(路径:/usr/local/lsws/conf/vhosts/[domain.com]/vhconf.conf)中的以下字段是否指向正确的证书文件:

sslCertificate                   /etc/letsencrypt/live/domain.com/fullchain.pem
sslCertificateKey               /etc/letsencrypt/live/domain.com/privkey.pem

邮件服务(Postfix + Dovecot)

  • 编辑Postfix配置文件/etc/postfix/main.cf,确认以下字段:
    smtpd_tls_cert_file = /etc/letsencrypt/live/mail.domain.com/fullchain.pem
    smtpd_tls_key_file = /etc/letsencrypt/live/mail.domain.com/privkey.pem
    
  • 编辑Dovecot配置文件/etc/dovecot/conf.d/10-ssl.conf,确认以下字段(注意路径前的<符号):
    ssl_cert = </etc/letsencrypt/live/mail.domain.com/fullchain.pem
    ssl_key = </etc/letsencrypt/live/mail.domain.com/privkey.pem
    

修改完成后重新启动对应服务。

5. 处理Let's Encrypt签发次数限制

当前已触发次数限制,可采取以下措施:

  • 等待72小时后自动重置限制
  • 使用Let's Encrypt staging环境测试签发(无次数限制),命令:certbot certonly --staging -d mail.domain.com,测试通过后再切换到正式环境签发

二、WP Mail SMTP提示OpenSSL配置错误的修复

Snappymail正常发信说明服务器基础邮件服务无问题,问题出在PHP或WP插件配置:

1. 确认PHP OpenSSL扩展状态

  • 查看网站使用的PHP版本(CyberPanel「Website → List Websites」→对应域名的「PHP Version」)
  • SSH执行命令:php -m | grep openssl,如果无输出说明扩展未启用
  • 启用方法:进入CyberPanel「PHP → PHP Manager」,找到对应PHP版本,勾选「openssl」扩展并保存,或编辑对应PHP版本的php.ini文件(如/usr/local/lsws/lsphp74/etc/php.ini),取消;extension=openssl前的注释,重启OpenLiteSpeed服务

2. 修正WP Mail SMTP配置

  • 选择「本地邮件服务器」模式:在WP后台的WP Mail SMTP设置中,选择「Sendmail」或「Postfix」选项,而非第三方SMTP转发
  • 若使用SMTP模式,设置:
    • SMTP主机:localhost或mail.domain.com
    • 端口:587(使用STARTTLS加密)
    • 加密方式:TLS
    • 发件人邮箱:必须是服务器上已创建的邮箱(如admin@domain.com)

3. 升级OpenSSL版本解决兼容性问题

你的服务器使用的OpenSSL 1.0.2k版本较老,执行以下命令更新到CentOS7支持的最新安全补丁版本:

yum update openssl -y

更新完成后重启所有相关服务(Web、邮件、PHP)


三、额外排查点

1. 防火墙端口开放

确认服务器防火墙(firewalld)和Cloudflare防火墙已开放以下端口:

firewall-cmd --add-port=443/tcp --permanent
firewall-cmd --add-port=465/tcp --permanent
firewall-cmd --add-port=587/tcp --permanent
firewall-cmd --add-port=993/tcp --permanent
firewall-cmd --reload

2. SELinux临时排查

CentOS7的SELinux可能阻止服务访问证书或端口,临时关闭测试:

setenforce 0

若问题解决,需配置SELinux规则允许对应操作(如允许Postfix访问Let's Encrypt证书目录),避免永久关闭SELinux。

内容的提问来源于stack exchange,提问作者Julien Cirhuza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 14:05:31