Kısaca CSR olarak bilinen Certificate Signing Request SSL sertifikası için başvuran ve güvenliğin sağlanacak olduğu alan adının bilgilerinin yer aldığı şifrelenmiş bir metin bloğudur. Bu kod ile SSL sertifikası oluşturulmaktadır ve SSL sertifikası almanın en önemli bölümüdür. CSR kodunun içerisinde ayıca sertifika ile ilgili olan açık anahtar da yer almaktadır. CSR kodu RSA özel anahtardan üretilir. Genellikle anahtarın üretildiği kontrol panelinin ya da web sunucusunun türüne göre RSA kodu ve CSR kodu birlikte oluşturulmaktadır. Açık ve özel anahtarlar birbirleri ile ilişkilidir. Açık anahtar sadece iletişimi şifrelemektedir. Özel anahtar ise bu şifrenin açılabilmesi ve iletişimin taşıdığı verinin anlamlı hale getirilebilmesi için kullanılmaktadır. RSA anahtarı ve CSR kodu oluşturulduktan sonra SSL sertifikasının aktivasyon işlemi yapılmaktadır. Bu işlem gerçekleştirilinceye kadar özel anahtar gizli bir şekilde sunucuda saklanmaktadır. Özel anahtarın kaybolması, silinmesi ya da açığa çıkması durumunda yeni bir CSR kodu ve RSA anahtarı oluşturulması gerekmektedir. Bu nedenle SSL sertifikası da yeniden düzenlenmektedir.
CSR Kodunun İçinde Neler Yer Almaktadır?
CSR kodu oluşmak ve SSL sertifikasına sahip olmak için öncesinde bazı bilgileri forma girmek gerekmektedir. Bu bilgiler şifreli bir biçimde CSR kodunun içerisinde yer almaktadır. Bir CS kodu genellikle ASN.1 ile şifrelenmektedir.
Common Name: Bu kısma alan adının tamamının girilmesi gerekmektedir. Ancak buraya girilen alan adı siteyi ziyaret etmek için tarayıcının adres çubuğuna yazılan alan adının aynısı olmalıdır. Aksi takdirde uyumsuz isim hatası meydana gelmektedir. Wildcard sertifikalar için SSL sertifikasının subdomainlerde de kullanılabilmesi adına alan adının başına asteriks(*) işareti konulmalıdır.
Organization: Burada organizasyonun resmi adı yer almalıdır. Bu kısımda sadece isim değil aynı zamanda tür de önemlidir ve ismin sonunda organizasyonun türü A.Ş ya da LTD gibi mutlaka belirtilmelidir.
Organizational Unit: Bu kısımda SSL sertifikası için başvuran departmanın bilgisinin yer alması gerekmektedir.
City/Localty: Bu kısımda ise organizasyonun bulunduğu merkez girilmektedir.
Country: SSL başvurusu yapan merkezin bulunduğu ülkedir. Bu ülkenin iki haneli ISO kodu girilmektedir.
E-mail: Organizasyon ile ilişkili e-posta adresi girilmelidir. Sertifika yenilenme dönemi geldiğinde hatırlatma e-postası bu mail adresine gelmektedir.
Public Key: Sertifikada yer alacak olan açık anahtar.
CSR Kodu Kaç Bit Uzunluğundadır?
CSR ve özel anahtar çiftinin bit uzunluğu kodun brute force yöntemi ile ne kadar sürede kırılabileceğini belirlemektedir. 2016 yılından bu yana 2048 bit ve altı anahtarlar zayıf olarak kabul edilmektedir ve birkaç ay içerisinde kırılabilmektedir. Özel anahtarın kırılması durumunda sertifikanın yer aldığı uygulama ya da site ile olan bağlantı anahtara sahip olan kişiler tarafından açığa çıkarılabilmektedir. Extended Validation uygulamalarına göre SSL sertifika sağlayıcılarının gelecekte güvenliği sağlayabilmesi için minimum 2048 bit uzunluğunda anahtar sağlamaması gerekmektedir. Bu nedenle EV olsa da olmasa da sertifika sağlayıcılarının büyük bir çoğunluğu 2048 bit anahtarları kullanmaktadır.
CSR Kodu Nasıl Oluşturulur?
CSR kodu birkaç adımda oluşturulabilmektedir. cPanel üzerinden CSR kodu oluşturmak son derece kolaydır. cPanel hesabına giriş yaptıktan sonra aşağıdaki işlemleri yaparak CSR kodu oluşturulabilir ve SSL sertifikası aktif edilebilmektedir.
- Güvenlik başlığı altında yer alan SSL/TLS bölümüne girin.
- Gelen seçeneklerden Certificate Signing Requests (CSR) altında yer alan “Generate, view, or delete SSL certificate signing requests” linkine tıklayın.
- Burada yukarıda detayları verilmiş bilgilerin doldurulması gerekmektedir. İlk satırda yer alan “Generate a New 2048 Bit key” bölümün değiştirilmeden bırakılması gerekmektedir. En altta yer alan “Passphrase” ve “Description” kısımlarının ile boş bırakılması gerekmektedir. Bu form doldurulurken sadece alfanümerik karakterlerin kullanılmalıdır.
- Üstteki bölüm doğru bir şekilde doldurulduktan sonra alt tarafta yer alan “Generate” butonuna tıklamak yeterli olmaktadır.
Bu adımlar tamamlandıktan sonra CSR kodu alttaki metin kutusunda yer almaktadır. Bu kod “—–BEGIN CERTIFICATE REQUEST——“ satırı ile başlayıp “——END CERTIFICATE REQUEST——“ satırı ile son bulmaktadır. Bu kod bloğunu kopyalayıp ilgili yere yapıştırmak yeterli olmaktadır. Bu işlem sonucunda internet sitesi ya da uygulama SSL sertifikasına sahip olmaktadır.
CSR Kodunu Çözme
CSR kodu çeşitli bilgiler girilerek oluşturulmaktadır. Bu kodu çözerek kod alınırken kullanılan bilgilere ulaşmak mümkün olmaktadır. Günümüzde CSR kodunu çözen birçok internet sitesi bulunmaktadır. Bu sitelerden birine ilgili kodu yapıştırmak yeterli olmaktadır. Bu siteler sadece bilgileri değil aynı zamanda CSR boyutunu, anahtar boyutunu ya da imza algoritması gibi bilgileri de göstermektedir. CSR kodu, Linux işletim sistemine sahip cihazlarda komut satırına “openssl req -in server.csr -noout -text” komutunu girerek çözülebilmektedir. SSL sertifikalarının büyük birçoğunluğu süresi dolduktan sonra otomatik olarak yenilenmektedir. Sertifikanın günü geçtiğinde ise sertifikanın olduğu site ya da uygulama ile olan bağlantı şifresiz bir şekilde gerçekleştirilmektedir. Sertifika yenilenme zamanı geldiğinde bu durum sertifika alınırken kullanılan e-posta adresine hatırlatma maili gelmektedir.