1

Я знаю, что при работе с openssl вы можете обойти интерактивный ввод:

  • Пасс-пасс: все
  • пропуск
  • -subj "/C = pa/ST = pa/L = pa/O = pa/OU = pa/CN = pa"

Однако при подписании сертификата, как с:

openssl ca -config intermediate/openssl.cnf \
        -passin pass:whatever \
        -extensions usr_cert -days 375 -notext -md sha256 \
        -in intermediate/csr/www.example.com.csr.pem \
        -out intermediate/certs/www.example.com.cert.pem

Мне нужно дважды ввести "y":

            ....
            X509v3 Authority Key Identifier: 
                keyid:96:7B:52:E6:FC:53:53:F0:F3:D1:B3:EB:FB:5C:95:4D:73:BD:B8:5D

            X509v3 Key Usage: critical
                Digital Signature, Non Repudiation, Key Encipherment
            X509v3 Extended Key Usage: 
                TLS Web Client Authentication, E-mail Protection

Certificate is to be certified until Jul 12 14:00:14 2017 GMT (375 days)
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

Есть ли переключатель командной строки openssl, который автоматизирует это?

1 ответ1

1

От man ca:

   -batch
       this sets the batch mode. In this mode no questions will be asked
       and all certificates will be certified automatically.

Кроме того, man openssl может сказать об использовании pass: для аргумента пароля:

   pass:password
             the actual password is password. Since the password is
             visible to utilities (like 'ps' under Unix) this form should
             only be used where security is not important.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .