Skip to content

Commit ea277c4

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 8a22a87 commit ea277c4

File tree

1 file changed

+95
-0
lines changed

1 file changed

+95
-0
lines changed

docs/reference/docs/reindex.asciidoc

+95
Original file line numberDiff line numberDiff line change
@@ -427,6 +427,8 @@ The `host` parameter must contain a scheme, host, port (e.g.
427427
The `username` and `password` parameters are optional, and when they are present `_reindex`
428428
will connect to the remote Elasticsearch node using basic auth. Be sure to use `https` when
429429
using basic auth or the password will be sent in plain text.
430+
There are a range of <<reindex-ssl,settings>> available to configure the behaviour of the
431+
`https` connection.
430432

431433
Remote hosts have to be explicitly whitelisted in elasticsearch.yml using the
432434
`reindex.remote.whitelist` property. It can be set to a comma delimited list
@@ -518,6 +520,99 @@ POST _reindex
518520
// TEST[s/^/PUT source\n/]
519521
// TEST[s/otherhost:9200/\${host}/]
520522

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

0 commit comments

Comments
 (0)