Kendi imzalı CA oluşturma komut dosyasına bir basicConstraints=CA:TRUE,pathlen:0
kısıtlama eklemek istiyorum ve eğer gerekmediyse yordamımı basitleştirmek için çok uzun bir yol olurdu bir yapılandırma dosyası ve uygun bir CA'nın tüm klasör yapısını oluşturun. Herhangi bir komut satırı aracılığıyla openssl cert için basicConstraints belirtmek için zaten var mı?
5
A
cevap
7
, OpenSSL kullanarak kendinden imzalı bir sertifika oluşturmak için bir OpenSSL yapılandırma dosyası veya herhangi bir klasör yapısı oluşturmanız gerekir.
[req]
distinguished_name=dn
[ dn ]
[ ext ]
basicConstraints=CA:TRUE,pathlen:0
Ve burada bir Bash kabuğundan OpenSSL'yi kendinden imzalı sertifika oluşturmak: Örneğin
, burada sormak gibi minimal OpenSSL yapılandırma dosyası temel kısıtlamalar uzantısını ayarlamak için içerebilir nedir
CONFIG="
[req]
distinguished_name=dn
[ dn ]
[ ext ]
basicConstraints=CA:TRUE,pathlen:0
"
openssl req -config <(echo "$CONFIG") -new -newkey rsa:2048 -nodes \
-subj "/CN=Hello" -x509 -extensions ext -keyout key.pem -out crt.pem
İyi şanslar: - Bu "yapılandırma dosyası", yalnızca, bir dosya değil bir kabuk değişkeni var!
+1
Bu bir dosyadır. Sen sadece görmüyorsun. Ama açıkça, bir bashizm olduğunu söyleyen kudos. –
Bu yazılım geliştirme konusunda soru değil gibi görünüyor. Üstelik şu anda kullandığınız parametreleri dahil etmiyorsunuz. Genellikle openssl.exe, "basicConstraints" öğesini otomatik olarak "Subject Type = CA" ve "Path Length Constraint = None" olarak sertifikaya dahil edecektir. I güvenilir 'Openssl ecparam -kasa myCA.key -adı secp384r1 -genkey' ve 'Openssl Tlp -x509 -yeni -sha384 tuşlu myCA.key -kasa myCA.pem -outform PEM -Days 3650 -subj "/ C = DE/O = Tamam yumuşak GmbH/OU = Araştırma/CN = CA Kurumu ". Biri, v3_ca'ya 'v3_ca' veya' openssl.cfg''ye referans vermek için ekleyebilir, ancak bir tanesi aynı sonuçlara sahip olacaktır. – Oleg
Ben size 'openssl.cfg' ait req' bölümü' x509_extensions = v3_ca' girişi içerir 'doğrulamak için önerilir. Sanırım CA sertifikasını başka bir şekilde ('openssl req ...' kullanarak değil) oluşturuyorsunuz ve sorunun sebebi de bu. – Oleg
CA'yı şu şekilde oluşturun: 'openssl genrsa -des3 -out $ KEYS_DIR/ca.key 4096' ' openssl req -new -x509 -gün 36500-anahtar $ KEYS_DIR/ca.key -out $ KEYS_DIR/ca .crt 'Ben sadece ikinci satırına basicConstraint eklemek için bir yol olduğunu umuyordum –