İçeriğe geç
  • Hafta içi 08:00 – 18:00 · Destek 7/24
  1. Ana Sayfa
  2. Blog
  3. Güvenlik

SSL sertifikası: DV, OV, EV farkı ve doğru kurulum

Hangi doğrulama seviyesi kime gerekir, joker sertifika ne zaman mantıklıdır ve kurulumdan sonra hangi kontroller yapılır?

  • Güncellendi:
  • 7 dakika okuma
  • Güvenlik
Sertifika belgesini, kilit simgesini ve DV, OV, EV doğrulama kademelerini anlatan izometrik çizim

Tarayıcılar HTTPS olmayan siteleri "güvenli değil" diye işaretliyor; artık sertifika bir tercih değil temel gereklilik. Ama hangi sertifikayı alacağınız, kurulumu nasıl doğrulayacağınız ve yenilemeyi nasıl otomatikleştireceğiniz hâlâ karar gerektiren konular.

Üç doğrulama seviyesi

  • DV (Domain Validation): Yalnız alan adının kontrolü doğrulanır; dakikalar içinde çıkar. Şifreleme gücü diğerleriyle aynıdır. Tanıtım siteleri, bloglar ve çoğu e-ticaret için yeterlidir.
  • OV (Organization Validation): Şirketin varlığı da doğrulanır; sertifika ayrıntılarında kurum adı görünür. Kurumsal siteler ve müşteri paneli barındıran uygulamalar için tercih edilir.
  • EV (Extended Validation): En kapsamlı inceleme. Tarayıcılar 2019'dan beri adres çubuğunda yeşil şirket adı göstermiyor; bu yüzden EV'nin görünür pazarlama değeri azaldı. Bankacılık ve ödeme kuruluşları gibi düzenlemeye tabi alanlarda hâlâ tercih ediliyor.
SeviyeÇıkış süresiDoğrulananTipik kullanım
DVDakikalarAlan adının denetimiBlog, tanıtım sitesi, çoğu e-ticaret
OV1–3 iş günüAlan adı ve şirket kaydıKurumsal site, müşteri paneli
EV3–10 iş günüŞirketin genişletilmiş incelemesiDüzenlemeye tabi finans kuruluşları

Önemli nokta: üç seviye de aynı şifrelemeyi kullanır. Fark güvende değil, kimliğin ne kadar doğrulandığındadır.

Kaç alan adını kapsıyor?

  • Tek alan adı: alanadiniz.com ve genellikle www.alanadiniz.com.
  • Joker (wildcard): *.alanadiniz.com — tüm birinci seviye alt alan adlarını kapsar. Çok sayıda alt alan adı yönetiyorsanız hem ucuz hem pratiktir. İki seviye derine (a.b.alanadiniz.com) inmez.
  • Çok alanlı (SAN/UCC): Farklı alan adlarını tek sertifikada toplar.

Let's Encrypt yeterli mi?

Çoğu site için evet. Ücretsizdir, DV seviyesindedir, 90 gün geçerlidir ve otomatik yenilenmek üzere tasarlanmıştır. Ücretli sertifikayı tercih etmenizi gerektirecek durumlar: kurum adının sertifikada görünmesi isteniyorsa, garanti ve sigorta koşulları sözleşmenizde şartsa, ya da OV/EV seviyesi bir denetim gerekliliğiyse.

90 günlük süre bir dezavantaj değil, bir disiplin aracıdır: yenileme otomatik değilse zaten üç ayda bir sertifika düşer ve bunu fark edersiniz. Otomasyonu ilk günden kurun ve yenilemeyi ayrıca izleyin.

Doğrulama yöntemi: HTTP-01 mi, DNS-01 mi?

Ücretsiz sertifika verilmeden önce alan adının sizde olduğu sınanır. İki yaygın yol var ve seçim, joker sertifika isteyip istemediğinize göre değişir:

  • HTTP-01: Sunucu /.well-known/acme-challenge/ altına geçici bir dosya koyar, doğrulayıcı onu okur. Kurulumu en kolay yoldur. Bu dizini yönlendirme, kimlik doğrulama ve IP kısıtlama kurallarınızdan muaf tutun; yenilemenin aylar sonra sessizce durmasının bir numaralı sebebi buranın kapanmasıdır.
  • DNS-01: Alan adına geçici bir TXT kaydı yazılır. Joker sertifika yalnız bu yolla alınır. DNS sağlayıcınızın bir arayüzü varsa otomatikleşir; yoksa her yenilemede elle kayıt girmek gerekir, yani 90 günde bir unutulacak bir iş. Kayıt tiplerinin ayrıntısı DNS kayıtları yazısında.

Tek alan adı için tipik komut şudur; her iki biçimi de tek sertifikada toplar:

certbot --nginx -d alanadiniz.com -d www.alanadiniz.com

Kurulumdan sonra dört kontrol

  1. Ara sertifika zinciri tam mı? En sık yapılan hatadır. Masaüstü tarayıcı eksik zinciri kendi başına tamamlayabilir; mobil tarayıcı ve API istemcileri tamamlayamaz ve hata verir. Zinciri sunucudan doğrulamak için: openssl s_client -connect alanadiniz.com:443 -servername alanadiniz.com komutunu çalıştırın; çıktıdaki Verify return code: 0 (ok) satırı zincirin tam olduğunu söyler. Sertifika listesinde yalnız kendi sertifikanız görünüyorsa yapılandırmada tam zincir dosyasını (fullchain.pem) kullanın.
  2. Yönlendirme kurulu mu? http:// adresleri kalıcı yönlendirme (301) ile HTTPS'e gitmeli, hem www hem www'suz biçim tek bir hedefte birleşmeli.
  3. Karışık içerik var mı? Sayfa HTTPS ama içindeki görsel veya betik http:// ile çağrılıyorsa tarayıcı uyarı verir ya da kaynağı hiç yüklemez. Veritabanındaki eski mutlak adresleri toplu güncelleyin.
  4. Protokol sürümleri. TLS 1.2 ve 1.3 açık, eski sürümler kapalı olmalı.

Tarayıcı hatasından sebebe

Sertifika sorunlarının çoğu birkaç tanıdık belirtiyle gelir. Belirtiyi doğru okumak, tahminle uğraşılan bir saati beş dakikaya indirir:

BelirtiMuhtemel sebepÇözüm
Ad uyuşmuyor uyarısıSertifika www'suz biçimi kapsamıyorHer iki adı da sertifikaya ekleyin
Masaüstünde sorunsuz, mobilde hataAra sertifika eksikTam zincir dosyasını kurun
Kilit simgesi yok ama hata da yokKarışık içerikKaynak adreslerini HTTPS'e çevirin
Süresi dolmuş uyarısıYenileme görevi çalışmıyorDoğrulama yolunu ve zamanlanmış görevi denetleyin
Eski istemcilerde bağlantı kopuyorTLS 1.0 ve 1.1 kapatıldıBeklenen davranış; istemci güncellenmeli

Sık yapılan üç yanlış karar

  • Her alt alan adına ayrı sertifika almak. Beşten fazla alt alan adı yönetiyorsanız joker sertifika hem daha ucuz hem yönetimi kolaydır. Altındaki tek koşul DNS-01 doğrulamasını kurabilmektir.
  • EV'yi güvenlik yatırımı sanmak. Şifreleme aynıdır; ödediğiniz şey kimlik doğrulamasının derinliğidir ve ziyaretçi bu farkı artık adres çubuğunda göremiyor.
  • HSTS ön yükleme listesine erken girmek. Listeye girmek kolay, çıkmak aylar sürer. Tüm alt alan adlarınız kalıcı olarak HTTPS'e hazır olmadan başvurmayın.

HSTS: güçlü ama geri alınamaz

Strict-Transport-Security başlığı, tarayıcıya "bu siteye bundan sonra yalnız HTTPS ile bağlan" der. Güvenliği artırır, ama süresi dolana kadar geri alınamaz. Kısa bir süreyle başlayın (örneğin bir gün), her şeyin sorunsuz çalıştığını doğrulayın, sonra süreyi uzatın. Tüm alt alan adlarınız HTTPS'e hazır değilken includeSubDomains eklemeyin.

Sertifikayı komut satırından okumak: zincir, tarih ve ad

Tarayıcının kilit simgesi tek bir bilgisayardan, o anki önbellekle verilmiş bir hükümdür. Asıl kontrol, sunucunun herkese gönderdiği sertifikayı doğrudan okumaktır. OpenSSL her Linux sunucuda vardır:

echo | openssl s_client -connect ornek.com:443 -servername ornek.com 2>/dev/null \
  | grep -E 'Verify return code|^ [0-9] s:|^   i:'

-servername parametresini atlamayın; aynı IP adresinde birden çok site varsa sunucu hangi sertifikayı göndereceğini bu adla seçer. Sağlam bir kurulumda çıktı şöyle görünür (kendi sitemizde aldığımız çıktı):

 0 s:CN = turklokasyon.com
   i:C = US, O = Google Trust Services, CN = WE1
 1 s:C = US, O = Google Trust Services, CN = WE1
   i:C = US, O = Google Trust Services LLC, CN = GTS Root R4
Verify return code: 0 (ok)

Okuma kuralı basittir: her satırdaki i: (veren) bir sonraki satırdaki s: (konu) ile aynı olmalı. 0 numaralı satır sizin sertifikanız, sonrakiler ara sertifikalardır. Zincir kopuksa son satır bunu kodla söyler. Bilerek bozuk yapılandırılmış deneme sunucularında aldığımız üç kod en sık görülen üç sorunu karşılar:

  • 21 (unable to verify the first certificate) — ara sertifika gönderilmiyor. Çıktıda yalnız 0 numaralı satır vardır. Çözüm, sunucuya yalnız sertifikayı değil fullchain dosyasını göstermektir.
  • 10 (certificate has expired) — süre dolmuş. Yenileme çalışmamış ya da yenilenen sertifika servise yeniden yüklenmemiştir.
  • 62 (hostname mismatch) — sertifika başka bir ad için verilmiş. Bu kodu görmek için komuta -verify_hostname ornek.com eklemek gerekir; eklemezseniz OpenSSL adı denetlemez ve 0 döndürebilir.

Tarihleri ve kapsanan adları görmek için sertifikayı ikinci bir komuta aktarın:

echo | openssl s_client -connect ornek.com:443 -servername ornek.com 2>/dev/null \
  | openssl x509 -noout -subject -issuer -dates -ext subjectAltName

notAfter bitiş tarihidir; Subject Alternative Name satırı sertifikanın gerçekte hangi adları kapsadığını gösterir. Tarayıcı artık eski CN alanına değil bu listeye bakar; www adı listede yoksa o adres hata verir. Aynı bilgileri kurulum yapmadan görmek isterseniz SSL sertifika kontrolü aracını kullanabilirsiniz. Süresi dolmuş bir sertifikayla karşılaştığınızda izlenecek adımları SSL sertifikasının süresi dolduğunda yazısında ayrıca anlatıyoruz.

Yenilemeyi izleyin

Otomatik yenileme kurulu olsa bile bir gün sessizce bozulabilir: yapılandırma değişir, doğrulama dosyasına erişim kapanır, servis yeniden başlatılmaz. Sertifikanın son geçerlilik tarihini izlemeye alın ve 14 gün kala uyarı üretin. Sertifika süresi dolduğunda site yavaşlamaz — tamamen erişilemez hale gelir; bu yüzden uyarı eşiği rahat olmalıdır.

Kurulumdan hemen sonra yenileme akışını bir kez prova edin:

certbot renew --dry-run

Bu komut gerçek sertifikaya dokunmadan doğrulamayı, yazmayı ve servis yeniden yükleme adımını sınar. Zamanlayıcının kurulu olduğunu systemctl list-timers çıktısında görmelisiniz; görev listede yoksa yenileme hiç çalışmayacak demektir.

Barındırma paketlerimizde Let's Encrypt sertifikası panelden tek tıkla kurulur ve otomatik yenilenir. Kendi sunucunuzu yönetiyorsanız yenileme görevinin çalıştığını doğrulamak sizin sorumluluğunuzdadır; izleme yazısındaki sertifika kontrolünü listenize ekleyin.

Sık sorulan sorular

"Unable to verify the first certificate" hatası ne demek?

Sunucu kendi sertifikasını gönderiyor ama onu imzalayan ara sertifikayı göndermiyor. Masaüstü tarayıcılar eksik parçayı önbellekten tamamlayabildiği için site çoğu zaman açık görünür; mobil cihazlar, API istemcileri ve curl ise bağlantıyı reddeder. Web sunucusunda sertifika dosyası olarak fullchain dosyasını gösterin.

SSL sertifikasının bitiş tarihini nasıl öğrenirim?

Tarayıcıda kilit simgesinden sertifika ayrıntılarına bakabilir ya da komut satırında openssl s_client çıktısını openssl x509 -noout -dates komutuna aktarabilirsiniz. notAfter satırı bitiş tarihidir ve UTC saatiyle yazılır.

Sertifika www olmadan çalışıyor, www ile hata veriyor. Neden?

Sertifikanın Subject Alternative Name listesinde www adı yok. Sertifikayı iki adı birden kapsayacak şekilde yeniden alın (örneğin certbot'a iki ayrı -d parametresi verin) ya da tek bir adı kanonik seçip diğerini ona yönlendirin; yönlendirmenin de geçerli bir sertifikayla yapılması gerektiğini unutmayın.

  • #ssl
  • #tls
  • #sertifika

Sertifikayla uğraşmak istemiyor musunuz? Hosting paketlerimizde Let's Encrypt sertifikası panelden tek tıkla kurulur ve otomatik yenilenir.

Hosting paketlerine bakın
Devamı

İlgili yazılar

Güvenlik

Windows Server'da RDP portu değiştirme ve uzak masaüstünü güvenceye alma

Windows Server 2022 ve 2019'da Uzak Masaüstü portunu bağlantıyı kaybetmeden değiştirmek: güvenlik duvarı kuralını önce açmak, kayıt defteri, servis yeniden başlatma, eski kuralları kapatmak, IP kısıtı ve hesap kilitleme. Komutlar test sunucusunda denendi.

  • 7 dk
Yazıyı oku
Güvenlik

Sunucudaki kişisel veri KVKK'ya göre nasıl imha edilir?

Hizmeti kapatmak, diski formatlamak ya da dosyayı silmek imha sayılmaz. KVKK'nın istediği üç işlemden hangisinin ne zaman uygulanacağı, sunucu türüne göre hangi yöntemin işe yaradığı ve üç yıl saklanacak imha kaydına ne yazılacağı.

  • 5 dk
Yazıyı oku