Skip to content

Commit 412b25b

Browse files
committed
Add docs for new reindex.ssl settings
Reindex from remote now supports configurable SSL/TLS (node level) settings. This change adds documentation relating to those settings Relates: elastic#37527 Backport of: elastic#38486
1 parent f33c48c commit 412b25b

File tree

1 file changed

+95
-0
lines changed

1 file changed

+95
-0
lines changed

docs/reference/docs/reindex.asciidoc

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -431,6 +431,8 @@ The `host` parameter must contain a scheme, host, port (e.g.
431431
The `username` and `password` parameters are optional, and when they are present `_reindex`
432432
will connect to the remote Elasticsearch node using basic auth. Be sure to use `https` when
433433
using basic auth or the password will be sent in plain text.
434+
There are a range of <<reindex-ssl,settings>> available to configure the behaviour of the
435+
`https` connection.
434436

435437
Remote hosts have to be explicitly whitelisted in elasticsearch.yaml using the
436438
`reindex.remote.whitelist` property. It can be set to a comma delimited list
@@ -522,6 +524,99 @@ POST _reindex
522524
// TEST[s/^/PUT source\n/]
523525
// TEST[s/otherhost:9200/\${host}/]
524526

527+
[float]
528+
[[reindex-ssl]]
529+
==== Configuring SSL parameters
530+
531+
Reindex from remote supports configurable SSL settings. These must be
532+
specified in the `elasticsearch.yml` file, with the exception of the
533+
secure settings, which you add in the Elasticsearch keystore.
534+
It is not possible to configure SSL in the body of the `_reindex` request.
535+
536+
The following settings are supported:
537+
538+
`reindex.ssl.certificate_authorities`::
539+
List of paths to PEM encoded certificate files that should be trusted.
540+
You cannot specify both `reindex.ssl.certificate_authorities` and
541+
`reindex.ssl.truststore.path`.
542+
543+
`reindex.ssl.truststore.path`::
544+
The path to the Java Keystore file that contains the certificates to trust.
545+
This keystore can be in "JKS" or "PKCS#12" format.
546+
You cannot specify both `reindex.ssl.certificate_authorities` and
547+
`reindex.ssl.truststore.path`.
548+
549+
`reindex.ssl.truststore.password`::
550+
The password to the truststore (`reindex.ssl.truststore.path`).
551+
This setting cannot be used with `reindex.ssl.truststore.secure_password`.
552+
553+
`reindex.ssl.truststore.secure_password` (<<secure-settings,Secure>>)::
554+
The password to the truststore (`reindex.ssl.truststore.path`).
555+
This setting cannot be used with `reindex.ssl.truststore.password`.
556+
557+
`reindex.ssl.truststore.type`::
558+
The type of the truststore (`reindex.ssl.truststore.path`).
559+
Must be either `jks` or `PKCS12`. If the truststore path ends in ".p12", ".pfx"
560+
or "pkcs12", this setting defaults to `PKCS12`. Otherwise, it defaults to `jks`.
561+
562+
`reindex.ssl.verification_mode`::
563+
Indicates the type of verification to protect against man in the middle attacks
564+
and certificate forgery.
565+
One of `full` (verify the hostname and the certificate path), `certificate`
566+
(verify the certificate path, but not the hostname) or `none` (perform no
567+
verification - this is strongly discouraged in production environments).
568+
Defaults to `full`.
569+
570+
`reindex.ssl.certificate`::
571+
Specifies the path to the PEM encoded certificate (or certificate chain) to be
572+
used for HTTP client authentication (if required by the remote cluster)
573+
This setting requires that `reindex.ssl.key` also be set.
574+
You cannot specify both `reindex.ssl.certificate` and `reindex.ssl.keystore.path`.
575+
576+
`reindex.ssl.key`::
577+
Specifies the path to the PEM encoded private key associated with the
578+
certificate used for client authentication (`reindex.ssl.certificate`).
579+
You cannot specify both `reindex.ssl.key` and `reindex.ssl.keystore.path`.
580+
581+
`reindex.ssl.key_passphrase`::
582+
Specifies the passphrase to decrypt the PEM encoded private key
583+
(`reindex.ssl.key`) if it is encrypted.
584+
Cannot be used with `reindex.ssl.secure_key_passphrase`.
585+
586+
`reindex.ssl.secure_key_passphrase` (<<secure-settings,Secure>>)::
587+
Specifies the passphrase to decrypt the PEM encoded private key
588+
(`reindex.ssl.key`) if it is encrypted.
589+
Cannot be used with `reindex.ssl.key_passphrase`.
590+
591+
`reindex.ssl.keystore.path`::
592+
Specifies the path to the keystore that contains a private key and certificate
593+
to be used for HTTP client authentication (if required by the remote cluster).
594+
This keystore can be in "JKS" or "PKCS#12" format.
595+
You cannot specify both `reindex.ssl.key` and `reindex.ssl.keystore.path`.
596+
597+
`reindex.ssl.keystore.type`::
598+
The type of the keystore (`reindex.ssl.keystore.path`). Must be either `jks` or `PKCS12`.
599+
If the keystore path ends in ".p12", ".pfx" or "pkcs12", this setting defaults
600+
to `PKCS12`. Otherwise, it defaults to `jks`.
601+
602+
`reindex.ssl.keystore.password`::
603+
The password to the keystore (`reindex.ssl.keystore.path`). This setting cannot be used
604+
with `reindex.ssl.keystore.secure_password`.
605+
606+
`reindex.ssl.keystore.secure_password` (<<secure-settings,Secure>>)::
607+
The password to the keystore (`reindex.ssl.keystore.path`).
608+
This setting cannot be used with `reindex.ssl.keystore.password`.
609+
610+
`reindex.ssl.keystore.key_password`::
611+
The password for the key in the keystore (`reindex.ssl.keystore.path`).
612+
Defaults to the keystore password. This setting cannot be used with
613+
`reindex.ssl.keystore.secure_key_password`.
614+
615+
`reindex.ssl.keystore.secure_key_password` (<<secure-settings,Secure>>)::
616+
The password for the key in the keystore (`reindex.ssl.keystore.path`).
617+
Defaults to the keystore password. This setting cannot be used with
618+
`reindex.ssl.keystore.key_password`.
619+
525620
[float]
526621
=== URL Parameters
527622

0 commit comments

Comments
 (0)