Centos Web Panel SSL Hatası

Centos Web Panel SSL sertifikası hatası alıyorsanız çözüm için aşağıdakileri sırasıyla yapınız.

Öncelikli olarak aşağıdaki komut ile host ismini öğreniyoruz.
hostname server.bozdemir.com (Örnek)
cat /etc/redhat-release (CentOS Linux release 7.6.1810 (Core) Sistemi)

yum install epel-release (sistemde yüklü bilgisi alabilirsiniz)
yum update (sistemi güncelliyoruz)
yum install certbot (Yüklüyoruz)
yum info mod_ssl openssl (kurulu olup olmadığını kontrol ediyoruz)

letsencrypt.conf dosyasına aşağıdaki gibi açıp içini düzenliyoruz.

nano /usr/local/apache/conf.d/letsencrypt.conf

Alias /.well-known/acme-challenge/ “/usr/local/apache/autossl_tmp/.well-known/acme-challenge/”
<Directory “/usr/local/apache/autossl_tmp/”>
AllowOverride None
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
Require method GET POST OPTIONS
</Directory>

certbot certonly –agree-tos –email a h m e t @ bozdemir.com –webroot -w /usr/local/apache/autossl_tmp/ -d server.bozdemir.com

cp /usr/local/apache/conf.d/ssl.conf /usr/local/apache/conf.d/bak.ssl.conf.orig

nano /usr/local/apache/conf.d/ssl.conf

<IfModule !ssl_module>
LoadModule ssl_module modules/mod_ssl.so
</IfModule>
Listen 443
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLHonorCipherOrder On
Header always set Strict-Transport-Security “max-age=63072000; includeSubDomains; preload”
Header always set X-Frame-Options DENY
Header always set X-Content-Type-Options nosniff
# Requires Apache >= 2.4
SSLCompression off

# OCSP Stapling, only in httpd 2.3.3 and later
SSLUseStapling on
SSLStaplingCache “shmcb:logs/stapling-cache(150000)”
# Requires Apache >= 2.4.11
SSLSessionTickets Off

SSLStaplingResponderTimeout 5
SSLStaplingReturnResponderErrors off
SSLStaplingCache shmcb:/var/run/ocsp(128000)

Aşağıdaki komut ile mod_ssl ve shmcb modülleri açıyoruz.

nano /usr/local/apache/conf/httpd.conf

LoadModule ssl_module modules/mod_ssl.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

hostname-ssl.conf dosyasını açıyoruz ve aşağıdak kodu ekliyoruz.

nano /usr/local/apache/conf.d/hostname-ssl.conf

<VirtualHost *:443>
ServerName server.bozdemir.com
ServerAdmin a h m e t@bozdemir.com
DocumentRoot /usr/local/apache/htdocs/

SSLEngine on
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLCertificateFile /etc/letsencrypt/live/server.bozdemir.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/server.bozdemir.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/server.bozdemir.com/fullchain.pem
SetEnvIf User-Agent “.*MSIE.*” nokeepalive ssl-unclean-shutdown

<IfModule mod_suexec.c>
SuexecUserGroup nobody nobody
</IfModule>

<IfModule mod_suphp.c>
suPHP_UserGroup nobody nobody
suPHP_ConfigPath /home/nobody
</IfModule>

<Directory “/usr/local/apache/htdocs/”>
AllowOverride All
</Directory>

</VirtualHost>

cwpsrv.conf dosyasını açıyoruz.

nano /usr/local/cwpsrv/conf/cwpsrv.conf

Aşağıdaki satırları bulun :
ssl_certificate /etc/pki/tls/certs/hostname.crt;
ssl_certificate_key /etc/pki/tls/private/hostname.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;

Yukarıdaki Satırların başına # ekleyin ve aşağıdaki satırları ilave edin

ssl_certificate /etc/letsencrypt/live/server.bozdemir.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server.bozdemir.com/privkey.pem;
ssl_protocols TLSv1.2;
#Apache İçin
ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
#NGINX İçin
#ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;

users.conf dosyasını editliyoruz.

nano /usr/local/cwpsrv/conf.d/users.conf

Aşağıdakı Satırları bulun:
ssl_certificate /etc/pki/tls/certs/hostname.crt;
ssl_certificate_key /etc/pki/tls/private/hostname.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;

Aşağıdakileri Yapıştırın:
ssl_certificate /etc/letsencrypt/live/server.bozdemir.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server.bozdemir.com/privkey.pem;
ssl_protocols TLSv1.2;
#Apache İçin
ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
#NGINX İçin
#ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;

webmail.conf dosyasını editliyoruz.

nano /usr/local/cwpsrv/conf.d/webmail.conf

Aşağıdakı Satırları bulun:
ssl_certificate /etc/pki/tls/certs/hostname.crt;
ssl_certificate_key /etc/pki/tls/private/hostname.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;

Aşağıdakileri Yapıştırın:
ssl_certificate /etc/letsencrypt/live/server.bozdemir.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server.bozdemir.com/privkey.pem;
ssl_protocols TLSv1.2;
#Apache İçin
ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
#NGINX İçin
#ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;

Ayar işlemlerimiz tamamlandı. Artık servisleri yeniden başlatıyoruz.

/usr/local/cwpsrv/bin/cwpsrv -t
systemctl restart cwpsrv
systemctl restart httpd
systemctl status cwpsrv
systemctl status httpd

CWP Admin Panel Linkleri (by hostname)
CWP Admin Panel Link: http://server.bozdemir.com:2030
CWP Admin Panel Link: http://server.bozdemir.com:2086
CWP Admin Panel SSL Link: https://server.bozdemir.com:2031
CWP Admin Panel SSL Link: https://server.bozdemir.com:2087

CWP User Panel Linkleri (by hostname)
CWP User Panel Link: http://server.bozdemir.com:2082
CWP User Panel SSL Link: https://server.bozdemir.com:2083

Not : Başlatma sırasında emerg hatası alırsanız.
Starting cwpsrv: cwpsrv: [emerg] SL_CTX_use_PrivateKey_file(“/etc/pki/tls/private/hostname.key”) failed (SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch)

Hostname için SSL oluşturmalısınız.

/usr/local/cwpsrv/htdocs/resources/scripts/generate_hostname_ssl

cwpsrv: [warn] he “ssl” directive is deprecated, use the “listen … ssl” directive instead …i.conf:8
/usr/local/cwpsrv/conf.d/api.conf Uyarı hatası alırsanızda dikkate almaya bilirsiniz.
ssl on; satırından kaynaklıdır.

Cpanel’e SSL Sertifika Yükleme

CPanel Kontrol Panele giriş yapınız.

1. Security menüsü altındaki SSL/TLS Manager sekmesine tıklayınız.

2. Private Keys (KEY) , Certificate Signing Requests (CSR), Certificates (CRT)
oluşan 3 başlık göreceksiniz.
buradan

1. sırada olan Private Keys (KEY) hemen altında yer alan Generate, view, upload, or delete your private keys. tıklayın
En allta Generate a New Key yer alan Host bölümüne gelerek Host : www.alanadınız.com yazıp Generate Basınız.

Not : SSL bölgesi “www.alanadınız.com” şeklinde olması için www yazmayı unutmayınız. sonra tekrar önceki sayfaya dönünüz.

3. Bu sefer 2. Seçenek ile Certificate Signing Requests (CSR) altında yer alan

Generate, view, or delete SSL certificate signing requests. tıklayın.

Açılan sayfada Generate a New Certificate Signing Request Host : www.alanadınız.com

altında yer alan ülke, bölge, şehir, Firma vb alanları doldurunuz ve Generate basınız.
Oluşan CSR Yi satın almak istediğiniz SSL sertifika merkezine doğrulatın ve satın alma işlemini tamamlayınız.

Not : Doğrulama İşlemi Yapmadan SSL satın almayınız. Hatalı bir Sertifika kodu üretilerek alınmiş Sertifika iadesi yoktur.

4. Oluşan CSR ile satın aldığınız CRT metnini Certificates (CRT) altındaki yazıya
Generate, view, upload, or delete SSL certificates. tıklayınız.

Gelen sayfada Paste the CRT below: altında yer alan kutuya CRT kodunuzu yapiştırıp Generate tuşuna basınız.

5. SSL/TLS Manager de en altta yer alan SSL Installer bölümüne giriniz.
www.alanadınız.com seçiniz ve en allta CA sekmesinede SSL’i Satın aldığınız yerden gelen CA kodunu yapiştırınız ve Install Certificate tuşuna basınız.

tüm işlemler tamamlanmıştır. artık sertifikanızı https://www.alanadınız.com şeklinde bakarak kontrol edebilirsiniz.