Project

General

Profile

Download (8.55 KB) Statistics
| Branch: | Tag: | Revision:
1
# $FreeBSD: src/crypto/openssl/apps/openssl.cnf,v 1.6 2004/03/17 17:44:38 nectar Exp $
2
#
3
# OpenSSL example configuration file.
4
# This is mostly being used for generation of certificate requests.
5
#
6
#
7
# This definition stops the following lines choking if HOME isn't
8
# defined.
9
HOME                    = .
10
RANDFILE                = $ENV::HOME/.rnd
11

    
12
# Extra OBJECT IDENTIFIER info:
13
#oid_file               = $ENV::HOME/.oid
14
oid_section             = new_oids
15

    
16
# To use this configuration file with the "-extfile" option of the
17
# "openssl x509" utility, name here the section containing the
18
# X.509v3 extensions to use:
19
# extensions            =
20
# (Alternatively, use a configuration file that has only
21
# X.509v3 extensions in its main [= default] section.)
22

    
23
[ new_oids ]
24

    
25
# We can add new OIDs in here for use by 'ca' and 'req'.
26
# Add a simple OID like this:
27
# testoid1=1.2.3.4
28
# Or use config file substitution like this:
29
# testoid2=${testoid1}.5.6
30

    
31
####################################################################
32
[ ca ]
33
default_ca      = CA_default            # The default ca section
34

    
35
####################################################################
36
[ CA_default ]
37

    
38
dir             = ./demoCA              # Where everything is kept
39
certs           = $dir/certs            # Where the issued certs are kept
40
crl_dir         = $dir/crl              # Where the issued crl are kept
41
database        = $dir/index.txt        # database index file.
42
#unique_subject = no                    # Set to 'no' to allow creation of
43
                                        # several ctificates with same subject.
44
new_certs_dir   = $dir/newcerts         # default place for new certs.
45

    
46
certificate     = $dir/cacert.pem       # The CA certificate
47
serial          = $dir/serial           # The current serial number
48
#crlnumber      = $dir/crlnumber        # the current crl number
49
                                        # must be commented out to leave a V1 CRL
50
crl             = $dir/crl.pem          # The current CRL
51
private_key     = $dir/private/cakey.pem# The private key
52
RANDFILE        = $dir/private/.rand    # private random number file
53

    
54
x509_extensions = usr_cert              # The extentions to add to the cert
55

    
56
# Comment out the following two lines for the "traditional"
57
# (and highly broken) format.
58
name_opt        = ca_default            # Subject Name options
59
cert_opt        = ca_default            # Certificate field options
60

    
61
# Extension copying option: use with caution.
62
# copy_extensions = copy
63

    
64
# Extensions to add to a CRL. Note: Netscape communicator chokes on V2 CRLs
65
# so this is commented out by default to leave a V1 CRL.
66
# crlnumber must also be commented out to leave a V1 CRL.
67
# crl_extensions        = crl_ext
68

    
69
default_days    = 365                   # how long to certify for
70
default_crl_days= 30                    # how long before next CRL
71
default_md      = md5                   # which md to use.
72
preserve        = no                    # keep passed DN ordering
73

    
74
# A few difference way of specifying how similar the request should look
75
# For type CA, the listed attributes must be the same, and the optional
76
# and supplied fields are just that :-)
77
policy          = policy_match
78

    
79
# For the CA policy
80
[ policy_match ]
81
countryName             = match
82
stateOrProvinceName     = match
83
organizationName        = match
84
organizationalUnitName  = optional
85
commonName              = supplied
86
emailAddress            = optional
87

    
88
# For the 'anything' policy
89
# At this point in time, you must list all acceptable 'object'
90
# types.
91
[ policy_anything ]
92
countryName             = optional
93
stateOrProvinceName     = optional
94
localityName            = optional
95
organizationName        = optional
96
organizationalUnitName  = optional
97
commonName              = supplied
98
emailAddress            = optional
99

    
100
####################################################################
101
[ req ]
102
distinguished_name=req_distinguished_name
103
req_extensions = v3_req
104
prompt=no
105

    
106
default_bits            = 1024
107
default_keyfile         = privkey.pem
108
distinguished_name      = req_distinguished_name
109
attributes              = req_attributes
110
x509_extensions = v3_ca # The extentions to add to the self signed cert
111

    
112
# Passwords for private keys if not present they will be prompted for
113
#input_password=""
114
#output_password=""
115

    
116
# This sets a mask for permitted string types. There are several options.
117
# default: PrintableString, T61String, BMPString.
118
# pkix   : PrintableString, BMPString.
119
# utf8only: only UTF8Strings.
120
# nombstr : PrintableString, T61String (no BMPStrings or UTF8Strings).
121
# MASK:XXXX a literal mask value.
122
# WARNING: current versions of Netscape crash on BMPStrings or UTF8Strings
123
# so use this option with caution!
124
string_mask = nombstr
125

    
126
# req_extensions = v3_req # The extensions to add to a certificate request
127

    
128
[ req_distinguished_name ]
129
countryName                     = US
130
#countryName_default            = AU
131
#countryName_min                        = 2
132
#countryName_max                        = 2
133

    
134
stateOrProvinceName             = Somewhere
135
#stateOrProvinceName_default    = Somestate
136

    
137
localityName                    = Somecity
138

    
139
0.organizationName              = CompanyName
140
#0.organizationName_default     = SampleNameDefault
141

    
142
# we can do this but it is not needed normally :-)
143
#1.organizationName             = Second Organization Name (eg, company)
144
#1.organizationName_default     = World Wide Web Pty Ltd
145

    
146
organizationalUnitName          = Organizational Unit Name (eg, section)
147
#organizationalUnitName_default =
148

    
149
commonName                      = Common Name (eg, YOUR name)
150
#commonName_max                 = 64
151

    
152
emailAddress                    = Email Address
153
#emailAddress_max               = 64
154

    
155
# SET-ex3                       = SET extension number 3
156

    
157
[ req_attributes ]
158
challengePassword               = A challenge password
159
#challengePassword_min          = 4
160
#challengePassword_max          = 20
161

    
162
unstructuredName                = An optional company name
163

    
164
[ usr_cert ]
165

    
166
# These extensions are added when 'ca' signs a request.
167

    
168
# This goes against PKIX guidelines but some CAs do it and some software
169
# requires this to avoid interpreting an end user certificate as a CA.
170

    
171
basicConstraints=CA:FALSE
172

    
173
# Here are some examples of the usage of nsCertType. If it is omitted
174
# the certificate can be used for anything *except* object signing.
175

    
176
# This is OK for an SSL server.
177
# nsCertType                    = server
178

    
179
# For an object signing certificate this would be used.
180
# nsCertType = objsign
181

    
182
# For normal client use this is typical
183
# nsCertType = client, email
184

    
185
# and for everything including object signing:
186
# nsCertType = client, email, objsign
187

    
188
# This is typical in keyUsage for a client certificate.
189
# keyUsage = nonRepudiation, digitalSignature, keyEncipherment
190

    
191
# This will be displayed in Netscape's comment listbox.
192
nsComment                       = "OpenSSL Generated Certificate"
193

    
194
# PKIX recommendations harmless if included in all certificates.
195
subjectKeyIdentifier=hash
196
authorityKeyIdentifier=keyid,issuer:always
197

    
198
# This stuff is for subjectAltName and issuerAltname.
199
# Import the email address.
200
# subjectAltName=email:copy
201
# An alternative to produce certificates that aren't
202
# deprecated according to PKIX.
203
# subjectAltName=email:move
204

    
205
# Copy subject details
206
# issuerAltName=issuer:copy
207

    
208
#nsCaRevocationUrl              = http://www.domain.dom/ca-crl.pem
209
#nsBaseUrl
210
#nsRevocationUrl
211
#nsRenewalUrl
212
#nsCaPolicyUrl
213
#nsSslServerName
214

    
215
[ v3_req ]
216

    
217
# Extensions to add to a certificate request
218

    
219
basicConstraints = CA:FALSE
220
keyUsage = nonRepudiation, digitalSignature, keyEncipherment
221

    
222
[ v3_ca ]
223

    
224

    
225
# Extensions for a typical CA
226

    
227

    
228
# PKIX recommendation.
229

    
230
subjectKeyIdentifier=hash
231

    
232
authorityKeyIdentifier=keyid:always,issuer:always
233

    
234
# This is what PKIX recommends but some broken software chokes on critical
235
# extensions.
236
#basicConstraints = critical,CA:true
237
# So we do this instead.
238
basicConstraints = CA:true
239

    
240
# Key usage: this is typical for a CA certificate. However since it will
241
# prevent it being used as an test self-signed certificate it is best
242
# left out by default.
243
# keyUsage = cRLSign, keyCertSign
244

    
245
# Some might want this also
246
# nsCertType = sslCA, emailCA
247

    
248
# Include email address in subject alt name: another PKIX recommendation
249
# subjectAltName=email:copy
250
# Copy issuer details
251
# issuerAltName=issuer:copy
252

    
253
# DER hex encoding of an extension: beware experts only!
254
# obj=DER:02:03
255
# Where 'obj' is a standard or added object
256
# You can even override a supported extension:
257
# basicConstraints= critical, DER:30:03:01:01:FF
258

    
259
[ crl_ext ]
260

    
261
# CRL extensions.
262
# Only issuerAltName and authorityKeyIdentifier make any sense in a CRL.
263

    
264
# issuerAltName=issuer:copy
265
authorityKeyIdentifier=keyid:always,issuer:always
    (1-1/1)