@@ -13,21 +13,22 @@ names (SAN) that correspond to the node's IP address and DNS name so that
13
13
hostname verification can be performed.
14
14
15
15
In order to simplify the process of generating certificates for the Elastic
16
- Stack, a command line tool, {ref}/certutil.html[`certutil`] has been included
17
- with {xpack}. This tool takes care of generating a CA and signing certificates
18
- with the CA. `certutil` can be used interactively or in a silent mode through
19
- the use of an input file. The `certutil` tool also supports generation of
20
- certificate signing requests (CSR), so that a commercial- or
21
- organization-specific CA can be used to sign the certificates. For example:
16
+ Stack, a command line tool, {ref}/certutil.html[`elasticsearch-certutil`] has been
17
+ included with {xpack}. This tool takes care of generating a CA and signing
18
+ certificates with the CA. `elasticsearch-certutil` can be used interactively or
19
+ in a silent mode through the use of an input file. The `elasticsearch-certutil`
20
+ tool also supports generation of certificate signing requests (CSR), so that a
21
+ commercial- or organization-specific CA can be used to sign the certificates.
22
+ For example:
22
23
23
24
. Optional: Create a certificate authority for your {es} cluster.
24
25
+
25
26
--
26
- For example, use the `certutil ca` command:
27
+ For example, use the `elasticsearch- certutil ca` command:
27
28
28
29
[source,shell]
29
30
----------------------------------------------------------
30
- bin/x-pack/ certutil ca
31
+ bin/elasticsearch- certutil ca
31
32
----------------------------------------------------------
32
33
33
34
You can configure the cluster to trust all nodes that have a certificate that
@@ -37,41 +38,43 @@ The command outputs a single file, with a default name of `elastic-stack-ca.p12`
37
38
This file is a PKCS#12 keystore that contains the public certificate for your CA
38
39
and the private key that is used to sign the certificates for each node.
39
40
40
- The `certutil` command also prompts you for a password to protect the file and
41
- key. If you plan to add more nodes to your cluster in the future, retain a copy
42
- of the file and remember its password.
41
+ The `elasticsearch- certutil` command also prompts you for a password to protect
42
+ the file and key. If you plan to add more nodes to your cluster in the future,
43
+ retain a copy of the file and remember its password.
43
44
--
44
45
45
46
. Generate a certificate and private key for for each node in your cluster.
46
47
+
47
48
--
48
- For example, use the `certutil cert` command:
49
+ For example, use the `elasticsearch- certutil cert` command:
49
50
50
51
[source,shell]
51
52
----------------------------------------------------------
52
- bin/x-pack/ certutil cert --ca elastic-stack-ca.p12
53
+ bin/elasticsearch- certutil cert --ca elastic-stack-ca.p12
53
54
----------------------------------------------------------
54
55
The output is a single PKCS#12 keystore that includes the node certificate, node
55
56
key, and CA certificate.
56
57
57
58
You are also prompted for a password. You can enter a password for your
58
59
certificate and key, or you can leave the password blank by pressing Enter.
59
60
60
- By default `certutil` generates certificates that have no hostname information
61
- in them (that is, they do not have any Subject Alternative Name fields).
62
- This means that you can use the certificate for every node in your cluster, but
63
- you must turn off hostname verification as shown in the configuration below.
61
+ By default `elasticsearch-certutil` generates certificates that have no hostname
62
+ information in them (that is, they do not have any Subject Alternative Name
63
+ fields). This means that you can use the certificate for every node in your
64
+ cluster, but you must turn off hostname verification as shown in the
65
+ configuration below.
64
66
65
67
If you want to use hostname verification within your cluster, run the
66
- `certutil cert` command once for each of your nodes and provide the `--name`,
67
- `--dns` and `--ip` options.
68
+ `elasticsearch- certutil cert` command once for each of your nodes and provide
69
+ the `--name`, `--dns` and `--ip` options.
68
70
69
71
NOTE: You should secure the output files, since they contain the private keys
70
72
for your instance.
71
73
72
74
Alternatively, if you want to use a commercial or organization-specific CA,
73
- you can use the `certutil csr` command to generate certificate signing requests
74
- (CSR) for the nodes in your cluster. For more information, see <<certutil>>.
75
+ you can use the `elasticsearch-certutil csr` command to generate certificate
76
+ signing requests (CSR) for the nodes in your cluster. For more information, see
77
+ <<certutil>>.
75
78
--
76
79
77
80
. Copy the node certificate to the appropriate locations.
@@ -85,8 +88,9 @@ For each additional Elastic product that you want to configure, copy the
85
88
certificates to the relevant configuration directory.
86
89
--
87
90
88
- NOTE: If you choose not to use `certutil`, the certificates that you obtain must
89
- allow for both `clientAuth` and `serverAuth` if the extended key usage extension
90
- is present. The certificates need to be in PEM or PKCS#12 format. Although not
91
- required, it is highly recommended that the certificate contain the DNS names
92
- and/or IP addresses of the node so that hostname verification can be used.
91
+ NOTE: If you choose not to use `elasticsearch-certutil`, the certificates that
92
+ you obtain must allow for both `clientAuth` and `serverAuth` if the extended key
93
+ usage extension is present. The certificates need to be in PEM or PKCS#12
94
+ format. Although not required, it is highly recommended that the certificate
95
+ contain the DNS names and/or IP addresses of the node so that hostname
96
+ verification can be used.
0 commit comments