phpMyAdmin 与 cloudflare ssl 证书

phpMyAdmin 与 cloudflare ssl 证书

我有 3 个 wordpress 网站、1 个 moodle 网站和 1 个 owncloud 网站,它们在我的 vps 中都具有相同的 apache 配置,并且它们都运行良好

但我无法让 phpMyAdmin 与 cloudflare 的原始证书一起工作。当我转到 mysql.domain.tld 时,它返回:

ERR_SSL_VERSION_OR_CIPHER_MISMATCH

但如果我使用 Let's Encrypt,它就可以正常工作

我对我的所有网站都使用以下 apache 配置文件:

<VirtualHost *:80>
    ServerName domain.tld
    DocumentRoot "/var/www/domain.tld/"
    <Directory "/var/www/domain.tld/">
        AllowOverride All
    </Directory>
    RewriteEngine on
    RewriteCond %{SERVER_NAME} =domain.tld
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
    ErrorLog /var/log/apache2/domain.tld/error.log
</VirtualHost>

<VirtualHost *:443>
    ServerName domain.tld
    DocumentRoot "/var/www/domain.tld/"
    <Directory "/var/www/domain.tld/">
        AllowOverride All
    </Directory>
    SSLCertificateFile /etc/apache2/certificates/domain.tld.crt
    SSLCertificateKeyFile /etc/apache2/certificates/domain.tld.key
    ErrorLog /var/log/apache2/domain.tld/error.log
</VirtualHost>

我做错了什么?谢谢

答案1

检查您是否可以读取证书:

openssl x509 -noout -text -in /etc/apache2/certificates/domain.tld.crt

检查私钥:

openssl rsa -in /etc/apache2/certificates/domain.tld.key -check

验证私钥和证书是否匹配:

openssl rsa -noout -modulus -in /etc/apache2/certificates/domain.tld.key | openssl sha256
openssl x509 -noout -modulus -in /etc/apache2/certificates/domain.tld.crt | openssl sha256

确保 /etc/apache2/certificates/domain.tld.crt 按以下顺序包含:

  • domain.tld 的证书
  • CloudFlare 的所有中级证书

相关内容