Latest update.
This commit is contained in:
+380
-17
@@ -8,8 +8,8 @@ openssl - OpenSSL command line tool
|
||||
|
||||
B<openssl>
|
||||
I<command>
|
||||
[ I<command_opts> ... ]
|
||||
[ I<command_args> ... ]
|
||||
[ I<options> ... ]
|
||||
[ I<parameters> ... ]
|
||||
|
||||
B<openssl>
|
||||
B<list>
|
||||
@@ -21,7 +21,7 @@ B<-digest-algorithms> |
|
||||
B<-mac-algorithms> |
|
||||
B<-public-key-algorithms>
|
||||
|
||||
B<openssl> B<no->I<XXX> [ I<arbitrary options> ]
|
||||
B<openssl> B<no->I<XXX> [ I<options> ]
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
@@ -44,21 +44,22 @@ It can be used for
|
||||
|
||||
=head1 COMMAND SUMMARY
|
||||
|
||||
The B<openssl> program provides a rich variety of sub-commands (I<command> in
|
||||
the SYNOPSIS above), each of which often has a wealth of options and arguments
|
||||
(I<command_opts> and I<command_args> in the SYNOPSIS).
|
||||
The B<openssl> program provides a rich variety of commands (I<command> in
|
||||
the L</SYNOPSIS> above).
|
||||
Each command can have many options and argument parameters, shown above as
|
||||
I<options> and I<parameters>.
|
||||
|
||||
Detailed documentation and use cases for most standard subcommands are available
|
||||
(e.g., L<x509(1)> or L<openssl-x509(1)>).
|
||||
(e.g., L<openssl-x509(1)>).
|
||||
|
||||
Many commands use an external configuration file for some or all of their
|
||||
arguments and have a B<-config> option to specify that file.
|
||||
The default name of the file is F<openssl.cnf> in the default certificate
|
||||
storage area, which can be determined from the L<openssl-version(1)>
|
||||
command.
|
||||
The environment variable B<OPENSSL_CONF> can be used to specify
|
||||
the location of the file.
|
||||
If the environment variable is not specified, then the file is named
|
||||
F<openssl.cnf> in the default certificate storage area, whose value
|
||||
depends on the configuration flags specified when the OpenSSL
|
||||
was built.
|
||||
a different location of the file.
|
||||
See L<openssl-env(7)>.
|
||||
|
||||
The list options B<-standard-commands>, B<-digest-commands>,
|
||||
and B<-cipher-commands> output a list (one entry per line) of the names
|
||||
@@ -85,7 +86,7 @@ availability of ciphers in the B<openssl> program. (B<no->I<XXX> is
|
||||
not able to detect pseudo-commands such as B<quit>,
|
||||
B<list>, or B<no->I<XXX> itself.)
|
||||
|
||||
=head2 Standard Sub-commands
|
||||
=head2 Standard Commands
|
||||
|
||||
=over 4
|
||||
|
||||
@@ -147,7 +148,7 @@ EC parameter manipulation and generation.
|
||||
|
||||
=item B<enc>
|
||||
|
||||
Encoding with Ciphers.
|
||||
Encryption, decryption, and encoding.
|
||||
|
||||
=item B<engine>
|
||||
|
||||
@@ -392,14 +393,13 @@ SM3 Digest
|
||||
|
||||
=back
|
||||
|
||||
=head2 Encoding and Cipher Commands
|
||||
=head2 Encryption, Decryption, and Encoding Commands
|
||||
|
||||
The following aliases provide convenient access to the most used encodings
|
||||
and ciphers.
|
||||
|
||||
Depending on how OpenSSL was configured and built, not all ciphers listed
|
||||
here may be present. See L<openssl-enc(1)> for more information and command
|
||||
usage.
|
||||
here may be present. See L<openssl-enc(1)> for more information.
|
||||
|
||||
=over 4
|
||||
|
||||
@@ -516,6 +516,109 @@ parameters start with a minus sign:
|
||||
|
||||
=back
|
||||
|
||||
=head2 Format Options
|
||||
|
||||
Several OpenSSL commands can take input or generate output in a variety
|
||||
of formats. The list of acceptable formats, and the default, is
|
||||
described in each command documentation. The list of formats is
|
||||
described below. Both uppercase and lowercase are accepted.
|
||||
|
||||
=over 4
|
||||
|
||||
=item B<DER>
|
||||
|
||||
A binary format, encoded or parsed according to Distinguished Encoding Rules
|
||||
(DER) of the ASN.1 data language.
|
||||
|
||||
=item B<ENGINE>
|
||||
|
||||
Used to specify that the cryptographic material is in an OpenSSL B<engine>.
|
||||
An engine must be configured or specified using the B<-engine> option.
|
||||
In addition, the B<-input> flag can be used to name a specific object in
|
||||
the engine.
|
||||
A password, such as the B<-passin> flag often must be specified as well.
|
||||
|
||||
=item B<P12>
|
||||
|
||||
A DER-encoded file containing a PKCS#12 object.
|
||||
It might be necessary to provide a decryption password to retrieve
|
||||
the private key.
|
||||
|
||||
=item B<PEM>
|
||||
|
||||
A text format defined in IETF RFC 1421 and IETF RFC 7468. Briefly, this is
|
||||
a block of base-64 encoding (defined in IETF RFC 4648), with specific
|
||||
lines used to mark the start and end:
|
||||
|
||||
Text before the BEGIN line is ignored.
|
||||
----- BEGIN object-type -----
|
||||
OT43gQKBgQC/2OHZoko6iRlNOAQ/tMVFNq7fL81GivoQ9F1U0Qr+DH3ZfaH8eIkX
|
||||
xT0ToMPJUzWAn8pZv0snA0um6SIgvkCuxO84OkANCVbttzXImIsL7pFzfcwV/ERK
|
||||
UM6j0ZuSMFOCr/lGPAoOQU0fskidGEHi1/kW+suSr28TqsyYZpwBDQ==
|
||||
----- END object-type -----
|
||||
Text after the END line is also ignored
|
||||
|
||||
The I<object-type> must match the type of object that is expected.
|
||||
For example a C<BEGIN X509 CERTIFICATE> will not match if the command
|
||||
is trying to read a private key. The types supported include:
|
||||
|
||||
ANY PRIVATE KEY
|
||||
CERTIFICATE
|
||||
CERTIFICATE REQUEST
|
||||
CMS
|
||||
DH PARAMETERS
|
||||
DSA PARAMETERS
|
||||
DSA PUBLIC KEY
|
||||
EC PARAMETERS
|
||||
EC PRIVATE KEY
|
||||
ECDSA PUBLIC KEY
|
||||
ENCRYPTED PRIVATE KEY
|
||||
PARAMETERS
|
||||
PKCS #7 SIGNED DATA
|
||||
PKCS7
|
||||
PRIVATE KEY
|
||||
PUBLIC KEY
|
||||
RSA PRIVATE KEY
|
||||
SSL SESSION PARAMETERS
|
||||
TRUSTED CERTIFICATE
|
||||
X509 CRL
|
||||
X9.42 DH PARAMETERS
|
||||
|
||||
The following legacy I<object-type>'s are also supported for compatibility
|
||||
with earlier releases:
|
||||
|
||||
DSA PRIVATE KEY
|
||||
NEW CERTIFICATE REQUEST
|
||||
RSA PUBLIC KEY
|
||||
X509 CERTIFICATE
|
||||
|
||||
=item B<SMIME>
|
||||
|
||||
An S/MIME object as described in IETF RFC 8551.
|
||||
Earlier versions were known as CMS and are compatible.
|
||||
Note that the parsing is simple and might fail to parse some legal data.
|
||||
|
||||
=back
|
||||
|
||||
The options to specify the format are as follows. Refer to the individual
|
||||
manpage to see which options are accepted.
|
||||
|
||||
=over 4
|
||||
|
||||
=item B<-inform> I<format>, B<-outform> I<format>
|
||||
|
||||
The format of the input or output streams.
|
||||
|
||||
=item B<-keyform> I<format>
|
||||
|
||||
Format of a private key input source.
|
||||
|
||||
=item B<-CRLform> I<format>
|
||||
|
||||
Format of a CRL input source.
|
||||
|
||||
=back
|
||||
|
||||
=head2 Pass Phrase Options
|
||||
|
||||
Several commands accept password arguments, typically using B<-passin>
|
||||
@@ -597,6 +700,23 @@ See L<openssl-rehash(1)> for information on creating this type of directory.
|
||||
|
||||
Do not use the default directory of trusted certificates.
|
||||
|
||||
=item B<-CAstore> I<uri>
|
||||
|
||||
Use I<uri> as a store of trusted CA certificates. The URI may
|
||||
indicate a single certificate, as well as a collection of them.
|
||||
With URIs in the C<file:> scheme, this acts as B<-CAfile> or
|
||||
B<-CApath>, depending on if the URI indicates a single file or
|
||||
directory.
|
||||
See L<ossl_store-file(7)> for more information on the C<file:> scheme.
|
||||
|
||||
These certificates are also used when building the server certificate
|
||||
chain (for example with L<openssl-s_server(1)>) or client certificate
|
||||
chain (for example with L<openssl-s_time(1)>).
|
||||
|
||||
=item B<-no-CAstore>
|
||||
|
||||
Do not use the default store.
|
||||
|
||||
=back
|
||||
|
||||
=head2 Random State Options
|
||||
@@ -629,8 +749,250 @@ This file can be used in a subsequent command invocation.
|
||||
|
||||
=back
|
||||
|
||||
=head2 Extended Verification Options
|
||||
|
||||
Sometimes there may be more than one certificate chain leading to an
|
||||
end-entity certificate.
|
||||
This usually happens when a root or intermediate CA signs a certificate
|
||||
for another a CA in other organization.
|
||||
Another reason is when a CA might have intermediates that use two different
|
||||
signature formats, such as a SHA-1 and a SHA-256 digest.
|
||||
|
||||
The following options can be used to provide data that will allow the
|
||||
OpenSSL command to generate an alternative chain.
|
||||
|
||||
=over 4
|
||||
|
||||
=item B<-xchain_build>
|
||||
|
||||
Specify whether the application should build the certificate chain to be
|
||||
provided to the server for the extra certificates via the B<-xkey>,
|
||||
B<-xcert>, and B<-xchain> options.
|
||||
|
||||
=item B<-xkey> I<infile>, B<-xcert> I<infile>, B<-xchain>
|
||||
|
||||
Specify an extra certificate, private key and certificate chain. These behave
|
||||
in the same manner as the B<-cert>, B<-key> and B<-cert_chain> options. When
|
||||
specified, the callback returning the first valid chain will be in use by the
|
||||
client.
|
||||
|
||||
=item B<-xcertform> B<DER>|B<PEM>, B<-xkeyform> B<DER>|B<PEM>
|
||||
|
||||
The input format for the extra certificate and key, respectively.
|
||||
See L<openssl(1)/Format Options> for details.
|
||||
|
||||
=back
|
||||
|
||||
=head2 Name Format Options
|
||||
|
||||
OpenSSL provides fine-grain control over how the subject and issuer DN's are
|
||||
displayed.
|
||||
This is specified by using the B<-nameopt> option, which takes a
|
||||
comma-separated list of options from the following set.
|
||||
An option may be preceeded by a minus sign, C<->, to turn it off.
|
||||
The default value is C<oneline>.
|
||||
The first four are the most commonly used.
|
||||
|
||||
=over 4
|
||||
|
||||
=item B<compat>
|
||||
|
||||
Display the name using an old format from previous OpenSSL versions.
|
||||
|
||||
=item B<RFC2253>
|
||||
|
||||
Display the name using the format defined in RFC 2253.
|
||||
It is equivalent to B<esc_2253>, B<esc_ctrl>, B<esc_msb>, B<utf8>,
|
||||
B<dump_nostr>, B<dump_unknown>, B<dump_der>, B<sep_comma_plus>, B<dn_rev>
|
||||
and B<sname>.
|
||||
|
||||
=item B<oneline>
|
||||
|
||||
Display the name in one line, using a format that is more readable
|
||||
RFC 2253.
|
||||
It is equivalent to B<esc_2253>, B<esc_ctrl>, B<esc_msb>, B<utf8>,
|
||||
B<dump_nostr>, B<dump_der>, B<use_quote>, B<sep_comma_plus_space>,
|
||||
B<space_eq> and B<sname> options.
|
||||
|
||||
=item B<multiline>
|
||||
|
||||
Display the name using multiple lines.
|
||||
It is equivalent to B<esc_ctrl>, B<esc_msb>, B<sep_multiline>, B<space_eq>,
|
||||
B<lname> and B<align>.
|
||||
|
||||
=item B<esc_2253>
|
||||
|
||||
Escape the "special" characters in a field, as required by RFC 2253.
|
||||
That is, any of the characters C<,+"E<lt>E<gt>;>, C<#> at the beginning of
|
||||
a string and leading or trailing spaces.
|
||||
|
||||
=item B<esc_2254>
|
||||
|
||||
Escape the "special" characters in a field as required by RFC 2254 in a field.
|
||||
That is, the B<NUL> character and and of C<()*>.
|
||||
|
||||
=item B<esc_ctrl>
|
||||
|
||||
Escape non-printable ASCII characters, codes less than 0x20 (space)
|
||||
or greater than 0x7F (DELETE). They are displayed using RFC 2253 C<\XX>
|
||||
notation where B<XX> are the two hex digits representing the character value.
|
||||
|
||||
=item B<esc_msb>
|
||||
|
||||
Escape any characters with the most significant bit set, that is with
|
||||
values larger than 127, as described in B<esc_ctrl>.
|
||||
|
||||
=item B<use_quote>
|
||||
|
||||
Escapes some characters by surrounding the entire string with quotation
|
||||
marks, C<">.
|
||||
Without this option, individual special characters are preceeded with
|
||||
a backslash character, C<\>.
|
||||
|
||||
=item B<utf8>
|
||||
|
||||
Convert all strings to UTF-8 format first as required by RFC 2253.
|
||||
If the output device is UTF-8 compatible, then using this option (and
|
||||
not setting B<esc_msb>) may give the correct display of multibyte
|
||||
characters.
|
||||
If this option is not set, then multibyte characters larger than 0xFF
|
||||
will be output as C<\UXXXX> for 16 bits or C<\WXXXXXXXX> for 32 bits.
|
||||
In addition, any UTF8Strings will be converted to their character form first.
|
||||
|
||||
=item B<ignore_type>
|
||||
|
||||
This option does not attempt to interpret multibyte characters in any
|
||||
way. That is, the content octets are merely dumped as though one octet
|
||||
represents each character. This is useful for diagnostic purposes but
|
||||
will result in rather odd looking output.
|
||||
|
||||
=item B<show_type>
|
||||
|
||||
Display the type of the ASN1 character string before the value,
|
||||
such as C<BMPSTRING: Hello World>.
|
||||
|
||||
=item B<dump_der>
|
||||
|
||||
Any fields that would be output in hex format are displayed using
|
||||
the DER encoding of the field.
|
||||
If not set, just the content octets are displayed.
|
||||
Either way, the B<#XXXX...> format of RFC 2253 is used.
|
||||
|
||||
=item B<dump_nostr>
|
||||
|
||||
Dump non-character strings, such as ASN.1 B<OCTET STRING>.
|
||||
If this option is not set, then non character string types will be displayed
|
||||
as though each content octet represents a single character.
|
||||
|
||||
=item B<dump_all>
|
||||
|
||||
Dump all fields. When this used with B<dump_der>, this allows the
|
||||
DER encoding of the structure to be unambiguously determined.
|
||||
|
||||
=item B<dump_unknown>
|
||||
|
||||
Dump any field whose OID is not recognised by OpenSSL.
|
||||
|
||||
=item B<sep_comma_plus>, B<sep_comma_plus_space>, B<sep_semi_plus_space>,
|
||||
B<sep_multiline>
|
||||
|
||||
Specify the field separators. The first word is used between the
|
||||
Relative Distinguished Names (RDNs) and the second is between
|
||||
multiple Attribute Value Assertions (AVAs). Multiple AVAs are
|
||||
very rare and their use is discouraged.
|
||||
The options ending in "space" additionally place a space after the separator to make it more readable.
|
||||
The B<sep_multiline> starts each field on its own line, and uses "plus space"
|
||||
for the AVA separator.
|
||||
It also indents the fields by four characters.
|
||||
The default value is B<sep_comma_plus_space>.
|
||||
|
||||
=item B<dn_rev>
|
||||
|
||||
Reverse the fields of the DN as required by RFC 2253.
|
||||
This also reverses the order of multiple AVAs in a field, but this is
|
||||
permissible as there is no ordering on values.
|
||||
|
||||
=item B<nofname>, B<sname>, B<lname>, B<oid>
|
||||
|
||||
Specify how the field name is displayed.
|
||||
B<nofname> does not display the field at all.
|
||||
B<sname> uses the "short name" form (CN for commonName for example).
|
||||
B<lname> uses the long form.
|
||||
B<oid> represents the OID in numerical form and is useful for
|
||||
diagnostic purpose.
|
||||
|
||||
=item B<align>
|
||||
|
||||
Align field values for a more readable output. Only usable with
|
||||
B<sep_multiline>.
|
||||
|
||||
=item B<space_eq>
|
||||
|
||||
Places spaces round the equal sign, C<=>, character which follows the field
|
||||
name.
|
||||
|
||||
=back
|
||||
|
||||
=head2 TLS Version Options
|
||||
|
||||
Several commands use SSL, TLS, or DTLS. By default, the commands use TLS and
|
||||
clients will offer the lowest and highest protocol version they support,
|
||||
and servers will pick the highest version that the client offers that is also
|
||||
supported by the server.
|
||||
|
||||
The options below can be used to limit which protocol versions are used,
|
||||
and whether TCP (SSL and TLS) or UDP (DTLS) is used.
|
||||
Note that not all protocols and flags may be available, depending on how
|
||||
OpenSSL was built.
|
||||
|
||||
=over 4
|
||||
|
||||
=item B<-ssl3>, B<-tls1>, B<-tls1_1>, B<-tls1_2>, B<-tls1_3>, B<-no_ssl3>, B<-no_tls1>, B<-no_tls1_1>, B<-no_tls1_2>, B<-no_tls1_3>
|
||||
|
||||
These options require or disable the use of the specified SSL or TLS protocols.
|
||||
When a specific TLS version is required, only that version will be offered or
|
||||
accepted.
|
||||
Only one specific protocol can be given and it cannot be combined with any of
|
||||
the B<no_> options.
|
||||
|
||||
=item B<-dtls>, B<-dtls1>, B<-dtls1_2>
|
||||
|
||||
These options specify to use DTLS instead of DLTS.
|
||||
With B<-dtls>, clients will negotiate any supported DTLS protocol version.
|
||||
Use the B<-dtls1> or B<-dtls1_2> options to support only DTLS1.0 or DTLS1.2,
|
||||
respectively.
|
||||
|
||||
=back
|
||||
|
||||
=head2 Engine Options
|
||||
|
||||
=over 4
|
||||
|
||||
=item B<-engine> I<id>
|
||||
|
||||
Use the engine identified by I<id> and use all the methods it
|
||||
implements (algorithms, key storage, etc.), unless specified otherwise in
|
||||
the command-specific documentation or it is configured to do so, as described
|
||||
in L<config(5)/Engine Configuration Module>.
|
||||
|
||||
=back
|
||||
|
||||
=head1 ENVIRONMENT
|
||||
|
||||
The OpenSSL library can be take some configuration parameters from the
|
||||
environment. Some of these variables are listed below. For information
|
||||
about specific commands, see L<openssl-engine(1)>, L<openssl-provider(1)>,
|
||||
L<openssl-rehash(1)>, and L<tsget(1)>.
|
||||
|
||||
For information about the use of environment variables in configuration,
|
||||
see L<config(5)/ENVIRONMENT>.
|
||||
|
||||
For information about querying or specifying CPU architecture flags, see
|
||||
L<OPENSSL_ia32cap(3)>, and L<OPENSSL_s390xcap(3)>.
|
||||
|
||||
For information about all environment variables used by the OpenSSL libraries,
|
||||
see L<openssl-env(7)>.
|
||||
|
||||
=over 4
|
||||
|
||||
=item B<OPENSSL_TRACE=>I<name>[,...]
|
||||
@@ -749,6 +1111,7 @@ L<openssl-version(1)>,
|
||||
L<openssl-x509(1)>,
|
||||
L<config(5)>,
|
||||
L<crypto(7)>,
|
||||
L<openssl-env(7)>.
|
||||
L<ssl(7)>,
|
||||
L<x509v3_config(5)>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user