Merge branch 'acerts'
[strongswan.git] / src / pki / man / pki---issue.1.in
1 .TH "PKI \-\-ISSUE" 1 "2013-08-12" "@PACKAGE_VERSION@" "strongSwan"
2 .
3 .SH "NAME"
4 .
5 pki \-\-issue \- Issue a certificate using a CA certificate and key
6 .
7 .SH "SYNOPSIS"
8 .
9 .SY pki\ \-\-issue
10 .OP \-\-in file
11 .OP \-\-type type
12 .BI \-\-cakey\~ file |\-\-cakeyid\~ hex
13 .BI \-\-cacert\~ file
14 .OP \-\-dn subject-dn
15 .OP \-\-san subjectAltName
16 .OP \-\-lifetime days
17 .OP \-\-not-before datetime
18 .OP \-\-not-after datetime
19 .OP \-\-serial hex
20 .OP \-\-flag flag
21 .OP \-\-digest digest
22 .OP \-\-ca
23 .OP \-\-crl uri\ \fR[\fB\-\-crlissuer\ \fIissuer\fR]
24 .OP \-\-ocsp uri
25 .OP \-\-pathlen len
26 .OP \-\-nc-permitted name
27 .OP \-\-nc-excluded name
28 .OP \-\-policy\-mapping mapping
29 .OP \-\-policy\-explicit len
30 .OP \-\-policy\-inhibit len
31 .OP \-\-policy\-any len
32 .OP \-\-cert\-policy oid\ \fR[\fB\-\-cps\-uri\ \fIuri\fR]\ \fR[\fB\-\-user\-notice\ \fItext\fR]
33 .OP \-\-outform encoding
34 .OP \-\-debug level
35 .YS
36 .
37 .SY pki\ \-\-issue
38 .BI \-\-options\~ file
39 .YS
40 .
41 .SY "pki \-\-issue"
42 .B \-h
43 |
44 .B \-\-help
45 .YS
46 .
47 .SH "DESCRIPTION"
48 .
49 This sub-command of
50 .BR pki (1)
51 is used to issue a certificate using a CA certificate and private key.
52 .
53 .SH "OPTIONS"
54 .
55 .TP
56 .B "\-h, \-\-help"
57 Print usage information with a summary of the available options.
58 .TP
59 .BI "\-v, \-\-debug " level
60 Set debug level, default: 1.
61 .TP
62 .BI "\-+, \-\-options " file
63 Read command line options from \fIfile\fR.
64 .TP
65 .BI "\-i, \-\-in " file
66 Public key or PKCS#10 certificate request file to issue. If not given the
67 key/request is read from \fISTDIN\fR.
68 .TP
69 .BI "\-t, \-\-type " type
70 Type of the input. Either \fIpub\fR for a public key, or \fIpkcs10\fR for a
71 PKCS#10 certificate request, defaults to \fIpub\fR.
72 .TP
73 .BI "\-k, \-\-cakey " file
74 CA private key file. Either this or
75 .B \-\-cakeyid
76 is required.
77 .TP
78 .BI "\-x, \-\-cakeyid " hex
79 Key ID of a CA private key on a smartcard. Either this or
80 .B \-\-cakey
81 is required.
82 .TP
83 .BI "\-c, \-\-cacert " file
84 CA certificate file. Required.
85 .TP
86 .BI "\-d, \-\-dn " subject-dn
87 Subject distinguished name (DN) of the issued certificate.
88 .TP
89 .BI "\-a, \-\-san " subjectAltName
90 subjectAltName extension to include in certificate. Can be used multiple times.
91 .TP
92 .BI "\-l, \-\-lifetime " days
93 Days the certificate is valid, default: 1095. Ignored if both
94 an absolute start and end time are given.
95 .TP
96 .BI "\-F, \-\-not-before " datetime
97 Absolute time when the validity of the certificate begins. The datetime format
98 is defined by the
99 .B \-\-dateform
100 option.
101 .TP
102 .BI "\-T, \-\-not-after " datetime
103 Absolute time when the validity of the certificate ends. The datetime format is
104 defined by the
105 .B \-\-dateform
106 option.
107 .TP
108 .BI "\-D, \-\-dateform " form
109 strptime(3) format for the
110 .B \-\-not\-before
111 and
112 .B \-\-not\-after
113 options, default:
114 .B %d.%m.%y %T
115 .TP
116 .BI "\-s, \-\-serial " hex
117 Serial number in hex. It is randomly allocated by default.
118 .TP
119 .BI "\-e, \-\-flag " flag
120 Add extendedKeyUsage flag. One of \fIserverAuth\fR, \fIclientAuth\fR,
121 \fIcrlSign\fR, or \fIocspSigning\fR. Can be used multiple times.
122 .TP
123 .BI "\-g, \-\-digest " digest
124 Digest to use for signature creation. One of \fImd5\fR, \fIsha1\fR,
125 \fIsha224\fR, \fIsha256\fR, \fIsha384\fR, or \fIsha512\fR. Defaults to
126 \fIsha1\fR.
127 .TP
128 .BI "\-f, \-\-outform " encoding
129 Encoding of the created certificate file. Either \fIder\fR (ASN.1 DER) or
130 \fIpem\fR (Base64 PEM), defaults to \fIder\fR.
131 .TP
132 .BI "\-b, \-\-ca"
133 Include CA basicConstraint extension in certificate.
134 .TP
135 .BI "\-u, \-\-crl " uri
136 CRL distribution point URI to include in certificate. Can be used multiple
137 times.
138 .TP
139 .BI "\-I, \-\-crlissuer " issuer
140 Optional CRL issuer for the CRL at the preceding distribution point.
141 .TP
142 .BI "\-o, \-\-ocsp " uri
143 OCSP AuthorityInfoAccess URI to include in certificate. Can be used multiple
144 times.
145 .TP
146 .BI "\-p, \-\-pathlen " len
147 Set path length constraint.
148 .TP
149 .BI "\-n, \-\-nc-permitted " name
150 Add permitted NameConstraint extension to certificate.
151 .TP
152 .BI "\-N, \-\-nc-excluded " name
153 Add excluded NameConstraint extension to certificate.
154 .TP
155 .BI "\-M, \-\-policy-mapping " issuer-oid:subject-oid
156 Add policyMapping from issuer to subject OID.
157 .TP
158 .BI "\-E, \-\-policy-explicit " len
159 Add requireExplicitPolicy constraint.
160 .TP
161 .BI "\-H, \-\-policy-inhibit " len
162 Add inhibitPolicyMapping constraint.
163 .TP
164 .BI "\-A, \-\-policy-any " len
165 Add inhibitAnyPolicy constraint.
166 .PP
167 .SS "Certificate Policy"
168 Multiple certificatePolicy extensions can be added. Each with the following
169 information:
170 .TP
171 .BI "\-P, \-\-cert-policy " oid
172 OID to include in certificatePolicy extension. Required.
173 .TP
174 .BI "\-C, \-\-cps-uri " uri
175 Certification Practice statement URI for certificatePolicy.
176 .TP
177 .BI "\-U, \-\-user-notice " text
178 User notice for certificatePolicy.
179 .
180 .SH "EXAMPLES"
181 .
182 To save repetitive typing, command line options can be stored in files.
183 Lets assume
184 .I pki.opt
185 contains the following contents:
186 .PP
187 .EX
188   --cacert ca_cert.der --cakey ca_key.der --digest sha256
189   --flag serverAuth --lifetime 1460 --type pkcs10
190 .EE
191 .PP
192 Then the following command can be used to issue a certificate based on a
193 given PKCS#10 certificate request and the options above:
194 .PP
195 .EX
196   pki --issue --options pki.opt --in req.der > cert.der
197 .EE
198 .PP
199 .
200 .SH "SEE ALSO"
201 .
202 .BR pki (1)