Bir web sitesinin tarayıcıda kilit işaretiyle açılması artık lüks değil, asgari bir gereksinim. Tarayıcılar HTTPS olmayan siteleri "Güvenli Değil" diye işaretliyor, arama motorları şifreli bağlantıyı sıralama sinyali olarak değerlendiriyor ve ödeme, form, giriş gibi hassas işlemlerin şifresiz taşınması hem yasal hem teknik açıdan kabul edilemez durumda. İyi haber şu ki cPanel kullanan bir barındırma hesabında SSL'i devreye almak, çoğu senaryoda birkaç dakikalık bir işten ibaret. Kötü haber ise, işler ters gittiğinde ("alan adı doğrulanamadı", "AAAA kaydı hatası", "sertifika süresi doldu") çoğu kullanıcının nereye bakacağını bilmemesi.
Bu rehberde cPanel'in kalbindeki iki aracı adım adım işleyeceğiz: hesabınızdaki tüm alan adlarına ücretsiz sertifikayı otomatik dağıtan ve süresi dolmadan yenileyen AutoSSL, ve harici bir sağlayıcıdan aldığınız (ya da elle ürettiğiniz) sertifikayı yüklemenizi sağlayan SSL/TLS yönetim ekranı. Ardından uygulamada en sık karşılaşılan doğrulama hatalarını gerçek örneklerle çözeceğiz. Amacım, bu yazıyı bitirdiğinizde hem "tek tıkla otomatik" yolu hem de "elle sertifika yükleme" yolunu gözünüz kapalı yapabilmeniz ve bir sorunla karşılaştığınızda panik yapmadan doğru menüye gidebilmeniz.
SSL Neden Önemli ve cPanel Bu İşi Nasıl Kolaylaştırır#
SSL/TLS, tarayıcı ile sunucu arasındaki trafiği şifreleyerek araya giren birinin verileri okumasını veya değiştirmesini engeller. Şifrelemenin yanında bir de kimlik doğrulama boyutu vardır: sertifika, ziyaretçinin gerçekten sizin sunucunuza bağlandığını, sahte bir kopyaya değil, kriptografik olarak kanıtlar. SSL'in ne olduğunu ve türlerini derinlemesine merak ediyorsanız SSL sertifikası nedir yazımız iyi bir başlangıç noktası.
cPanel, bu karmaşık altyapıyı iki ana yaklaşımla sadeleştirir. Birincisi, sunucu yöneticisinin (WHM tarafında) açtığı bir sağlayıcı üzerinden otomatik ve ücretsiz sertifika üreten AutoSSL. İkincisi, kendi satın aldığınız ticari sertifikayı (OV, EV veya wildcard gibi) elle yüklediğiniz manuel yol. Çoğu paylaşımlı hosting ve WordPress kullanıcısı için AutoSSL yeterlidir; kurumsal doğrulama, yeşil kuruluş adı veya belirli bir CA zinciri gerektiğinde manuel yükleme devreye girer. İkisinin nerede kullanılacağını netleştirelim.
| Kriter | AutoSSL (Otomatik) | Manuel Yükleme |
|---|---|---|
| Maliyet | Ücretsiz (Let's Encrypt / Sectigo DV) | Sertifika ücretine bağlı |
| Doğrulama düzeyi | Yalnızca DV (Domain Validation) | DV, OV, EV, Wildcard |
| Yenileme | Otomatik, süresi dolmadan | Elle (veya sağlayıcı aracıyla) |
| Kurulum eforu | Neredeyse sıfır | CSR, anahtar, CA bundle gerekir |
| Uygun senaryo | Blog, kurumsal tanıtım, WordPress | E-ticaret OV/EV, wildcard, özel CA |
Kısacası: rutin bir site için AutoSSL'i açıp unutun; özel bir sertifikanız varsa SSL/TLS ekranından yükleyin. Şimdi ilkinden başlayalım.
AutoSSL Nasıl Çalışır ve Otomatik Yeniler#
AutoSSL, cPanel'in arka planda çalışan bir zamanlanmış görevidir. Belirli aralıklarla hesabınızdaki her alan adına ve alt alan adına bakar, hâlihazırda geçerli bir sertifika var mı diye kontrol eder, yoksa veya süresi yaklaşmışsa yeni bir sertifika ister. Sertifika sağlayıcısı (Let's Encrypt ya da cPanel'in kendi Sectigo entegrasyonu), alan adının gerçekten bu sunucuya ait olduğunu HTTP tabanlı doğrulama ile teyit eder: sunucuya geçici bir doğrulama dosyası koyar ve http://alanadi.com/.well-known/... yolundan bu dosyaya erişebiliyorsa sertifikayı üretir.
Kullanıcı olarak sizin yapmanız gereken çoğu zaman hiçbir şey yoktur, çünkü sunucu yöneticisi AutoSSL'i sağlayıcı düzeyinde açar. Yine de durumu cPanel içinden görebilir ve elle tetikleyebilirsiniz. SSL/TLS Status ekranını açtığınızda hesabınızdaki tüm alan adlarını, her birinin sertifika durumunu ve son kullanma tarihini bir tabloda görürsünüz. Yeşil kilit "kapsandı", turuncu/kırmızı işaret ise "AutoSSL bu alan adını dâhil edemedi" demektir.
Bir alan adını hemen kapsatmak isterseniz, ilgili satırı seçip Run AutoSSL düğmesine basmanız yeterli. cPanel doğrulamayı başlatır ve genellikle birkaç dakika içinde sonucu tabloya işler. Terminale erişiminiz varsa (VDS/sunucu tarafında) aynı işlemi komut satırından da tetikleyebilirsiniz:
# WHM/root tarafında tek bir cPanel kullanıcısı için AutoSSL çalıştır
/usr/local/cpanel/bin/autossl_check --user=kullaniciadi
# Tüm hesaplar için toplu kontrol
/usr/local/cpanel/bin/autossl_check --all
Yenileme tamamen otomatiktir ve burası AutoSSL'in en büyük avantajıdır. Ücretsiz DV sertifikaları genelde 90 gün geçerlidir; AutoSSL süre dolmadan (tipik olarak 25-30 gün kala) sessizce yeniler. Yani "sertifikam bir sabah aniden süresi dolmuş" derdi, doğrulama sağlıklı çalıştığı sürece ortadan kalkar. Yenileme başarısız olursa (örneğin alan adı artık bu sunucuyu göstermiyorsa) cPanel size e-posta bildirimi gönderir; bu uyarıları görmezden gelmeyin, çünkü genelde altında bir DNS ya da yönlendirme sorunu yatar.
Let's Encrypt tabanlı ücretsiz SSL'in mantığını ve sınırlarını daha ayrıntılı görmek isterseniz Let's Encrypt ücretsiz SSL yazımızda konuyu ayrıca ele aldık.
SSL/TLS Ekranını Tanımak#
Manuel işlemlerin tamamı cPanel ana ekranındaki Güvenlik bölümünün altında yer alan SSL/TLS kutucuğunda toplanır. Buraya girdiğinizde dört alt menü görürsünüz ve hangisinin ne işe yaradığını bilmek zaman kazandırır:
- Private Keys (KEY): Sitenin özel anahtarlarını yönetir. Sertifikanın matematiksel eşidir; asla kimseyle paylaşılmaz.
- Certificate Signing Requests (CSR): Bir sertifika satın alırken CA'ya göndereceğiniz imza talebini üretir.
- Certificates (CRT): CA'nın size verdiği sertifikayı sakladığınız yer.
- Install and Manage SSL for your site (HTTPS): Anahtar + sertifika + CA bundle üçlüsünü bir alan adına bağladığınız kurulum ekranı.
Manuel bir sertifikayı yüklemenin mantıksal sırası her zaman aynıdır: önce bir özel anahtar olmalı, bu anahtarla bir CSR üretilir, CSR ile CA'dan bir sertifika alınır, en sonunda anahtar + sertifika + ara sertifikalar (CA bundle) birlikte alan adına kurulur. Yeni bir ticari sertifika alıyorsanız CSR'ı buradan üretirsiniz; sertifikayı ve anahtarı başka bir sunucudan taşıyorsanız CSR adımını atlayıp doğrudan kurulum ekranını kullanırsınız. Şimdi tam da bu üçlüyü elle yüklemeyi görelim.
Kendi Sertifikanızı Manuel Yükleme#
Diyelim ki bir sağlayıcıdan wildcard SSL satın aldınız veya başka bir sunucudaki sertifikayı bu hesaba taşıyorsunuz. Elinizde üç parça olacak: özel anahtar (private key), sertifika (certificate) ve ara sertifika zinciri (CA bundle). Bu parçalar -----BEGIN ...----- ve -----END ...----- satırları arasındaki PEM biçiminde metinlerdir. Yükleme için Install and Manage SSL for your site (HTTPS) ekranına gidin.
Bu ekranda üç büyük metin kutusu görürsünüz. Alan adını üstteki listeden seçtikten sonra kutuları şu sırayla doldurun:
- Certificate (CRT) kutusuna, sağlayıcının size verdiği alan adı sertifikasını yapıştırın.
- Private Key (KEY) kutusuna, sertifikayı üreten CSR ile eşleşen özel anahtarı yapıştırın. Eğer CSR'ı cPanel'de ürettiyseniz, cPanel anahtarı zaten tanır ve otomatik doldurabilir.
- Certificate Authority Bundle (CABUNDLE) kutusuna, sağlayıcının verdiği ara sertifika(ları) yapıştırın. Bu adımı atlarsanız site bazı tarayıcılarda çalışır görünür ama mobil cihazlar ve bazı istemciler "zincir eksik" hatası verir; bu yüzden CA bundle'ı her zaman ekleyin.
PEM parçalarının nasıl göründüğünü hatırlatmak açısından, bir sertifika ve anahtarın baş/son satırları şöyledir:
-----BEGIN CERTIFICATE-----
MIIFazCCA1OgAwIBAgIRAO... (alan adı sertifikanızın gövdesi)
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhki... (özel anahtarınız — gizli tutun)
-----END PRIVATE KEY-----
Parçaların doğru eşleştiğinden emin olmak isterseniz, terminale erişiminiz varsa anahtar ile sertifikanın modulus değerlerini karşılaştırmak en kesin yöntemdir. İkisinin özet çıktısı birebir aynı olmalıdır:
# Sertifikanın modulus özeti
openssl x509 -noout -modulus -in sertifika.crt | openssl md5
# Özel anahtarın modulus özeti — çıktı yukarıdakiyle AYNI olmalı
openssl rsa -noout -modulus -in ozel.key | openssl md5
# Zincirin tarayıcı açısından tamam olup olmadığını kontrol (kurulumdan sonra)
openssl s_client -connect alanadi.com:443 -servername alanadi.com < /dev/null 2>/dev/null \
| openssl x509 -noout -issuer -subject -dates
Kutuları doldurup Install Certificate düğmesine bastığınızda cPanel, üç parçayı Apache/LiteSpeed yapılandırmasına yazar ve alan adını HTTPS üzerinden yayına alır. Başarılı olursa ekranda "The SSL website has been successfully installed" gibi bir onay görürsünüz. Bundan sonra tarayıcıda https://alanadi.com açıp kilit işaretine tıklayarak sertifikanın kim tarafından ve hangi tarihe kadar verildiğini teyit edin.
Sertifikayı taşıyorsanız ve elinizde ayrı dosyalar varsa (.crt, .key, .ca-bundle), içeriklerini bir metin editöründe açıp ilgili kutulara yapıştırmanız yeterlidir; dosya yükleme alanları da vardır ama kopyala-yapıştır çoğu zaman daha az sorun çıkarır. Sunucu yönetimi tarafında bu tür işlemlerde bize devretmek isterseniz sunucu yönetimi hizmetimiz devrede.
Yönlendirme ve Karışık İçerik (Mixed Content) Sorunları#
Sertifikayı kurmak işin yarısıdır; sitenizin her isteği HTTPS'e taşıması ikinci yarısıdır. Sertifika kurulu olsa bile ziyaretçi http:// ile girerse şifresiz bağlanır. Bunu engellemek için tüm HTTP trafiğini HTTPS'e kalıcı olarak yönlendirmelisiniz. Birçok cPanel sürümünde Domains bölümünde "Force HTTPS Redirect" anahtarı vardır; onu açmak en temiz yoldur. Elle yapmak isterseniz .htaccess dosyasının en üstüne şu kuralı ekleyebilirsiniz:
# .htaccess — tüm HTTP isteklerini kalıcı (301) olarak HTTPS'e taşı
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
# www ve www'suz sürümü tek adreste birleştirmek isterseniz (opsiyonel)
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
Yönlendirme çalışsa bile sayfa içinde http:// ile çağrılan görsel, stil veya betik varsa tarayıcı "karışık içerik" (mixed content) uyarısı verir ve kilit işareti sarı/kırık görünür. WordPress kullanıyorsanız bunun en pratik çözümü, veritabanındaki eski http:// bağlantılarını topluca güncellemektir. Yedeğinizi aldıktan sonra tek bir SQL ile eski adresleri düzeltebilirsiniz:
-- Önce mutlaka veritabanı yedeği alın!
UPDATE wp_options SET option_value = REPLACE(option_value, 'http://alanadi.com', 'https://alanadi.com') WHERE option_name IN ('siteurl','home');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://alanadi.com', 'https://alanadi.com');
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://alanadi.com', 'https://alanadi.com');
WordPress tarafında bu işi eklentiyle güvenli yapmak ve sürekli bakımını üstlenmek isteyenler için WordPress bakım hizmetimiz bu tür geçişleri de kapsar. Tema/eklenti kaynaklı kalıntı http bağlantılarını yakalamak için tarayıcı geliştirici konsolundaki "Console" sekmesi en hızlı teşhis aracıdır; hangi kaynağın şifresiz yüklendiğini isim isim gösterir.
Yaygın AutoSSL Hatalarını Giderme#
Otomatik SSL çoğu zaman sorunsuz çalışır, ama çalışmadığında SSL/TLS Status ekranında kırmızı bir uyarı ve genelde şu üç sebepten biri karşınıza çıkar. Sırayla teşhis edelim.
"The domain failed domain control validation" (alan adı doğrulanamadı). Bu, doğrulama dosyasına HTTP üzerinden erişilemediği anlamına gelir. En sık nedeni, alan adının artık bu sunucuyu göstermemesidir: DNS A kaydı başka bir IP'ye bakıyor, alan adı Cloudflare gibi bir proxy arkasında ve doğrulama isteği farklı yere gidiyor ya da bir .htaccess kuralı /.well-known/ yolunu engelliyor olabilir. Önce alan adının gerçekten bu sunucunun IP'sini gösterdiğini doğrulayın:
; Alan adının IP'sini kontrol et — cPanel sunucusunun IP'siyle eşleşmeli
dig +short alanadi.com A
dig +short www.alanadi.com A
; Doğrulama yolunun ulaşılabilir olduğunu manuel test edin
; http://alanadi.com/.well-known/acme-challenge/test -> 200/403/404 dönebilir ama
; en azından SUNUCUYA ulaşmalı (bağlantı zaman aşımı olmamalı)
Alan adı proxy arkasındaysa, doğrulama süresince proxy'yi (turuncu bulutu) geçici olarak kapatın ya da HTTP doğrulamasının geçmesine izin verecek bir "SSL/TLS mode" seçin. .htaccess içindeki bir yönlendirme /.well-known/acme-challenge/ yolunu HTTPS'e ya da başka yere atıyorsa, bu dizini yönlendirmeden muaf tutun:
# .htaccess — ACME doğrulama yolunu yönlendirmelerden hariç tut
RewriteEngine On
RewriteRule ^\.well-known/acme-challenge/ - [L]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
AAAA (IPv6) kaydı uyuşmazlığı. Bu, teşhisi en sinsi hatadır. Alan adınızın hem A (IPv4) hem AAAA (IPv6) kaydı vardır; A kaydı doğru sunucuyu gösterir ama AAAA kaydı ya eski bir IPv6 adresini gösterir ya da sunucunun IPv6'sı yoktur. Doğrulayıcı IPv6'yı tercih ettiği için istek yanlış yere gider ve doğrulama başarısız olur. Çözüm nettir: ya sunucunun gerçek IPv6 adresini gösteren doğru bir AAAA kaydı ekleyin, ya da sunucu IPv6 sunmuyorsa AAAA kaydını tamamen silin.
; Sorunlu senaryo — AAAA yanlış/eski bir hedefi gösteriyor
alanadi.com. IN A 203.0.113.10 ; doğru
alanadi.com. IN AAAA 2001:db8::dead ; YANLIŞ — ya düzelt ya sil
; Çözüm 1: AAAA'yı sil (sunucuda IPv6 yoksa en temiz yol)
; Çözüm 2: Sunucunun gerçek IPv6'sını yaz
alanadi.com. IN AAAA 2001:db8::1234:5678
Yenileme yapılmıyor ama süre doluyor. AutoSSL çalışıyor görünüyor fakat belirli bir alt alan adı kapsanmıyorsa, o alt alan adının DNS'te var olduğundan ve doğru sunucuyu gösterdiğinden emin olun. Ayrıca çok sayıda alt alan adına aynı anda sertifika istiyorsanız Let's Encrypt'in oran sınırlarına (rate limit) takılmış olabilirsiniz; bu durumda birkaç saat bekleyip Run AutoSSL ile tekrar deneyin. Kalıcı olarak takılan bir alan adı için hosting sağlayıcınızın AutoSSL loglarına bakması gerekebilir; bu tür incelemelerde site taşıma veya destek ekibimizle birlikte çözüme gidebilirsiniz.
Son olarak, sertifika kurulu ve doğru görünüyor ama tarayıcı hâlâ hata veriyorsa, önbelleği temizlemeyi ve gizli sekmede test etmeyi unutmayın; eski sertifika tarayıcı ya da CDN önbelleğinde kalmış olabilir.
AutoSSL mi, Ticari Sertifika mı Tercih Etmeli#
Karar aslında sitenizin ne yaptığına bağlıdır. Bir bilgi sitesi, blog, kurumsal tanıtım veya kişisel portföy için AutoSSL'in sunduğu DV sertifikası her açıdan yeterlidir; şifreleme gücü ticari bir sertifikayla aynıdır, tek fark doğrulama düzeyidir. Ödeme alan, kullanıcı hesabı tutan, marka güveninin doğrudan gelire dönüştüğü sitelerde ise OV (kuruluş doğrulaması) veya wildcard gibi seçenekler mantıklı olabilir. Aşağıdaki hızlı karşılaştırma seçimi netleştirir:
| İhtiyaç | Önerilen çözüm |
|---|---|
| Blog / tanıtım / WordPress | AutoSSL (ücretsiz DV) |
| Tek alan + çok sayıda alt alan | AutoSSL veya Wildcard |
| Sınırsız alt alan, tek sertifika | Wildcard SSL (manuel) |
| Kurumsal e-ticaret, güven vurgusu | OV/EV (manuel) |
| Kendi CA'sı olan kurum | Özel sertifika (manuel yükleme) |
Wildcard veya OV/EV sertifikaya ihtiyaç duyuyorsanız SSL çözümlerimize göz atabilir, barındırma tarafında hosting veya WordPress için özel olarak yapılandırılmış WordPress hosting paketlerimizi değerlendirebilirsiniz. Daha yüksek trafik ve kaynak isteyen projeler için VDS sunucu tarafında AutoSSL'i root yetkisiyle çok daha esnek yönetebilirsiniz.
Sıkça Sorulan Sorular#
AutoSSL ile Let's Encrypt sertifikası ücretsiz mi ve ne sıklıkla yenilenir?#
Evet, tamamen ücretsizdir ve hesabınızda otomatik olarak çalışır. AutoSSL, sertifikanın süresi dolmadan (genellikle 25-30 gün kala) arka planda yeni bir sertifika ister ve kurar; bu yüzden manuel olarak yenileme yapmanıza gerek kalmaz. Doğrulama sağlıklı olduğu sürece siteniz hiçbir zaman "süresi dolmuş sertifika" hatası vermez.
cPanel'de sertifikayı kurdum ama site hâlâ güvenli değil diyor, neden?#
Bunun en yaygın iki nedeni vardır. Birincisi, HTTP'den HTTPS'e yönlendirmeyi açmamış olmanızdır; sertifika kuruludur ama ziyaretçi hâlâ şifresiz sürümü görüyordur, bu yüzden "Force HTTPS Redirect" ayarını açın. İkincisi karışık içeriktir; sayfanızda http:// ile çağrılan görsel veya betik varsa tarayıcı bağlantıyı tam güvenli saymaz, bu kaynakları https:// olacak şekilde güncellemeniz gerekir.
CA bundle (ara sertifika) eklemezsem ne olur?#
Site masaüstü tarayıcıların çoğunda çalışır görünebilir çünkü onlar zincirdeki ara sertifikaları önbellekten tamamlayabilir, ancak bu güvenilir bir durum değildir. Mobil cihazlar, bazı API istemcileri ve eski tarayıcılar "sertifika zinciri eksik" hatası verir. Bu yüzden manuel yüklemede CA bundle kutusunu her zaman doldurun; sağlayıcınızın verdiği ara sertifikaları oraya yapıştırmanız yeterlidir.
AAAA kaydı yüzünden AutoSSL hatası alıyorum, tam olarak ne yapmalıyım?#
Alan adınızın IPv6 (AAAA) kaydı ya yanlış bir adresi gösteriyor ya da sunucunuz IPv6 sunmadığı hâlde tanımlı bırakılmıştır. Doğrulayıcı IPv6'yı tercih ettiğinden istek yanlış yere gidip başarısız olur. Sunucunuzda IPv6 yoksa DNS panelinizden AAAA kaydını tamamen silin; IPv6 varsa da AAAA kaydını sunucunun gerçek IPv6 adresini gösterecek şekilde düzeltin.
Kendi wildcard sertifikamı cPanel'e yükleyebilir miyim?#
Evet. SSL/TLS bölümündeki "Install and Manage SSL for your site" ekranına gidip özel anahtarı, wildcard sertifikayı ve CA bundle'ı ilgili kutulara yapıştırıp "Install Certificate" düğmesine basmanız yeterlidir. Wildcard sertifika *.alanadi.com biçiminde tüm alt alan adlarını tek seferde kapsar; kurulumdan sonra her alt alan adı için ayrı sertifika yüklemenize gerek kalmaz.
AutoSSL'i açmama rağmen belirli bir alan adı hâlâ kapsanmıyor, sorun nerede?#
Büyük olasılıkla o alan adı doğrulamayı geçemiyordur. Önce alan adının DNS A kaydının bu cPanel sunucusunun IP'sini gösterdiğini doğrulayın, ardından /.well-known/acme-challenge/ yolunun bir yönlendirme kuralı tarafından engellenmediğinden emin olun. Alan adı Cloudflare gibi bir proxy arkasındaysa doğrulama süresince proxy'yi geçici kapatıp SSL/TLS Status ekranından "Run AutoSSL" ile yeniden deneyin.
Kapanış#
cPanel'de SSL yönetimi, bir kez mantığını kavradığınızda son derece öngörülebilir bir iştir: rutin siteler için AutoSSL'i açıp otomatik yenilemeye bırakın, özel bir sertifikanız varsa SSL/TLS ekranından anahtar + sertifika + CA bundle üçlüsünü yükleyin, sorun çıktığında da neredeyse her zaman DNS, yönlendirme veya AAAA kaydına bakarak çözün. Bu üç refleksi edindiğinizde "site güvenli değil" uyarısı sizin için sıradan bir bakım işine dönüşür.
Clou.TR olarak AutoSSL'in etkin geldiği hosting ve WordPress hosting paketlerinden, root yetkisiyle her ayarı kendiniz yönetebileceğiniz sunucu çözümlerine kadar tüm barındırma altyapımızda SSL kurulumunu sadeleştirdik. Wildcard veya kurumsal doğrulamalı sertifikalar için SSL sayfamıza göz atabilir, geçiş ve kurulumu bize bırakmak isterseniz sunucu yönetimi ve site taşıma ekiplerimizden destek alabilirsiniz. Sitenizin her ziyaretçide kilitli ve güvenli açılması, düşündüğünüzden daha yakın.