OpenSSL Aracı ile CSR Dosyası Oluşturulması ve CSR Dosyasının İmzalanarak Sertifikanın Hazırlanması

Günümüzde verinin gizliliğini ve bütünlüğünü sağlamak önemli bir konudur. Bu yazıda, OpenSSL aracı kullanılarak sertifika ile kimlik doğrulaması sağlayacak bir sisteme konulmak üzere bir sertifika oluşturulmasının adımları incelenecektir.

1) Sertifika Talep Edecek Kuruma Ait Özel Anahtarın Oluşturulması

Özel anahtarı oluşturmak için OpenSSL komut satırı aracı kullanılabilir. OpenSSL yazılımı kendi sayfasından (https://www.openssl.org/source/) elde edilebilir. Bu yazılımın kurulum dosyalarının C:\ ana dizinine yapıldığını varsayalım. Öncelikle sertifika talep edilen kuruma ait özel anahtar oluşturulur. Özel anahtarı oluşturmak için komut satırından OpenSSL’e ait dizine gidilir (C:\OpenSSL-Win64\bin) ve aşağıdaki komut yazılır:

openssl.exe genrsa -des3 -out SirketOzelAnahtari.key 2048

Komut girildikten sonra ileride oluşturulacak olan CSR (Certificate Signing Request) dosyasında kullanılmak üzere parola belirlenir. İlgili komut ve parola belirlenme adımına ait ekran görüntüsü aşağıda verilmiştir.

Şekil - 1: Sertifika Talep Eden Şirkete Ait Özel Anahtar Oluşturma

Şekil – 1: Sertifika Talep Eden Şirkete Ait Özel Anahtar Oluşturma

 

Yukarıdaki ekran görüntüsünde SirketOzelAnahtari.key isimli gizli anahtarı oluşturmak için parola girilmesi beklenir. Kullanıcı bu alana kendi seçtiği ve tahmin edilmesi zor olan bir parola girdikten sonra gizli anahtar üretilir.

Not: Yukarıdaki komutta SirketOzelAnahtari.key, özel anahtar üretildikten sonra kaydedileceği dosya adıdır ve 2048 değeri ise anahtar uzunluğunu temsil eder, kullanıcı tercihine bağlı olarak 1024 veya 4096 olarak da değiştirilebilir.

 

2) Sertifikayı Verecek Olan Kuruma Ait Özel Anahtarın Oluşturulması

Normal şartlar altında, bir sertifika geçerli bir Sertifika Otoritesi (örneğin VeriSign, Comodo, DigiCert vs) tarafından hazırlanır. Ancak bu uygulamada gerçek olmayan bir Sertifika Otoritesi’nin özel anahtarı kullanılacaktır. Sahte Sertifika Otoritesi’ne (Certificate Authority) ait özel anahtarı oluşturmak için komut satırından OpenSSL’e ait dizine gidilir (C:\OpenSSL-Win64\bin) ve aşağıdaki komut yazılır:

openssl.exe genrsa -out OzelAnahtar.pem 1024

Bu komut ve çıktısına ait ekran görüntüsü aşağıda verilmiştir.

Şekil - 2: Sertifikayı Hazırlayacak Şirkete Ait Özel Anahtar Oluşturma

Şekil – 2: Sertifikayı Hazırlayacak Şirkete Ait Özel Anahtar Oluşturma

 

3) Sertifika Talep Eden Kurum Tarafından CSR Dosyasının Oluşturulması

Sertifika talep eden kurum oluşturduğu özel anahtarı kullanılarak .csr dosyası üretir. Bu dosyayı oluşturmak için

openssl.exe req -new -key SirketOzelAnahtari.key -out SirketSertifikaTalebi.csr

komutu girildikten sonra özel anahtar oluşturmak için kullanılan parola ve sertifika talep eden kuruma ait gerçek bilgiler girilmelidir. İlgili adıma ait ekran görüntüsü aşağıda verilmiştir.

Şekil - 3: Sertifikayı Talep Eden Şirket Tarafından CSR Dosyasının Oluşturulması

Şekil – 3: Sertifikayı Talep Eden Şirket Tarafından CSR Dosyasının Oluşturulması

 

Not: Özel anahtar ve CSR talebi tek bir komut ile aşağıdaki gibi de oluşturulabilirdi.

openssl.exe req -new -newkey -nodes -keyout SirketOzelAnahtari.key -out SirketSertifikaTalebi.csr

 

Yukarıdaki işlemden sonra ilgili dizinde SirketSertifikaTalebi.csr isimli dosya oluşturulmuştur. Böylece kurum sayısal imzasını kullanmış olur. Oluşturulan bu CSR dosyası aşağıdaki bilgileri kapsar:

  • Sertifikayı talep eden kurum bilgisi
  • Sertifikanın kullanılacağı adres (Common Name)
  • Genel Anahtar

Oluşturulan bu CSR dosyası direk olarak sertifika otoritesine veya PKI sürecindeki aracı kurumlara gönderilir.

Talep edilen sertifikanın özelliğine göre, sertifika talep eden kurumun gerçekten o kurum olduğunun ispatlanması, için çevrimdışı yollarla (faks, posta vs) aşağıdaki dokümanlar da gönderilebilir:

  • Kurumsal sicil kaydı – ticari sicil gazetesi fotokopisi
  • Kurum imza sirkülerinin fotokopisi
  • Sunucu (SSL) sertifikasının bedelinin ödendiğine dair banka dekontu
  • Kurumun, sunucuya ait alan adına sahipliğini gösterir belgenin örneği

 

4) Sertifika Otoritesi Tarafından Sertifikanın Hazırlanması

Normal şartlar altında, sertifika talep eden kurum tarafından oluşturulmuş olan CSR dosyası geçerli bir sertifika otoritesine (örneğin VeriSign, Comodo, DigiCert vs) gönderilir. Bu sertifika otoritesi, CSR dosyasını imzalaması sağlandıktan sonra, ilgili sertifika otoritesi tarafından sertifika talep eden kuruma sertifikası gönderilir. Ancak bu uygulamada gerçek olmayan bir Sertifika Otoritesi’nin özel anahtarı (OzelAnahtar.pem) ile imzalama işlemi gerçekleştirilecektir. Sahte Sertifika Otoritesi’nin özel anahtarı (OzelAnahtar.pem) kullanılarak CSR dosyasını imzalamak için

openssl.exe x509 -req -days 365 -in SirketSertifikaTalebi.csr -signkey OzelAnahtar.pem -out SirketSertifikasi.cer

komutu girilir. Komuta ait ekran görüntüsü aşağıdaki gibidir.

Şekil - 4: Sertifika Otoritesi Tarafından CSR Dosyasının İmzalanarak Sertifikanın Hazırlanması

Şekil – 4: Sertifika Otoritesi Tarafından CSR Dosyasının İmzalanarak Sertifikanın Hazırlanması

 

Bu komut, CSR dosyasının OzelAnahtar.pem isimli özel anahtar kullanılarak ve 1 yıllık geçerli olacak şekilde imzalandığı, sonucunda da SirketSertifikasi.cer isimli sertifika dosyası oluşturulduğunu belirtir. Eğer OzelAnahtar.pem dosyası hazırlanırken bir parola girilmiş olsa ide, CSR imzalınırken bu parolanın da girilmesi istenecekti.

Çalıştırılan komuttan sonra, Sertifika Otoritesi’nin özel anahtarı, sertifika talep eden şirketin gönderdiği CSR dosyası ve Sertifika Otoritesi tarafından hazırlanan sertifikaların bulunduğu dizindeki dosyaların görüntüsü aşağıdaki gibidir.

Şekil - 5: Sertifika Orotitesi'ndeki Özel Anahtar, CSR ve Sertifika Dosyaları

Şekil – 5: Sertifika Orotitesi’ndeki Özel Anahtar, CSR ve Sertifika Dosyaları

 

5) Sertifika Bilgilerini Listeleme

Son olarak oluşturulan sertifikaya ait bilgileri görebilmek için,

openssl.exe x509 -noout -text -in SirketSertifikasi.cer

komutu girilir ve aşağıdaki ekran görüntüsüne benzer bilgiler elde edilir.

Şekil - 6: Sertifika Bilgisi Görüntüleme İşlemi

Şekil – 6: Sertifika Bilgisi Görüntüleme İşlemi

 

Kurum tarafında CER uzantılı bu sertifika farklı formatlara çevrilerek kullanılabilir.

 

 

 

Yazarın Bilgileri

Ertuğrul BAŞARANOĞLU
Ertuğrul BAŞARANOĞLU

Bir Cevap Yazın

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

Kullanabileceğiniz HTLM etiketleri ve özellikleri: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Bu sayfada incelenen konulardan doğacak sorunlar kişinin kendi sorumluluğundadır.