Przełącznik poleceń Openssl do automatyzacji podpisywania certyfikatów

1

Wiem, że podczas pracy z openssl możesz ominąć interaktywne dane wejściowe:

  • -passin pass: cokolwiek
  • -passout pass: cokolwiek
  • -subj "/ C = pa / ST = pa / L = pa / O = pa / OU = pa / CN = pa"

Jednak podczas podpisywania certyfikatu, jak w przypadku:

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

Potrzebuję dwa razy wpisać „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

Czy istnieje przełącznik linii poleceń openssl, który to automatyzuje ?

Konrad Eisele
źródło

Odpowiedzi:

1

Z man ca:

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

Tak na marginesie, man openssl ma to do powiedzenia na temat używania pass: dla argumentu frazy:

   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.
garethTheRed
źródło