bg-tutorials

Debian’da CSR Nasıl Oluşturulur

Bu kılavuz, OpenSSL komut satırını kullanarak Debian üzerinde CSR (Sertifika İmzalama İsteği) oluşturma işlemini adım adım gösterir. SSH üzerinden çalıştıracağınız tek bir komut, iki dosyayı aynı anda oluşturur: sunucunuzda kalan bir özel anahtar ve Sertifika Yetkilinize (CA) göndereceğiniz CSR. Bu adımlar Debian 13 (trixie), Debian 12 (bookworm) ve daha önceki sürümlerde çalışır, çünkü OpenSSL temel sistemle birlikte gelir.

Bir CSR, alan adı bilgilerinizi ve bir açık anahtarı içeren küçük bir metin bloğudur. CA bu bloğu okur, isteğinizi doğrular ve yanında oluşturulan özel anahtarla eşleşen bir sertifika verir. Özel anahtar sunucunuzdan hiçbir zaman ayrılmaz, bu nedenle onu güvende tutun: onu kaybederseniz, verilen sertifika kullanılamaz hale gelir ve baştan başlamanız gerekir.

Adım 1: Debian sunucunuza giriş yapın

Bir terminal açın ve SSH üzerinden sunucuya bağlanın. your-user yerine hesap adınızı ve your-server-ip yerine sunucunuzun IP adresini veya ana bilgisayar adını yazın:

ssh your-user@your-server-ip

OpenSSL, Debian temel sisteminde yer aldığından ekstra bir şey kurmanıza gerek yoktur. Mevcut olduğunu doğrulamak için sürümü kontrol edin:

openssl version

Adım 2: Özel anahtarı ve CSR’ı oluşturun

Aşağıdaki komutu çalıştırın. Bu komut, özel anahtarı ve CSR’ı bir adımda oluşturur ve modern tarayıcıların ve CA’ların gerektirdiği Konu Alternatif Adlarını (SAN’lar) içerir. Bunu, ana dizininiz gibi yazma izniniz olan bir dizinden çalıştırın:

openssl req -new -newkey rsa:2048 -nodes 
-keyout mywebsite.key 
-out mywebsite.csr 
-subj "/C=US/ST=YourState/L=YourCity/O=YourCompany/CN=mywebsite.com" 
-addext "subjectAltName=DNS:mywebsite.com,DNS:www.mywebsite.com"

Her parçanın ne işe yaradığı şöyledir:

  • req -new yeni bir sertifika imzalama isteği oluşturur.
  • -newkey rsa:2048 yeni bir 2048 bitlik RSA özel anahtarı oluşturur. 2048 bit, genel sertifikalar için mevcut minimum değerdir; daha büyük bir anahtar için rsa:4096 kullanabilirsiniz.
  • -nodes özel anahtarı şifrelenmemiş bırakır (parola yok), böylece web sunucusu şifre sormadan başlayabilir.
  • -keyout mywebsite.key özel anahtarı yazar. Bu dosyayı gizli tutun ve hiç kimseye göndermeyin.
  • -out mywebsite.csr CA’ya göndereceğiniz CSR’ı yazar.
  • -subj, konu alanlarını satır içinde doldurarak komutun etkileşimli sorular sormadan çalışmasını sağlar. CN (Ortak Ad) değerini tam nitelikli alan adınız olarak ayarlayın.
  • -addext “subjectAltName=…” SAN girdilerini ekler. CA’lar SAN listesine göre sertifika verir, bu nedenle sertifikanın kapsaması gereken her ana bilgisayar adını ekleyin.

mywebsite.com yerine gerçek alan adınızı yazın ve -subj değerlerini kuruluşunuza uygun şekilde düzenleyin. İki harfli ülke kodu (C) büyük harf olmalıdır, örneğin US veya GB. Alan adı doğrulamalı (DV) bir sertifika için kuruluş alanları doğrulanmaz, ancak komut yine de geçerli değerlere ihtiyaç duyar.

Alanları -subj ile değil etkileşimli olarak doldurmayı tercih ederseniz, o satırı çıkarın ve OpenSSL her değer için size soracaktır:

openssl req -new -newkey rsa:2048 -nodes 
-keyout mywebsite.key 
-out mywebsite.csr 
-addext "subjectAltName=DNS:mywebsite.com,DNS:www.mywebsite.com"

Sorulduğunda, challenge password ve optional company name alanlarını Enter’a basarak boş bırakın. CA’lar bu alanları göz ardı eder ve bir challenge password daha sonra sorunlara neden olabilir.

Daha fazla alan adı veya joker karakter ekleme

SAN listesine, virgülle ayırarak daha fazla ana bilgisayar adı ekleyin. Örneğin, bir API alt alan adını dahil etmek için:

-addext "subjectAltName=DNS:mywebsite.com,DNS:www.mywebsite.com,DNS:api.mywebsite.com"

Joker karakterli bir sertifika için *.mywebsite.com kullanın. Joker karakter, bir seviyedeki alt alan adlarını kapsar ancak çıplak alan adını kapsamaz, bu nedenle ana alanın da kapsanmasını istiyorsanız her ikisini de listeleyin:

-addext "subjectAltName=DNS:*.mywebsite.com,DNS:mywebsite.com"

ECDSA anahtarı mı tercih ediyorsunuz?

ECDSA anahtarları, aynı güvenlik seviyesinde RSA’dan daha küçük ve daha hızlıdır ve yaygın olarak desteklenir. Bunun yerine bir P-256 (prime256v1) anahtarı ve CSR oluşturmak için -newkey argümanını değiştirin:

openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -pkeyopt ec_param_enc:named_curve -nodes 
-keyout mywebsite.key 
-out mywebsite.csr 
-subj "/C=US/ST=YourState/L=YourCity/O=YourCompany/CN=mywebsite.com" 
-addext "subjectAltName=DNS:mywebsite.com,DNS:www.mywebsite.com"

Modern OpenSSL, varsayılan olarak CSR’ı SHA-256 ile imzalar; bu da CA’ların gerektirdiği yöntemdir. Ayrı bir özet (digest) bayrağı eklemeye gerek yoktur.

Adım 3: CSR’ı doğrulayın

İsteği göndermeden önce, doğru alan adını ve SAN’ları içerdiğini ve imzasının geçerli olduğunu doğrulayın. Bu komut, kodu çözülmüş içeriği yazdırır ve imzayı yerel olarak kontrol eder:

openssl req -noout -text -verify -in mywebsite.csr

Çıktıda verify OK ifadesini arayın, Subject satırının Ortak Adınızı gösterdiğini kontrol edin ve X509v3 Subject Alternative Name bölümünün beklediğiniz her ana bilgisayar adını listelediğini doğrulayın. Bir SAN eksikse, doğru -addext değeriyle CSR’ı yeniden oluşturun. Bu alanları bir tarayıcıda kontrol etmek için CSR’ı çevrimiçi CSR çözücümüze yapıştırabilirsiniz.

Adım 4: CSR’ı gönderin

CSR dosyasını açın ve BEGIN ve END satırları dahil olmak üzere tüm içeriğini kopyalayın:

cat mywebsite.csr

Blok şu şekilde görünür. İlk satırdan son satıra kadar her şeyi, BEGIN ve END işaretlerinin her iki tarafındaki beş tireyi de dahil ederek kopyalayın:

-----BEGIN CERTIFICATE REQUEST-----
MIIC...base64-encoded data...AB
-----END CERTIFICATE REQUEST-----

O bloğu SSL sipariş formunuza yapıştırın. CA, CSR’ı doğruladıktan ve SSL sertifikasını verdikten sonra, dağıtmak için Debian SSL kurulum talimatlarını izleyin. mywebsite.key dosyasını sunucuda tutun: HTTPS’i etkinleştirmek için bunu verilen sertifikayla birlikte kullanmanız gerekir ve bunu asla CA’ya veya başka birine göndermemelisiniz.

Komut satırını kullanmak istemiyorsanız, isteği CSR Oluşturucumuzla oluşturabilir ve sonucu siparişinize yapıştırabilirsiniz.

Diğer platformlarda CSR oluşturma

Farklı bir Linux dağıtımı veya sunucusu mu kullanıyorsunuz? Diğer CSR kılavuzlarımıza bakın:

Bugün SSL Dragon’dan sipariş vererek SSL Sertifikalarında %10 indirimden yararlanın!

Hızlı düzenleme, güçlü şifreleme, %99,99 tarayıcı güvenilirliği, özel destek ve 25 günlük para iade garantisi. Kupon kodu: SAVE10

A detailed image of a dragon in flight
Tarafından yazıldı

SSL Sertifikaları konusunda uzmanlaşmış deneyimli içerik yazarı. Karmaşık siber güvenlik konularını açık, ilgi çekici içeriğe dönüştürmek. Etkili anlatımlar yoluyla dijital güvenliğin geliştirilmesine katkıda bulunun.