Apache açılırken "AH02572: Failed to configure at least one certificate and key for ornek.com:443" hatası verirse HTTPS sanal sunucusu için geçerli bir sertifika-anahtar çifti yüklenememiştir. Sunucu genellikle hiç başlamaz ya da ilgili siteyi devre dışı bırakır.
Olası nedenler
SSLCertificateFileveyaSSLCertificateKeyFileyolu yanlış ya da dosya eksik- Özel anahtar ile sertifika uyuşmuyor
- Dosya okuma izinleri veya SELinux bağlamı yetersiz
- Anahtar parola korumalı ve parola verilmemiş
- Dosya PEM biçiminde değil
Teşhis adımları
- Yapılandırmayı sınayın ve hata satırına bakın:
apachectl configtest
tail -n 50 /var/log/apache2/error.log
- Sertifika ile anahtarın eşleştiğini doğrulayın; iki çıktı aynı olmalıdır:
openssl x509 -noout -modulus -in ornek.crt | openssl md5
openssl rsa -noout -modulus -in ornek.key | openssl md5
- Dosyaların PEM olduğunu ve Apache'nin okuyabildiğini kontrol edin:
head -1 ornek.crt
ls -l /etc/ssl/ornek.*
Çözüm
Yolları düzeltin, eşleşmeyen anahtar varsa doğru olanı gösterin; anahtar kayıpsa yeni CSR üretip sertifikayı yeniden düzenletmek gerekir (CSR oluşturucu). Ara sertifikaları da ekleyin:
SSLCertificateFile /etc/ssl/ornek.crt
SSLCertificateKeyFile /etc/ssl/ornek.key
SSLCertificateChainFile /etc/ssl/ara.crt
Son olarak systemctl restart apache2 (veya httpd) ile başlatın ve SSL Checker ile doğrulayın. Yapılandırma değişikliğinden önce yedek almak iyi bir alışkanlıktır.
Sık görülen ek durumlar
Bazen hata, birden fazla sanal sunucu aynı portu paylaşırken yalnızca birinin yapılandırmasının bozuk olmasından kaynaklanır. Bu durumda Apache'nin tamamı değil, yalnızca o site etkilenebilir.
- Parola korumalı anahtarlarda servis otomatik başlarken parola sorulamaz; parolasız bir anahtar kullanmak veya
SSLPassPhraseDialogayarını incelemek gerekir. - Let's Encrypt gibi araçlar dosyaları
/etc/letsencrypt/live/altında sembolik bağlantılarla tutar; yolun doğruluğunu kontrol edin. - SELinux açık sistemlerde dosya bağlamını
restoreconile düzeltmek gerekebilir.