TLS – تولید گواهی ها با openssl – بهینه سازی

گواهی های خودم را برای یک سیستم داخلی ایجاد می کنم:

  • گواهی ریشه برای صدور گواهینامه
  • برای سرور وب،
  • گواهی نامه برای مشتریان،
  • امضای کد،
  • و غیره [19659007] معماری سرور چربی (خدمات مایکروسافت IIS WCF) و مشتریان نازک (برنامه های کاربردی دسک تاپ مایکروسافت WPF) است. سرور فقط در https قابل دسترسی است و مشتریان باید خود را با گواهی مشتری تأیید کنند.

    این اسکریپت من است:

     1. گواهی ریشه را ایجاد کنید
        openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits: 2048 -aes-256-cbc-pass pass: AbmDF5XU -out "Acme Root.key"
        openssl req -new -x509 -days 24854 -subj "/ C = US / ST = / L = آستین / O = Acme Corporation / OU = / CN = Acme Root" گذرنامه: AbmDF5XU -key "Acme Root.key" - "Acme Root.cer"
    
    2. ایجاد گواهینامه برای سرور وب (تأیید هویت سرور).
        openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits: 2048 -aes-256-cbc-pass pass: R2xEK3rT -out "Acme IIS.key"
        openssl req -new -subj "/ C = US / ST = / L = آستین / O = Acme Corporation / OU = / CN = acme" گذرنامه: R2xEK3rT -key "Acme IIS.key" -out "Acme IIS. CSR "
        openssl x509 -days 24854 -sha256 -req -in "Acme IIS.csr" -xtxtfile v3_server.ext -CA "Acme Root.cer" -CAkey "Acme Root.key" گذرنامه: AbmDF5XU -CAcreateserial -out "Acme IIS .cer "
        openssl pkcs12 -aes256 -export -inkey "Acme IIS.key" -passin pass: R2xEK3rT- در "Acme IIS.cer" گذرنامه: R2xEK3rT -out "Acme IIS.pfx"
    
    3. ایجاد گواهینامه برای مشتری (احراز هویت مشتری).
        openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits: 2048 -aes-256-cbc -pass pass: fDWnfJYq -out "Acme Client 001.key"
        openssl req -new -subj "/ C = US / ST = / L = آستین / O = Acme Corporation / OU = / CN = Acme Client 001" گذرنامه: fDWnfJYq -key "Acme Client 001.key" -out " Acme Client 001.csr "
        openssl x509 -days 24854 -sha256 -req -in "Acme Client 001.csr" -xtxt v3_client.ext -CA "Acme Root.cer" -CAkey "Acme Root.key" گذرنامه: AbmDF5XU -CAcreateserial -out "Acme مشتری 001.cer "
        openssl pkcs12 -aes256 -export -inkey "Acme Client 001.key" -passin pass: fDWnfJYq -in "Acme Client 001.cer" -password pass: fDWnfJYq -out "Acme Client 001.pfx"
    

    همانگونه که می بینید، از چهار دستور برای تولید یک فایل PFX استفاده می کنم (برای مثال برای تأیید اعتبار مشتری). این کار به خوبی انجام می شود، من فقط کنجکاو هستم اگر فقط با یک دستور برای مثال انجام شود؟

    همچنین – برای تمام کارشناسان وجود دارد، اسکریپت من خوب است یا شما آن را تغییر شکل دهید؟