Bu eğitim, Webmin üzerinde nasıl CSR (Certificate Signing Request) oluşturulacağını göstermektedir. Webmin, Linux sunucuları için tarayıcı tabanlı bir kontrol panelidir, bu nedenle CSR oluşturmak için iki pratik yolunuz vardır: Webmin’in yerleşik SSL modülleri aracılığıyla (Webmin panelinin kendisi veya bir Apache sanal ana bilgisayarı için grafiksel bir form) veya Webmin’in yerleşik terminali üzerinden OpenSSL komut satırı ile. OpenSSL yolu en esnek olanıdır ve herhangi bir web sunucusuyla (Apache, Nginx, Lighttpd veya Webmin’in yönettiği başka herhangi bir şeyle) kullanabileceğiniz bir anahtar ve CSR üretir.
Aşağıdaki adımlar, 2026 yılında desteklenen her Linux dağıtımında (Ubuntu 22.04 / 24.04 / 26.04, Debian 12 ve 13, RHEL 9 ve 10, Rocky 9 ve 10, AlmaLinux 9 ve 10, openSUSE Leap 15.6 ve Tumbleweed) mevcut sürümler olan modern Webmin 2.x ve OpenSSL 3.x’i varsaymaktadır. Çıktı, herhangi bir kamu Sertifika Yetkilisinin kabul ettiği, SHA-256 ile imzalanmış standart PEM kodlu bir CSR’dır.
Adım 1: Webmin’e giriş yapın
Bir tarayıcıda Webmin’i sunucunuzun 10000 portundaki URL’sinde açın:
https://yourwebsite.com:10000
yourwebsite.com ifadesini sunucunuzun ana bilgisayar adı veya IP adresi ile değiştirin. 10000 portu varsayılan Webmin portudur. Root hesabıyla veya SSL yönetme iznine sahip bir Webmin kullanıcısıyla oturum açın.
Adım 2: Webmin terminalini açın
Webmin 2.x, ayrı bir SSH oturumu açmadan kullanabileceğiniz yerleşik bir terminalle birlikte gelir. Sol paneldeki Refresh Modules bağlantısının hemen altında, Terminal simgesine (soldan ikinci simge) tıklayın veya açmak için Alt + K tuşlarına basın. Oturum açtığınız kullanıcı olarak çalışan bir kabuk istemi görünür.
Kendi makinenizden doğrudan bir SSH bağlantısı tercih ediyorsanız, aynı sunucuya bağlanın ve bir sonraki adımdaki komutu orada çalıştırın. Sonuç aynı olacaktır.
Adım 3: Özel anahtarı ve CSR’yi OpenSSL ile oluşturun
Terminalde aşağıdaki komutu çalıştırın. Bu komut, konu (subject) ve Konu Alternatif Adları’nı (SAN’ler) satır içinde vererek tek adımda 2048 bit’lik bir RSA anahtarı ve eşleşen bir CSR oluşturur, böylece OpenSSL etkileşimli sorular sormak için durmaz:
sudo openssl req -new -newkey rsa:2048 -noenc
-keyout /etc/ssl/private/yourwebsite.com.key
-out /etc/ssl/private/yourwebsite.com.csr
-subj "/C=US/ST=California/L=San Jose/O=Your Company LLC/CN=yourwebsite.com"
-addext "subjectAltName=DNS:yourwebsite.com,DNS:www.yourwebsite.com"
Debian ve Ubuntu’da /etc/ssl/private/ dizini zaten mevcuttur. RHEL, Rocky, AlmaLinux ve Fedora’da ise gelenek, anahtarlar için /etc/pki/tls/private/ ve CSR için /etc/pki/tls/certs/ kullanmaktır. Web sunucunuzun okuyabileceği yolları seçin veya dosyaları ev dizininize kaydedip daha sonra taşıyın. Hedef dizin mevcut değilse, önce sudo mkdir -p /etc/ssl/private ile oluşturun.
Komutun her bir bölümünün ne yaptığı:
- -newkey rsa:2048 yeni bir 2048 bit’lik RSA anahtarı oluşturur. 2048 bit, kamu sertifikaları için mevcut minimum değerdir. Daha büyük bir anahtar için rsa:4096 kullanın veya ECDSA’ya geçin (aşağıya bakın).
- -noenc özel anahtarı şifrelenmemiş bırakır, böylece web sunucusu başlangıçta bir parola istemi olmadan onu okuyabilir. (OpenSSL 1.x’te eşdeğer bayrak -nodes‘tur; her ikisi de OpenSSL 3.x’te hala çalışır.)
- -keyout ve -out, özel anahtar dosyasını ve CSR dosyasını adlandırır.
- -subj sertifika konusunu satır içinde sağlar. Örnek değerleri gerçek bilgilerinizle değiştirin:
- C: Kuruluşunuzun yasal olarak kayıtlı olduğu ülkenin iki harfli kodu (örneğin, US).
- ST: Eyalet veya ilin tam adı (örneğin, California), kısaltma kullanmayın.
- L: Şehir veya kasabanın tam adı (örneğin, San Jose).
- O: Yasal kuruluş adı. Bir Alan Adı Doğrulamalı (DV) sertifika için bu alanı boş bırakın veya alan adınıza ayarlayın.
- CN: Güvenceye almak istediğiniz sitenin Tam Nitelikli Alan Adı (FQDN) (örneğin, yourwebsite.com).
- -addext “subjectAltName=…” sertifikanın kapsaması gereken her ana bilgisayar adını listeler. Kamu CA’ları SAN listesine göre doğrulama yapar, bu nedenle buraya Ortak Adı (Common Name) da dahil edin. Bir joker karakter (wildcard) için hem joker karakteri hem de kök alanı dahil edin: DNS:*.yourwebsite.com,DNS:yourwebsite.com. Joker karakterler yalnızca bir alt alan düzeyini kapsar ve tek başlarına kök alanla eşleşmez.
Daha küçük ve daha hızlı olan, P-256’nın yaygın olarak desteklendiği bir ECDSA anahtarı tercih ederseniz, bunun yerine şu varyantı kullanın:
sudo openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 -noenc
-keyout /etc/ssl/private/yourwebsite.com.key
-out /etc/ssl/private/yourwebsite.com.csr
-subj "/C=US/ST=California/L=San Jose/O=Your Company LLC/CN=yourwebsite.com"
-addext "subjectAltName=DNS:yourwebsite.com,DNS:www.yourwebsite.com"
Her satırın sonundaki ters eğik çizgi (backslash), bir kabuk satır devamıdır, bu nedenle komut, okunabilirlik için birkaç satıra bölünmüş olsa da tek bir mantıksal komut olarak kalır. Terminaliniz çok satırlı formu iyi işlemiyorsa, komutun tamamını tek bir satıra yapıştırın.
Adım 4: Özel anahtarı koruyun
Her iki dosyanın da oluşturulduğunu doğrulamak için dizini listeleyin:
sudo ls -l /etc/ssl/private/yourwebsite.com.*
İki yeni dosya görmelisiniz:
- yourwebsite.com.key: özel anahtar. Sunucuda kalmalı, asla Sertifika Yetkilisine gönderilmemeli ve asla e-postayla iletilmemeli veya herhangi bir forma yapıştırılmamalıdır. Anahtara sahip olan kişi sitenizi taklit edebilir.
- yourwebsite.com.csr: Sertifika İmzalama Talebi. SSL sağlayıcısına göndereceğiniz tek dosya budur.
Özel anahtarın izinlerini yalnızca root’un okuyabileceği şekilde kısıtlayın:
sudo chmod 600 /etc/ssl/private/yourwebsite.com.key
SELinux’ün etkin olduğu dağıtımlarda (RHEL, Rocky, AlmaLinux, Fedora), anahtarı son konumuna taşıdıktan sonra doğru SELinux bağlamını yeniden uygulayın, örneğin sudo restorecon -Rv /etc/pki/tls/.
Adım 5: CSR’yi doğrulayın (isteğe bağlı ancak önerilir)
CSR’yi göndermeden önce, doğru konu ve SAN’leri içerdiğini ve imzasının geçerli olduğunu doğrulayın:
openssl req -noout -text -verify -in /etc/ssl/private/yourwebsite.com.csr
Subject satırının bilgilerinizle eşleştiğini, X509v3 Subject Alternative Name‘in beklediğiniz her ana bilgisayar adını listelediğini ve imza kontrolünün verify OK yazdırdığını kontrol edin. İmza algoritması sha256WithRSAEncryption (veya bir ECDSA anahtarı için ecdsa-with-SHA256) olarak okunmalıdır. Komut satırını kullanmak istemiyorsanız, CSR metnini çevrimiçi CSR çözücümüze yapıştırarak aynı alanları tarayıcıda okuyabilirsiniz.
Adım 6: CSR’yi kopyalayın ve gönderin
Kopyalayabilmek için CSR’yi yazdırın:
sudo cat /etc/ssl/private/yourwebsite.com.csr
Aşağıdaki gibi bir metin bloğu göreceksiniz:
-----BEGIN CERTIFICATE REQUEST-----
MIIBozCB... (a long string of characters)
-----END CERTIFICATE REQUEST-----
—–BEGIN CERTIFICATE REQUEST—– ve —–END CERTIFICATE REQUEST—– satırları dahil olmak üzere (her işaretçinin her iki tarafında beş kısa çizgi bulunur) bloğun tamamını kopyalayın. SSL sertifikanızı satın alırken sipariş formuna yapıştırın ve eşleşen özel anahtarı sunucuda yerinde bırakın.
Webmin’in grafiksel modülleri aracılığıyla CSR oluşturma
Komut satırından kaçınmayı tercih ediyorsanız, Webmin sizin için bir CSR oluşturan iki grafiksel form içerir. Sertifikanın ne için olduğuna uyanı seçin.
Bir Apache sanal ana bilgisayarı için (web siteniz)
- Servers > Apache Webserver bölümüne gidin.
- Global Configuration sekmesini açın, Configure Apache Modules‘a tıklayın, ssl modülünü işaretleyin ve henüz açık değilse Enable Selected Modules‘a tıklayın.
- Existing virtual hosts sekmesinde, küre simgesine tıklayarak 443 portundaki sanal ana bilgisayarı açın (veya bir tane oluşturun).
- Virtual Server Options sayfasında SSL Options‘ı seçin, ardından Create signing request‘e tıklayın.
- Formu doldurun (ülke, eyalet, şehir, kuruluş, ortak ad, e-posta, 2048 veya daha yüksek anahtar boyutu ve varsa Konu Alternatif Adları), Webmin’in .csr ve .key dosyalarını yazmasını istediğiniz yeri seçin ve Create Now‘a tıklayın.
İki dosya belirttiğiniz yollarda görünür. Siparişiniz için .csr dosyasını kullanın ve .key dosyasını sunucuda tutun.
Webmin panelinin kendisi için (port 10000)
Yalnızca bir web sitesi için değil, Webmin giriş arayüzü için bir sertifikaya ihtiyacınız varsa, CSR’yi Webmin yapılandırma modülünden oluşturun:
- Webmin > Webmin Configuration > SSL Encryption bölümüne gidin.
- Create Signing Request sekmesini açın.
- Ana bilgisayar adını (Webmin’e ulaştığınız genel ad), ülke, eyalet, şehir, kuruluş, e-posta ve anahtar boyutunu doldurun, ardından Create‘e tıklayın.
Webmin, talebi ve eşleşen anahtarı /etc/webmin/ altına yazar. CA verilen sertifikayı döndürdükten sonra, varsayılan /etc/webmin/miniserv.pem dosyasının yerine geçmesi için aynı SSL Encryption sayfasından yükleyin.
Sertifikayı aldıktan sonra
Sertifika Yetkilisi CSR’nizi doğrulayıp sertifikayı verdikten sonra, bunu sunucuya yükleyin. Kesin adımlar, sertifikanın hangi hizmet için olduğuna bağlıdır:
- Webmin üzerinde SSL sertifikası yükleyin (Webmin üzerinden Apache).
- Apache üzerinde doğrudan bir SSL sertifikası yükleyin.
- Sitelerinizi Nginx ile sunuyorsanız Nginx üzerinde SSL sertifikası yükleyin.
Tarayıcınızda çalışan tamamen grafiksel bir iş akışı tercih ediyorsanız, CSR’yi çevrimiçi CSR Oluşturucu aracımızla da oluşturabilirsiniz. Bu araç özel anahtarı tarayıcınızda oluşturur, bu nedenle anahtarı kendiniz kaydedin ve kurulumu tamamlamadan önce sunucuya taşıyın.
Sıkça Sorulan Sorular
Ona nereye yazmasını söylerseniz orada. OpenSSL komutuyla, dosyalar -keyout ve -out ile geçtiğiniz yollara yazılır. Apache modülünün Create signing request formu ile çıktı yollarını formun kendisinde seçersiniz. Webmin > Webmin Configuration > SSL Encryption ile Webmin bunları /etc/webmin/ altına yazar. Debian ve Ubuntu’da anahtarlar için geleneksel yer /etc/ssl/private/‘dir; RHEL, Rocky, AlmaLinux ve Fedora’da ise /etc/pki/tls/private/‘dir.
Her ikisi de çalışır. Webmin’in yerleşik terminali (sol paneldeki simge veya Alt + K) uygundur çünkü zaten oturum açmışsınızdır, ancak normal bir SSH oturumu üzerinden çalıştırılan aynı OpenSSL komutu aynı CSR ve anahtarı üretir. Hangisi size daha kolay geliyorsa onu kullanın.
Aynı şeyi yaparlar: OpenSSL’e, web sunucusunun başlangıçta bir parola istemi olmadan okuyabilmesi için özel anahtarı diskte şifrelenmemiş bırakmasını söylerler. -nodes tarihi bir isimdir ve OpenSSL 3.x’te hala çalışır. -noenc ise OpenSSL 3.0’da tanıtılan ve ileriye dönük olarak tercih edilen yeni bir takma addır. Hangi alışkanlığınız varsa onu kullanın.
Evet. CSR, PKCS #10 tarafından tanımlanan standart bir PEM kodlu talebidir ve nerede oluşturulduğuna bakılmaksızın herhangi bir CA tarafından imzalanabilir. Webmin’in terminalinde, Apache modülünün Create signing request formu aracılığıyla veya çevrimiçi CSR Oluşturucu ile oluşturduğunuz CSR aynı tür dosyayı üretir. Önemli olan, aynı anda oluşturulan özel anahtarın, sertifikayı yüklemeyi planladığınız sunucuda kalmasıdı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


