Anasayfa > Genel > Let’s Encrypt Nedir ?

Let’s Encrypt Nedir ?

Translate This Page:

Translate This Page:

Select your language:  English EN French FR German DE Portuguese PT Russian RU Turkish TR

Bir önceki makalede HTTP,SSL ve TLS gibi kavramlar üzerinde durmuştuk Let’s Encrypt ın önemini kavramak için bu kavramları anlamak oldukça önemli . Bu makalede Let’s Encrypt’ in ne olduğunu ve nasıl çalıştığını anlatmaya çalışacağım eğer SSL ve TLS kavramlarını hatırlamak için önceki makaleyi incelemeniz faydalı olacaktır.

Let’s EnCrypt Nedir ?

En Basit ve anlaşılır tabiri ile Beleş SSL Sertifikası diyebiliriz =)

Let’s Encrypt Internet Security Research Group (“ISRG”)  tarafından geliştirilen ve Linux Foundation tarafından desteklenen Security Research Group tarafından ilk olarak 2015 yılında üretilmiş bir açık sertifika otoritesidir. Tüm amaç kamu yararı için ücretsiz, otomatize ve açık bir sertifika doğrulama sistemidir.

Let’s Encrypt web sunucuların HTTP yerine HTTPS kullanılmasını yaygınlaştırmak üzere SSL/TLS sertifikaların ücretsiz olarak üretilmesi ve dağıtılması amacıyla kurulmuştur. Sektörün önde gelen şirketleri Cisco, Mozilla ve Electronic rontier Foundation firmaları tarafından finanse edilmektedir ve bu servis sponsorlar desteği ile devamlılığını sağlamaktadır.

Geleneksel CA’ler bir önceki yazımda sıralanan üç yöntemle de sertifika üretebilirler. Let’s Encrypt ise sertifika sadece Domain Validation – DV tipindeki sertifikaları üretmektedir. Bunun sebebi Organization Validation – OV ve Extended Validation – EV sertifikalarının doğaları ve sundukları fayda gereği üretim süreçlerinde insan dahli gerektirmeleridir.

Let’s Encrypt servisi Şubat 2019 itibariyle günde yaklaşık 1 milyon adet DV sertifika üretmektedir Şubat 2020 de  1 milyarıncı sertifikasını vermiştir. Bu hacimdeki bir üretimi süreci otomize etmeden yapmak anlaşılacağı üzere mümkün değildir. Neyse ki Let’s Encrypt, sertifikaları tamamiyle otomize bir şekilde yapmaktadır.

Let’s Encrypt’i Neden Kullanmalıyım?

  • Ücretsiz(Güçlü bir sebep 🙂
  • 2 dakikalık kurulumdan sonra her şey otomatik
  • Güvenli
  • Transparan ve Açık

Let’s Encrypt’in Diğer SSL Sertifikaları ile Farkı Nedir?

  • Tüm SSL sertifikaları yıllık olarak alınır, ancak Let’s Encrypt 3 aylık(https://letsencrypt.org/2015/11/09/why-90-days.html)) olarak kurulur ve her 3 ayda bir otomatik olarak yenilenir.
  • Ücretli SSL sertifikalarında, SSL’den kaynaklı oluşabilecek sorunlara karşı 10 bin $ ile 2 milyon dolar arasında değişen garanti teminatı bulunur. Ancak Let’s Encrypt’te herhangi bir güvence bedeli bulunmamaktadır.
  • SSL sigortası vermediği için ticari projelerde kullanılması tavsiye edilmemektedir.

Let’s Encrypt Nasıl Çalışır?

Let’s Encrypt sertifika basma işlemlerini yaparken ACME protokolünü kullanıyor. ACME protokolünün agent’I sayesinde, sertifika basma ve yenileme işlemlerinizi otomatize edebiliyor. İlk olarak Let’s Encrypt ile sertifika basabilmek için domaininizi doğrulamanız gerekiyor. Bunun için kullanabileceğiniz iki yöntem var:

  • DNS kaydıyla domainin sahibi olduğunuzu doğrulamak
  • HTTP üzerinden domainin sahibi olduğunuzu doğrulamak.

Sertifikanın süresi dolduğunda ise, kurmuş olduğunuz agent program tekrar Let’s Encrypt ile iletişime geçerek yeni bir sertifika oluşturuyor veya sertifikanızı yeniliyor.

Let’s Encrypt’in bir diğer güzel yanı da; Subject Alternative Name (SAN) içeren sertifikalar basabilmesi. Örneğin www.example.com ve abc.example.com gibi birden fazla FQDN’e sahip bir web sayfanız var. Certbot agent programına bu adresleri gösterdiğiniz zaman otomatik bir şekilde SAN attribute’una sahip bir sertifika oluşturabiliyor.

Çalışma akış şemasını Yukarıda görebilirsiniz.

  • Let’s Encrypt’in SSL/TLS sertifikalarını üretebilmek için SSL/TLS sertifikası isteyen sunucunun sertifika istediği domain’e gerçekten hakim olup olmadığını doğrulaması gerekir. Bu doğrulama iki şekilde yapılabilir.
    DNS Challenge adlı ilk yöntemde Let’s Encrypt istekte bulunulan domain’e kendi ürettiği random bir metin ile TXT tipinde bir DNS kaydı eklenmesini ister.
    Örneğin example․com’a sertifika üretmek için a345ade212d30․example․com değeri ile TXT kaydı sorgulanır.

Let’s Encrypt belirli aralıklarla ilgili TXT kaydının oluşturulup oluşturulmadığını kontrol eder. Eğer sertifikayı talep eden kişi sertifikaya konu olan domain’e hakimse kaydı belirli bir sürede oluşturur ve sertifika üretilir değilse sertifika üretilmez.

  • HTTP Challenge adlı ikinci yöntemde ise Let’s Encrypt yine kendi ürettiği bir random metnin sertifika üretilecek domain’den HTTP ile sunulmasını ister.
    Örneğin example․com için http://example․com/a345ade212d30 adresinden ilgili dosyayı çekebilmeyi bekler.

Anlaşılacağı üzere bu doğrulama tipinde de Let’s Encrypt sertifika talebinin gerçekten doğru kaynaktan gelip gelmediğini rahatlıkla doğrulayabilmektedir. Bu yöntem bazı durumlarda ilkine göre daha kolay otomize edilebilmektedir ve yazarın genel tercihidir.

Let’s Encrypt’in sertifika üretiminde kullanıldığı yukarıdaki yöntemler ACME – Automatic Certificate Management Environment adı verilen internet protokolünde detaylandırılmıştır. İsteyen herkes bu protokolü kullanarak kendi istemcisini yazabilir.

Sertifika üretimini kolaylaştırmak için Let’s Encrypt Certbot adında bir referans implementasyon sağlamaktadır. Açık kaynak kodlu Certbot bir sunucuda agent olarak çalışarak Let’s Encrypt sunucuları ile sertifika üretim işini yönetmektedir.

Geleneksel sertifikalar 1 ya da 2 yıllık olarak üretilir. Let’s Encrypt ise sertifika üretim işini otomize ettiği için sertifikaları geçerliliği 90 gün olacak şekilde üretmektedir. Certbot süresi dolmaya yakın sertifikaları otomatik olarak yenileyebilmektedir.

AWS ve Google Cloud üzerinde çalışan servisler için AWS ve Google Cloud da Let’s Encrypt benzeri ücretsiz servisler sağlamaktadır. Bu ortamlarda Let’s Encrypt yerine bulutta bulunan yük dağıtıcılarla entegre olan yerel servislerin kullanılması daha pratiktir. Anlaşılacağı üzere Let’s Encrypt, CA olarak sertifika ürettiği domain’lerin kullandığı Private Key’leri bilmemekte ve ACME çerçevesinde bu anahtarları istemciden istememektedir.

Hakkinda Serdar Bayram

Bu yazı blog üzerinde Serdar Bayram tarafından hazırlanıp paylaşılmıştır. 2009 yılında açılan blogum kısa zaman içerisinde paylasımları ile dikkat cekip büyük bir izleyici kitlesine sahip olmuştur.

ilginizi Cekebilir

Let’s Encrypt on IIS setup and configuration

Bu makalede Le’s Encrypt SSL i win-acme tool kullanarak Windows IIS üzerinde bulunan bir siteye …

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

*