Bu kılavuz, IBM HTTP Server (IHS) üzerinde nasıl CSR (Sertifika İmzalama İsteği) oluşturulacağını ve aynı işlemin HCL Domino‘da (önceden IBM Domino) nasıl yapılacağını gösterir.
IBM HTTP Server, anahtarları ve sertifikaları bir CMS anahtar veritabanında (bir .kdb dosyası ile bir .sth saklama dosyası) depolar; bunu, IHS ile birlikte gelen IBM Global Security Kit (GSKit)‘in IKEYMAN grafik aracı veya gskcapicmd komut satırı yardımcı programı ile yönetirsiniz.
Aşağıdaki adımlar, IHS 9.0.5.x (güncel desteklenen sürüm) için her iki yolu da kapsar, ardından HCL Domino için iki CSR akışını ele alır: eski kurulumlar için korunan klasik Server Certificate Administration veritabanı ve HCL’nin Domino 12 ve sonrasında önerdiği, certstore.nsf ile çalışan modern Certificate Manager görevi.
IBM HTTP Server’da CSR Oluşturma
CSR’nizi zaten oluşturduysanız, doğrudan IBM HTTP Server’a SSL sertifikası kurma bölümüne geçebilirsiniz.
IHS’de isteği iki şekilde oluşturabilirsiniz: IKEYMAN grafik arayüzü (klasik tıkla-ve-seç yardımcı programı) veya komut satırında gskcapicmd ile. İkisi de özel anahtarı aynı CMS anahtar veritabanına yazar ve Sertifika Yetkilinize göndereceğiniz bir .arm dosyası olarak PKCS #10 isteği üretir. Masaüstü veya ekranı olan bir sunucuda GUI’yi seçin; ekransız bir makinede veya tekrarlanabilir bir betik istediğinizde CLI’yi seçin.
Ön koşullar: IBM HTTP Server kurulu olmalı, GSKit sistemde bulunmalı (IHS paketinin içinde gelir) ve IHS bin dizini PATH’inizde olmalı veya tam yolunu bilmelisiniz (Linux/AIX’te tipik olarak /opt/IBM/HTTPServer/bin/, Windows’ta C:Program FilesIBMHTTPServerbin). Ayrıca yeni anahtar veritabanını ve CSR dosyasını yazabileceğiniz bir çalışma dizinine ve anahtar veritabanı parolasını kaydedeceğiniz bir yere ihtiyacınız var.
Yöntem 1. IKEYMAN ile CSR Oluşturma (GUI)
Adım 1. Yeni bir CMS anahtar veritabanı oluşturun (.kdb)
- IKEYMAN’ı başlatın. Windows’ta Başlat > IBM HTTP Server > Start Key Management Utility‘yi açın. Linux, AIX veya diğer UNIX sistemlerinde, IHS bin dizininden
ikeymankomutunu çalıştırın (örneğin/opt/IBM/HTTPServer/bin/ikeyman); çalışan bir X11 ekranına ihtiyacınız var. - Menüden Key Database File > New‘i seçin.
- Key database type açılır menüsünden CMS‘i seçin. Bu, IBM HTTP Server’ın okuduğu formattır.
- File Name alanına yeni veritabanı için bir isim girin (örneğin key.kdb).
- Location alanında tekrar bulabileceğiniz bir klasörü işaret edin (örneğin Linux’ta /opt/IBM/HTTPServer/ssl/ veya Windows’ta C:IBMHTTPServerssl). OK‘e tıklayın.
- Güçlü bir parola belirleyin, ardından Stash password to a file seçeneğini işaretleyin; böylece IKEYMAN, .kdb ile eşleşen bir .sth saklama dosyası yazar. IHS, sunucu her başladığında parolayı girmenize gerek kalmadan başlangıçta bu saklama dosyasını okur. OK‘e tıklayın.
IKEYMAN, o klasörde iki dosya oluşturur: veritabanının kendisi (key.kdb) ve saklama dosyası (key.sth). Her ikisini de gizli tutun. Dosya izinlerini sıkı tutun (yalnızca IHS kullanıcısı tarafından okunabilir olsun) ve güvenli bir konuma yedekleyin, çünkü özel anahtarı bunlar olmadan kurtaramazsınız.
Adım 2. Sertifika isteğini oluşturun
- Yeni veritabanı açıkken, Key database content açılır menüsünü bulun ve Personal Certificate Requests olarak değiştirin.
- New‘e tıklayın. Create New Key and Certificate Request penceresi açılır.
Alanları yalnızca standart ASCII karakterleriyle doldurun; Latin olmayan harfler isteği bozar:
- Key Label: anahtar veritabanı içindeki bu sertifika için kısa bir tanımlayıcı, örneğin www.example.com. Bu etikete daha sonra httpd.conf‘ta SSLServerCert direktifi ile başvurursunuz.
- Key Size: 2048‘i seçin. Bu, tüm kamuya açık CA’ların kabul ettiği güncel minimum değerdir. Politikanız daha büyük bir anahtar gerektiriyorsa yalnızca 3072 veya 4096‘yı seçin; bunun bedeli biraz daha yavaş TLS el sıkışmalarıdır.
- Signature Algorithm: SHA256WithRSA‘yı (veya SHA384WithRSA gibi daha güçlü bir seçeneği) seçin. SHA-1 içeren hiçbir şeyi kullanmayın; kamuya açık CA’lar buna karşı sertifika vermeyecektir.
- Common Name: güvence altına almak istediğiniz tam nitelikli alan adı, örneğin www.example.com. Joker karakterli bir sertifika için, üst düzey alan adının önüne bir yıldız işareti koyun, örneğin *.example.com.
- Organization: şirketinizin tam yasal adı, kayıtlı olduğu şekliyle tam olarak. OV ve EV sertifikaları için gereklidir; DV için göz ardı edilir.
- Organizational Unit: bu özellik kamuya açık sertifikalar için kullanımdan kaldırılmıştır (CA/Browser Forum bunu aşamalı olarak kaldırdı). Boş bırakın veya IT gibi kısa bir etiket girin.
- Locality: tam şehir adı (örneğin Seattle, SEA değil).
- State/Province: tam eyalet veya il adı (örneğin Washington, WA değil).
- Country: iki harfli ISO ülke kodu, örneğin US, GB veya DE.
- Subject Alternative Names (SAN): Common Name’e girdiğiniz değer dahil, sertifikada görünmesi gereken her ana bilgisayar adını ekleyin. Modern tarayıcılar Common Name’i göz ardı eder ve yalnızca SAN listesine göre doğrulama yapar, bu nedenle çok adlı bir sertifikanın buraya girdiler gerektirir.
- Enter the name of a file in which to store the certificate request: .arm ile biten bir yol ve isim, örneğin /opt/IBM/HTTPServer/ssl/www_example_com.arm. İkisinin birlikte kalması için anahtar veritabanıyla aynı klasöre kaydedin.
OK‘e tıklayın. IKEYMAN, anahtar çiftini anahtar veritabanı içinde oluşturur, isteği bekleyen bir girdi olarak saklar ve PKCS #10 CSR’sini adlandırdığınız .arm dosyasına yazar.
Adım 3. CSR’yi kopyalayın ve CA’ya gönderin
.arm dosyasını herhangi bir metin düzenleyicisinde (Notepad, vi, nano) açın. Şuna benzer bir blok göreceksiniz:
-----BEGIN NEW CERTIFICATE REQUEST-----
MIIDXjCCAkYCAQAwgZQxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApXYXNoaW5ndG9u
... (many lines of base64) ...
-----END NEW CERTIFICATE REQUEST-----
Tüm bloğu, BEGIN ve END satırları dahil olmak üzere seçin, kopyalayın ve sipariş formunuzdaki CSR alanına yapıştırın. Özel anahtar sunucudaki anahtar veritabanında kalır; makineden yalnızca CSR metni ayrılır.
Yöntem 2. gskcapicmd ile CSR Oluşturma (CLI)
gskcapicmd yardımcı programı (bazen Java sarmalayıcısı için gskcmd olarak veya 64 bit GSKit kurulumlarında gsk8capicmd_64 olarak listelenir), grafik oturumu olmadan IKEYMAN ile aynı işi yapar. IHS bin dizininden çalıştırın.
Adım 1. CMS anahtar veritabanını ve saklama dosyasını oluşturun
Anahtar veritabanı için bir klasör seçin, ardından şunu çalıştırın:
gskcapicmd -keydb -create
-db /opt/IBM/HTTPServer/ssl/key.kdb
-pw your_strong_password
-type cms
-stash
Argümanların açıklaması:
- -db: yeni .kdb dosyasının tam yolu.
- -pw: anahtar veritabanını koruyan parola.
- -type cms: IHS’nin okuduğu format.
- -stash: veritabanının yanına eşleşen bir .sth saklama dosyası yazar, böylece IHS başlangıçta parola sormadan onu okuyabilir.
Komut satırında parola, işlem listelerinde ve kabuk geçmişinde görünür durumdadır. Veritabanı oluşturulduktan sonra, gskcapicmd -keydb -changepw ile geçmişte kayıtlı olmayan bir parolaya değiştirin veya parolayı bir ortam değişkeni üzerinden geçirip ardından bu değişkeni kaldırın.
Adım 2. Sertifika isteğini oluşturun
Sertifikada istediğiniz her ana bilgisayar adı için SAN girdileriyle birlikte, anahtar çiftini ve PKCS #10 CSR’sini bir adımda oluşturun:
gskcapicmd -certreq -create
-db /opt/IBM/HTTPServer/ssl/key.kdb
-pw your_strong_password
-label www.example.com
-dn "CN=www.example.com,O=Example Inc,L=Seattle,ST=Washington,C=US"
-size 2048
-sigalg SHA256WithRSA
-san_dnsname "www.example.com,example.com"
-file /opt/IBM/HTTPServer/ssl/www_example_com.arm
Argümanların açıklaması:
- -label: anahtar veritabanı içindeki bu sertifika için tanımlayıcı. Daha sonra httpd.conf‘tan SSLServerCert direktifi ile buna başvurun.
- -dn: virgülle ayrılmış özelliklerle tek bir dize olarak yazılan Ayırt Edici Ad (Distinguished Name). FQDN için CN= ve C=‘de iki harfli ISO kodunu kullanın.
- -size: minimum değer 2048‘dir. Yalnızca politikanız bunu zorunlu kılıyorsa 3072 veya 4096‘yı kullanın.
- -sigalg: SHA256WithRSA (veya SHA384WithRSA). SHA-1 kullanmayın.
- -san_dnsname: sertifikada görünmesi gereken her ana bilgisayar adının virgülle ayrılmış listesi. Common Name değerini de bu listeye ekleyin. Tarayıcılar ve çoğu TLS kütüphanesi yalnızca SAN’ı doğrular, CN’yi değil.
- -file: gskcapicmd’nin .arm CSR dosyasını yazacağı yol.
RSA yerine ECDSA anahtarına ihtiyacınız varsa, -sigalg SHA256WithRSA‘yı -sigalg SHA256WithECDSA ile değiştirin ve -size‘ı hedef eğrinize uyacak şekilde değiştirin (P-256 için -size 256, P-384 için -size 384). Desteklenen eğriler secp256r1 (P-256), secp384r1 (P-384) ve secp521r1 (P-521)’dir. IHS’de ECDSA desteği yalnızca gskcapicmd aracılığıyla tam olarak sunulur; IKEYMAN, eski IHS sürümlerinde ECDSA seçmenize izin vermez. Belirli bir IHS sürümünde ECDSA için, IBM’in sertifika yönetimi yönergesini izleyin.
Adım 3. İsteği listeleyin ve doğrulayın
İsteğin anahtar veritabanına eklendiğini onaylayın:
gskcapicmd -certreq -list
-db /opt/IBM/HTTPServer/ssl/key.kdb
-pw your_strong_password
CSR’yi geri okuyup Common Name, SAN girdileri, anahtar boyutu ve imza algoritmasını kontrol etmek için:
gskcapicmd -certreq -details
-db /opt/IBM/HTTPServer/ssl/key.kdb
-pw your_strong_password
-label www.example.com
Ardından .arm dosyasını bir metin düzenleyicide açın, BEGIN NEW CERTIFICATE REQUEST‘ten END NEW CERTIFICATE REQUEST‘e kadar olan tam bloğu kopyalayın ve CA sipariş formunuza gönderin.
CSR’yi Göndermeden Önce Kontrol Edin (isteğe bağlı)
OpenSSL kuruluysa, konu, SAN listesi ve anahtar boyutunu onaylamak için aynı makinede şunu çalıştırın:
openssl req -noout -text -in www_example_com.arm
Çevrimiçi bir aracı mı tercih edersiniz? İsteğin içeriğini SSL Dragon’ın CSR Decoder aracına yapıştırarak aynı ayrıntıları okuyabilirsiniz. Common Name’in istemcilerin kullanacağı ana bilgisayar adıyla eşleştiğini ve gerekli her ana bilgisayar adının Subject Alternative Name altında göründüğünü onaylayın.
CA Sertifikanızı Verdikten Sonra
İmzalanmış sertifika, CSR’yi oluşturan aynı anahtar veritabanına, aynı etikete karşı geri gelmelidir. CLI ile alın:
gskcapicmd -cert -receive
-db /opt/IBM/HTTPServer/ssl/key.kdb
-pw your_strong_password
-file www_example_com.crt
Ya da aynısını IKEYMAN’da Personal Certificates > Receive altında yapın. Önce kök ve ara sertifikaları imzalayan sertifikalar olarak ekleyin, ardından httpd.conf‘u KeyFile ve SSLServerCert direktifleriyle güncelleyin ve IHS’yi yeniden başlatın. Tam prosedür IBM HTTP Server’a SSL sertifikası kurma bölümünde ele alınmıştır.
HCL Domino’da CSR Oluşturma
Not: IBM Domino artık HCL Domino‘dur. HCL, IBM’in işbirliği portföyünün (Notes/Domino dahil) satın alma işlemini 1 Temmuz 2019’da tamamladı. Domino 12 ve sonrasında HCL, tüm yeni TLS çalışmaları için Certificate Manager görevini (certstore.nsf ve TLS Credentials belgeleriyle) önerir. Klasik Server Certificate Administration veritabanı (CERTSRV.NSF) eski kurulumlar için hâlâ çalışır ve aşağıda belgelenmiştir, ancak yeni dağıtımlar Certificate Manager kullanmalıdır.
Yöntem A. Certificate Manager ile CSR Oluşturma (Domino 12+ / 14.x)
- Belirlediğiniz Certificate Manager sunucusuna CertMgr görevini ekleyin, böylece certstore.nsf‘yi oluşturur. TLS anahtarlarını okuması gereken her Domino sunucusunda da CertMgr’yi çalıştırın, böylece veritabanı çoğaltılır.
- certstore.nsf‘yi açın, TLS Credentials‘a gidin ve Add TLS Credentials‘a tıklayın.
- Host names: istemcilerin kullanacağı tam FQDN’yi girin ve her ek ana bilgisayar adını Subject Alternative Name olarak ekleyin.
- Servers with access: özel anahtarı okuyabilmesi gereken Domino sunucularını seçin.
- Certificate Provider: herhangi bir üçüncü taraf CA için Manual‘ı seçin. (CertMgr’nin otomatik olarak ücretsiz bir ACME-verilen sertifika almasını istiyorsanız yalnızca Let’s Encrypt‘i seçin.)
- Key type: RSA veya ECDSA‘yı seçin.
- RSA: 2048 bit seçin (politikanız gerektiriyorsa daha büyük).
- ECDSA: bir eğri seçin (P-256 veya P-384; listelenen varsayılan değer P-384’tür).
- Submit Request‘e tıklayın. CertMgr, anahtar çiftini oluşturur, CSR’yi imzalar ve belge Status = Waiting durumuna geçer.
- Belgeyi açın, Certificate signing request (CSR)‘ın değerini kopyalayın (veya işlemden sonra görünen Copy CSR eylemini kullanın) ve PEM bloğunu CA sipariş formunuza yapıştırın.
Özel anahtar, yetkilendirdiğiniz sunuculara şifrelenmiş olarak certstore.nsf içinde kalır. Bunu asla dışa aktarmazsınız. CA sertifikanızı verdiğinde, imzalanmış sertifikayı (verme zincirinizle birlikte) aynı TLS Credentials belgesine geri yapıştırın ve CertMgr sizin için kurar. Tam referans HCL’nin Certificate Manager belgelerinde bulunur.
Yöntem B. Klasik Server Certificate Administration (eski Domino)
Bu yöntemi yalnızca anahtar halkası dosyalarına (.kyr + .sth) hâlâ bağlı olan Domino sürümlerinde kullanın. HCL, bunu Domino 12 ve sonrasında eski (legacy) olarak işaretler.
- Domino Administrator istemcisinde Server Certificate Administration‘ı açın.
- Create Key Ring‘i seçin. Bir anahtar halkası adı ve güçlü bir parola girin.
- Key Size: 2048 bit seçin.
- Ayırt Edici Adı (Distinguished Name) doldurun:
- Common Name: güvence altına almak istediğiniz FQDN, örneğin www.example.com.
- Organization: şirketinizin tam yasal adı.
- Organizational Unit: boş bırakın veya IT gibi kısa bir etiket girin (bu özellik kamuya açık sertifikalar için kullanımdan kaldırılmıştır).
- City or Locality: tam şehir adı, örneğin Seattle.
- State or Province: tam eyalet adı, örneğin Washington.
- Country: iki harfli ISO kodu, örneğin US.
- Ayrıntıları gözden geçirin ve Continue‘a tıklayın. Domino anahtar halkası dosyasını oluşturur.
- Create Certificate Request‘i seçin. Method altında Paste into form on CA’s site‘ı seçin. Domino CSR metnini görüntüler.
- Tüm CSR bloğunu (BEGIN ve END satırları dahil) kopyalayın ve CA sipariş formunuza yapıştırın.
Klasik anahtar halkası dosyaları bu iletişim kutusu üzerinden SAN girdilerini desteklemez. Çok adlı bir sertifikaya ihtiyacınız varsa, Certificate Manager‘a (Yöntem A) geçin veya CSR’yi sunucu dışında oluşturun.
Sıkça Sorulan Sorular
IBM HTTP Server, standart Apache’nin yaptığı gibi PEM anahtar ve sertifika dosyalarını okumaz. TLS yığını (mod_ibm_ssl, GSKit tarafından desteklenir), anahtarları, sertifika isteklerini ve verilmiş sertifikaları .kdb uzantılı tek bir CMS anahtar veritabanı dosyasında depolar. Eşleşen bir saklama dosyası (.sth), veritabanı parolasını IHS’nin başlangıçta okuyabileceği bir biçimde tutar. IHS’yi veritabanına httpd.conf‘taki KeyFile direktifiyle yönlendirir ve içindeki belirli bir sertifikaya SSLServerCert ile başvurursunuz.
İkisi de aynı anahtar veritabanına yazar, bu yüzden her ikisi de çalışır. IKEYMAN, masaüstünde veya X11 ekranı olan bir sunucuda kullanışlıdır ve iletişim kutusunda size yol gösterir. gskcapicmd, ekransız sunucularda, otomasyonda ve GUI’nin eski IHS sürümlerinde sunmadığı ECDSA anahtarları için daha iyi bir seçimdir. Birçok yönetici veritabanını CLI ile oluşturur ve IKEYMAN’ı daha sonra yalnızca incelemek için kullanır.
Saklama dosyası, IBM HTTP Server’ın veritabanını başlangıçta etkileşimli bir istem olmadan açabilmesi için anahtar veritabanı parolasını gizlenmiş bir biçimde tutar. Bu şifreleme değildir: dosyaya okuma erişimi olan herkes parolayı geri alabilir. Hem .kdb‘yi hem de .sth‘yi yalnızca IHS kullanıcısı tarafından okunabilir tutun, veritabanını yerel dosya sisteminde (herkesin okuyabileceği bir paylaşımda değil) saklayın ve ikisini birlikte güvenli bir konuma yedekleyin.
Bu, WebSphere Application Server 9 ve IBM HTTP Server 9.0 ile paketlenen 64 bit GSKit 8.x ile birlikte gelen ikili dosyadır. GSKit 10 (WebSphere 10 ve sonrasıyla paketlenir) aynı kuralı izler. Bu kılavuzdaki gskcapicmd adı, kurulumunuz için doğru ikili dosyayı çağıran IHS dağıtımlı sarmalayıcıdır; gsk8capicmd_64 aynı aracın sürüm numaralı adıdır. Her ikisi de yukarıda gösterilen sözdizimiyle çalışır.
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


