192 |
- |
1 |
# For use with Easy-RSA 3.0+ and OpenSSL or LibreSSL
|
|
|
2 |
|
|
|
3 |
####################################################################
|
|
|
4 |
[ ca ]
|
|
|
5 |
default_ca = CA_default # The default ca section
|
|
|
6 |
|
|
|
7 |
####################################################################
|
|
|
8 |
[ CA_default ]
|
|
|
9 |
|
|
|
10 |
dir = /etc/openvpn/easy-rsa/pki # Where everything is kept
|
|
|
11 |
certs = /etc/openvpn/easy-rsa/pki # Where the issued certs are kept
|
|
|
12 |
crl_dir = /etc/openvpn/easy-rsa/pki # Where the issued crl are kept
|
|
|
13 |
database = /etc/openvpn/easy-rsa/pki/index.txt # database index file.
|
|
|
14 |
new_certs_dir = /etc/openvpn/easy-rsa/pki/certs_by_serial # default place for new certs.
|
|
|
15 |
|
|
|
16 |
certificate = /etc/openvpn/easy-rsa/pki/ca.crt # The CA certificate
|
|
|
17 |
serial = /etc/openvpn/easy-rsa/pki/serial # The current serial number
|
|
|
18 |
crl = /etc/openvpn/easy-rsa/pki/crl.pem # The current CRL
|
|
|
19 |
private_key = /etc/openvpn/easy-rsa/pki/private/ca.key # The private key
|
|
|
20 |
RANDFILE = /etc/openvpn/easy-rsa/pki/.rand # private random number file
|
|
|
21 |
|
|
|
22 |
x509_extensions = basic_exts # The extensions to add to the cert
|
|
|
23 |
|
|
|
24 |
# This allows a V2 CRL. Ancient browsers don't like it, but anything Easy-RSA
|
|
|
25 |
# is designed for will. In return, we get the Issuer attached to CRLs.
|
|
|
26 |
crl_extensions = crl_ext
|
|
|
27 |
|
|
|
28 |
default_days = 825 # how long to certify for
|
|
|
29 |
default_crl_days= 180 # how long before next CRL
|
|
|
30 |
default_md = sha256 # use public key default MD
|
|
|
31 |
preserve = no # keep passed DN ordering
|
|
|
32 |
|
|
|
33 |
# This allows to renew certificates which have not been revoked
|
|
|
34 |
unique_subject = no
|
|
|
35 |
|
|
|
36 |
# A few different ways of specifying how similar the request should look
|
|
|
37 |
# For type CA, the listed attributes must be the same, and the optional
|
|
|
38 |
# and supplied fields are just that :-)
|
|
|
39 |
policy = policy_anything
|
|
|
40 |
|
|
|
41 |
# For the 'anything' policy, which defines allowed DN fields
|
|
|
42 |
[ policy_anything ]
|
|
|
43 |
countryName = optional
|
|
|
44 |
stateOrProvinceName = optional
|
|
|
45 |
localityName = optional
|
|
|
46 |
organizationName = optional
|
|
|
47 |
organizationalUnitName = optional
|
|
|
48 |
commonName = supplied
|
|
|
49 |
name = optional
|
|
|
50 |
emailAddress = optional
|
|
|
51 |
|
|
|
52 |
####################################################################
|
|
|
53 |
# Easy-RSA request handling
|
|
|
54 |
# We key off $DN_MODE to determine how to format the DN
|
|
|
55 |
[ req ]
|
|
|
56 |
default_bits = 2048
|
|
|
57 |
default_keyfile = privkey.pem
|
|
|
58 |
default_md = sha256
|
|
|
59 |
distinguished_name = cn_only
|
|
|
60 |
x509_extensions = easyrsa_ca # The extensions to add to the self signed cert
|
|
|
61 |
|
|
|
62 |
# A placeholder to handle the $EXTRA_EXTS feature:
|
|
|
63 |
#%EXTRA_EXTS% # Do NOT remove or change this line as $EXTRA_EXTS support requires it
|
|
|
64 |
|
|
|
65 |
####################################################################
|
|
|
66 |
# Easy-RSA DN (Subject) handling
|
|
|
67 |
|
|
|
68 |
# Easy-RSA DN for cn_only support:
|
|
|
69 |
[ cn_only ]
|
|
|
70 |
commonName = Common Name (eg: your user, host, or server name)
|
|
|
71 |
commonName_max = 64
|
|
|
72 |
commonName_default = cn_EpupgCJsBWfB7fFb
|
|
|
73 |
|
|
|
74 |
# Easy-RSA DN for org support:
|
|
|
75 |
[ org ]
|
|
|
76 |
countryName = Country Name (2 letter code)
|
|
|
77 |
countryName_default = US
|
|
|
78 |
countryName_min = 2
|
|
|
79 |
countryName_max = 2
|
|
|
80 |
|
|
|
81 |
stateOrProvinceName = State or Province Name (full name)
|
|
|
82 |
stateOrProvinceName_default = California
|
|
|
83 |
|
|
|
84 |
localityName = Locality Name (eg, city)
|
|
|
85 |
localityName_default = San Francisco
|
|
|
86 |
|
|
|
87 |
0.organizationName = Organization Name (eg, company)
|
|
|
88 |
0.organizationName_default = Copyleft Certificate Co
|
|
|
89 |
|
|
|
90 |
organizationalUnitName = Organizational Unit Name (eg, section)
|
|
|
91 |
organizationalUnitName_default = My Organizational Unit
|
|
|
92 |
|
|
|
93 |
commonName = Common Name (eg: your user, host, or server name)
|
|
|
94 |
commonName_max = 64
|
|
|
95 |
commonName_default = cn_EpupgCJsBWfB7fFb
|
|
|
96 |
|
|
|
97 |
emailAddress = Email Address
|
|
|
98 |
emailAddress_default = me@example.net
|
|
|
99 |
emailAddress_max = 64
|
|
|
100 |
|
|
|
101 |
####################################################################
|
|
|
102 |
# Easy-RSA cert extension handling
|
|
|
103 |
|
|
|
104 |
# This section is effectively unused as the main script sets extensions
|
|
|
105 |
# dynamically. This core section is left to support the odd usecase where
|
|
|
106 |
# a user calls openssl directly.
|
|
|
107 |
[ basic_exts ]
|
|
|
108 |
basicConstraints = CA:FALSE
|
|
|
109 |
subjectKeyIdentifier = hash
|
|
|
110 |
authorityKeyIdentifier = keyid,issuer:always
|
|
|
111 |
|
|
|
112 |
# The Easy-RSA CA extensions
|
|
|
113 |
[ easyrsa_ca ]
|
|
|
114 |
|
|
|
115 |
# PKIX recommendations:
|
|
|
116 |
|
|
|
117 |
subjectKeyIdentifier=hash
|
|
|
118 |
authorityKeyIdentifier=keyid:always,issuer:always
|
|
|
119 |
|
|
|
120 |
# This could be marked critical, but it's nice to support reading by any
|
|
|
121 |
# broken clients who attempt to do so.
|
|
|
122 |
basicConstraints = CA:true
|
|
|
123 |
|
|
|
124 |
# Limit key usage to CA tasks. If you really want to use the generated pair as
|
|
|
125 |
# a self-signed cert, comment this out.
|
|
|
126 |
keyUsage = cRLSign, keyCertSign
|
|
|
127 |
|
|
|
128 |
# nsCertType omitted by default. Let's try to let the deprecated stuff die.
|
|
|
129 |
# nsCertType = sslCA
|
|
|
130 |
|
|
|
131 |
# CRL extensions.
|
|
|
132 |
[ crl_ext ]
|
|
|
133 |
|
|
|
134 |
# Only issuerAltName and authorityKeyIdentifier make any sense in a CRL.
|
|
|
135 |
|
|
|
136 |
# issuerAltName=issuer:copy
|
|
|
137 |
authorityKeyIdentifier=keyid:always,issuer:always
|
|
|
138 |
|