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