common-defs.asciidoc 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. tag::ssl-certificate[]
  2. Specifies the path for the PEM encoded certificate (or certificate chain) that is
  3. associated with the key.
  4. +
  5. This setting can be used only if `ssl.key` is set.
  6. end::ssl-certificate[]
  7. tag::ssl-certificate-authorities[]
  8. List of paths to PEM encoded certificate files that should be trusted.
  9. +
  10. This setting and `ssl.truststore.path` cannot be used at the same time.
  11. end::ssl-certificate-authorities[]
  12. tag::ssl-cipher-suites-values[]
  13. Supported cipher suites vary depending on which version of Java you use. For
  14. example, for version 12 the default value is `TLS_AES_256_GCM_SHA384`,
  15. `TLS_AES_128_GCM_SHA256`, `TLS_CHACHA20_POLY1305_SHA256`,
  16. `TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384`, `TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256`,
  17. `TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384`, `TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256`,
  18. `TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256`, `TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256`,
  19. `TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384`, `TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256`,
  20. `TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384`, `TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256`,
  21. `TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA`, `TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA`,
  22. `TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA`, `TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA`,
  23. `TLS_RSA_WITH_AES_256_GCM_SHA384`, `TLS_RSA_WITH_AES_128_GCM_SHA256`,
  24. `TLS_RSA_WITH_AES_256_CBC_SHA256`, `TLS_RSA_WITH_AES_128_CBC_SHA256`,
  25. `TLS_RSA_WITH_AES_256_CBC_SHA`, `TLS_RSA_WITH_AES_128_CBC_SHA`.
  26. +
  27. For more information, see Oracle's
  28. https://docs.oracle.com/en/java/javase/11/security/oracle-providers.html#GUID-7093246A-31A3-4304-AC5F-5FB6400405E2[Java Cryptography Architecture documentation].
  29. end::ssl-cipher-suites-values[]
  30. tag::ssl-cipher-suites-values-java11[]
  31. Supported cipher suites vary depending on which version of Java you use. For
  32. example, for version 11 the default value is `TLS_AES_256_GCM_SHA384`,
  33. `TLS_AES_128_GCM_SHA256`, `TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384`,
  34. `TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256`, `TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384`,
  35. `TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256`, `TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384`,
  36. `TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256`, `TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384`,
  37. `TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256`, `TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA`,
  38. `TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA`, `TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA`,
  39. `TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA`, `TLS_RSA_WITH_AES_256_GCM_SHA384`,
  40. `TLS_RSA_WITH_AES_128_GCM_SHA256`, `TLS_RSA_WITH_AES_256_CBC_SHA256`,
  41. `TLS_RSA_WITH_AES_128_CBC_SHA256`, `TLS_RSA_WITH_AES_256_CBC_SHA`,
  42. `TLS_RSA_WITH_AES_128_CBC_SHA`.
  43. +
  44. For more information, see Oracle's
  45. https://docs.oracle.com/en/java/javase/11/security/oracle-providers.html#GUID-7093246A-31A3-4304-AC5F-5FB6400405E2[Java Cryptography Architecture documentation].
  46. end::ssl-cipher-suites-values-java11[]
  47. tag::ssl-key-pem[]
  48. Path to a PEM encoded file containing the private key.
  49. +
  50. If HTTP client authentication is required, it uses this file. You cannot use
  51. this setting and `ssl.keystore.path` at the same time.
  52. end::ssl-key-pem[]
  53. tag::ssl-key-passphrase[]
  54. The passphrase that is used to decrypt the private key. Since the key might not
  55. be encrypted, this value is optional.
  56. +
  57. You cannot use this setting and `ssl.secure_key_passphrase` at the same time.
  58. end::ssl-key-passphrase[]
  59. tag::ssl-keystore-key-password[]
  60. The password for the key in the keystore. The default is the keystore password.
  61. +
  62. You cannot use this setting and `ssl.keystore.secure_password` at the same time.
  63. //TBD: You cannot use this setting and `ssl.keystore.secure_key_password` at the same time.
  64. end::ssl-keystore-key-password[]
  65. tag::ssl-keystore-password[]
  66. The password for the keystore.
  67. //TBD: You cannot use this setting and `ssl.keystore.secure_password` at the same time.
  68. end::ssl-keystore-password[]
  69. tag::ssl-keystore-path[]
  70. The path for the keystore file that contains a private key and certificate.
  71. +
  72. It must be either a Java keystore (jks) or a PKCS#12 file. You cannot use this
  73. setting and `ssl.key` at the same time.
  74. //TBD: It must be either a Java keystore (jks) or a PKCS#12 file.
  75. //TBD: You cannot use this setting and `ssl.key` at the same time.
  76. end::ssl-keystore-path[]
  77. tag::ssl-keystore-secure-key-password[]
  78. The password for the key in the keystore. The default is the keystore password.
  79. //TBD: You cannot use this setting and `ssl.keystore.key_password` at the same time.
  80. end::ssl-keystore-secure-key-password[]
  81. tag::ssl-keystore-secure-password[]
  82. The password for the keystore.
  83. //TBD: You cannot use this setting and `ssl.keystore.password` at the same time.
  84. end::ssl-keystore-secure-password[]
  85. tag::ssl-keystore-type-pkcs12[]
  86. The format of the keystore file. It must be either `jks` or `PKCS12`. If the
  87. keystore path ends in ".p12", ".pfx", or ".pkcs12", this setting defaults
  88. to `PKCS12`. Otherwise, it defaults to `jks`.
  89. end::ssl-keystore-type-pkcs12[]
  90. tag::ssl-secure-key-passphrase[]
  91. The passphrase that is used to decrypt the private key. Since the key might not
  92. be encrypted, this value is optional.
  93. //TBD: You cannot use this setting and `ssl.key_passphrase` at the same time.
  94. end::ssl-secure-key-passphrase[]
  95. tag::ssl-supported-protocols[]
  96. Supported protocols with versions. Valid protocols: `SSLv2Hello`,
  97. `SSLv3`, `TLSv1`, `TLSv1.1`, `TLSv1.2`, `TLSv1.3`. If the JVM's SSL provider supports TLSv1.3,
  98. the default is `TLSv1.3,TLSv1.2,TLSv1.1`. Otherwise, the default is
  99. `TLSv1.2,TLSv1.1`.
  100. +
  101. {es} relies on your JDK’s implementation of SSL and TLS.
  102. View <<jdk-tls-versions>> for more information.
  103. +
  104. --
  105. NOTE: If `xpack.security.fips_mode.enabled` is `true`, you cannot use `SSLv2Hello`
  106. or `SSLv3`. See <<fips-140-compliance>>.
  107. --
  108. end::ssl-supported-protocols[]
  109. tag::ssl-truststore-password[]
  110. The password for the truststore.
  111. +
  112. You cannot use this setting and `ssl.truststore.secure_password` at the same
  113. time.
  114. //TBD: You cannot use this setting and `ssl.truststore.secure_password` at the same time.
  115. end::ssl-truststore-password[]
  116. tag::ssl-truststore-path[]
  117. The path for the keystore that contains the certificates to trust. It must be
  118. either a Java keystore (jks) or a PKCS#12 file.
  119. +
  120. You cannot use this setting and `ssl.certificate_authorities` at the same time.
  121. //TBD: You cannot use this setting and `ssl.certificate_authorities` at the same time.
  122. end::ssl-truststore-path[]
  123. tag::ssl-truststore-secure-password[]
  124. Password for the truststore.
  125. //TBD: You cannot use this setting and `ssl.truststore.password` at the same time.
  126. end::ssl-truststore-secure-password[]
  127. tag::ssl-truststore-type[]
  128. The format of the truststore file. It must be either `jks` or `PKCS12`. If the
  129. file name ends in ".p12", ".pfx" or "pkcs12", the default is `PKCS12`.
  130. Otherwise, it defaults to `jks`.
  131. end::ssl-truststore-type[]
  132. tag::ssl-verification-mode-values[]
  133. +
  134. .Valid values
  135. [%collapsible%open]
  136. =====
  137. `full`::
  138. Validates that the provided certificate: has an issue date that's
  139. within the `not_before` and `not_after` dates; chains to a trusted Certificate
  140. Authority (CA); has a `hostname` or IP address that matches the names within
  141. the certificate.
  142. `certificate`::
  143. Validates the provided certificate and verifies that it's signed by a
  144. trusted authority (CA), but doesn't check the certificate `hostname`.
  145. `none`::
  146. Performs no certificate validation.
  147. +
  148. IMPORTANT: Setting certificate validation to `none` disables many security
  149. benefits of SSL/TLS, which is very dangerous. Only set this value if instructed
  150. by Elastic Support as a temporary diagnostic mechanism when attempting to
  151. resolve TLS errors.
  152. =====
  153. +
  154. Defaults to `full`.
  155. end::ssl-verification-mode-values[]