blob: 528c14d286e22263a7e5c602301d770800051505 [file] [log] [blame]
Instrumental31d847e2018-03-26 14:17:19 -07001# OpenSSL root CA configuration file.
2# Copy to `/opt/app/osaaf/CA/openssl.cnf`.
3
4[ ca ]
5# `man ca`
6default_ca = CA_default
7
8[ CA_default ]
9# Directory and file locations.
10dir = .
11certs = $dir/certs
12crl_dir = $dir/crl
13new_certs_dir = $dir/newcerts
14database = $dir/index.txt
15serial = $dir/serial
16RANDFILE = $dir/private/.rand
17
18# The root key and root certificate.
19private_key = $dir/private/ca.key
20certificate = $dir/certs/ca.crt
21
22# For certificate revocation lists.
23crlnumber = $dir/crlnumber
24crl = $dir/crl/ca.crl.pem
25crl_extensions = crl_ext
26default_crl_days = 30
27
28# SHA-1 is deprecated, so use SHA-2 instead.
29default_md = sha256
30
31name_opt = ca_default
32cert_opt = ca_default
33default_days = 60
34preserve = no
35policy = policy_strict
36
37[ policy_strict ]
38# The root CA should only sign intermediate certificates that match.
39# See the POLICY FORMAT section of `man ca`.
40countryName = match
41stateOrProvinceName = optional
42organizationName = match
43organizationalUnitName = supplied
44commonName = supplied
45
46[ policy_loose ]
47# Allow the intermediate CA to sign a more diverse range of certificates.
48# See the POLICY FORMAT section of the `ca` man page.
49countryName = optional
50stateOrProvinceName = optional
51localityName = optional
52organizationName = optional
53organizationalUnitName = optional
54commonName = supplied
55emailAddress = optional
56
57[ req ]
58# Options for the `req` tool (`man req`).
59default_bits = 2048
60distinguished_name = req_distinguished_name
61string_mask = utf8only
62
63# SHA-1 is deprecated, so use SHA-2 instead.
64default_md = sha256
65
66# Extension to add when the -x509 option is used.
67x509_extensions = v3_ca
68
69[ req_distinguished_name ]
70# See <https://en.wikipedia.org/wiki/Certificate_signing_request>.
71countryName = Country Name (2 letter code)
72stateOrProvinceName = State or Province Name
73localityName = Locality Name
740.organizationName = Organization Name
75organizationalUnitName = Organizational Unit Name
76commonName = Common Name
77emailAddress = Email Address
78
79# Optionally, specify some defaults.
80countryName_default =
81stateOrProvinceName_default =
82localityName_default =
830.organizationName_default =
84organizationalUnitName_default =
85emailAddress_default =
86
87[ v3_ca ]
88# Extensions for a typical CA (`man x509v3_config`).
89subjectKeyIdentifier = hash
90authorityKeyIdentifier = keyid:always,issuer
91basicConstraints = critical, CA:true
92keyUsage = critical, digitalSignature, cRLSign, keyCertSign
93
94[ v3_intermediate_ca ]
95# Extensions for a typical intermediate CA (`man x509v3_config`).
96subjectKeyIdentifier = hash
97authorityKeyIdentifier = keyid:always,issuer
98basicConstraints = critical, CA:true, pathlen:0
99keyUsage = critical, digitalSignature, cRLSign, keyCertSign
100
101[ usr_cert ]
102# Extensions for client certificates (`man x509v3_config`).
103basicConstraints = CA:FALSE
104nsCertType = client, email
105nsComment = "OpenSSL Generated Client Certificate"
106subjectKeyIdentifier = hash
107authorityKeyIdentifier = keyid,issuer
108keyUsage = critical, nonRepudiation, digitalSignature, keyEncipherment
109extendedKeyUsage = clientAuth, emailProtection
110
111[ server_cert ]
112# Extensions for server certificates (`man x509v3_config`).
113basicConstraints = CA:FALSE
114nsCertType = server, client
115nsComment = "OpenSSL Generated Server Certificate"
116subjectKeyIdentifier = hash
117authorityKeyIdentifier = keyid,issuer:always
118keyUsage = critical, digitalSignature, keyEncipherment, nonRepudiation
119extendedKeyUsage = serverAuth, clientAuth
120
121[ crl_ext ]
122# Extension for CRLs (`man x509v3_config`).
123authorityKeyIdentifier=keyid:always
124
125[ ocsp ]
126# Extension for OCSP signing certificates (`man ocsp`).
127basicConstraints = CA:FALSE
128subjectKeyIdentifier = hash
129authorityKeyIdentifier = keyid,issuer
130keyUsage = critical, digitalSignature
131extendedKeyUsage = critical, OCSPSigning