Tek .pem'de çeşitli sertifikalar nasıl birleştirilir


35

Farklı SSL formatlarını açıklayan bu harika konuyu okudum .

Şimdi aslında bir PEM dosyasını bölmek için tam tersini arıyorum

Konsolide etmek istediğim 4 dosya var, başlangıçta Apache için oluşturulmuş, tarafından belirtilen dosyalara bakıyorum

  • SSLCertificateFile
  • SSLCertificateKeyFile
  • SSLCertificateChainFile
  • SSLCACertificateFile

En çok merak ettiğim şey, konsolide editörlüğündeki dosyaların sırasıdır, bu önemli mi? ÖRNEĞİN. sadece catgöründükleri sırayla birlikte, bir .pem halinde birlikte olsaydım , bu geçerli mi olurdu, yoksa belirli bir şekilde mi sipariş edilmeli?

Bilginize, ben bir kombine single olarak bu certs kullanarak uğruna yapıyorum .PEM içinde simpleSAMLphp .


Sipariş, özel anahtar, ara sertifika veya sertifikanız olmalıdır.
Zoredache

Peki ya CA, zincirin kökü değil mi ve bu yüzden konsolide dosyadaki zincirden sonra gidecekti? Veya tamamen atlanabilir mi?
20'27'de

Yanıtlar:


43

RFC 4346'ya göre sipariş önemlidir .

İşte doğrudan RFC'den alınan bir alıntı:

  certificate_list
    This is a sequence (chain) of X.509v3 certificates.  The sender's
    certificate must come first in the list.  Each following
    certificate must directly certify the one preceding it.  Because
    certificate validation requires that root keys be distributed
    independently, the self-signed certificate that specifies the root
    certificate authority may optionally be omitted from the chain,
    under the assumption that the remote end must already possess it
    in order to validate it in any case.

Bu bilgilere dayanarak, önce sunucu sertifikası gelmeli, ardından ara sertifikalar ve nihayetinde kök güvenilir otorite sertifikası (kendinden imzalı ise) gelmelidir. Özel anahtarla ilgili herhangi bir bilgi bulamadım, ancak önemli olmamasını düşünüyorum çünkü pem'deki özel bir anahtarın içinde anahtar kelimenin bulunduğu metinle başlayıp bittiği zaman tanımlaması kolaydır PRIVATE.

 -----BEGIN RSA PRIVATE KEY-----
 -----END RSA PRIVATE KEY-----

2
cat site.crt root.crt site.key> site.pem
curveorzos

6

İşte kullanarak birleştirmek için komut cat

cat first_cert.pem second_cert.pem > combined_cert.pem

3
Herhangi iki sertifikayı nasıl birleştireceğiniz, ancak Apache için cerları nasıl birleştireceğiniz / birleştireceğiniz bir cevap.
asdmin,

Bu gerçekten soruyu cevaplamak değil, kabul edilen cevap yeterince iyi. Sadece nasıl birleştirileceği hakkında ek bilgiler sağladım, orijinal poster kedi kullanmaktan bahsettiği için başkalarına yardım edebileceğini düşündüm.
tidileboss 15

2
Cevabınız , dosyaların hangi sırayla birleştirilmesi gerektiğini göstermez (yalnızca "first_cert.pem" ve "second_cert.pem"). Doğru cevap olacaktırcat my_site.pem ca_chain.pem my_site.key > combined_cert.pem
Doktor J,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.