elasticsearch-certgen
Устарело в 6.1.
Заменено на elasticsearch-certutil.
Команда elasticsearch-certgen упрощает создание центров сертификации (ЦС), запросов на подписание сертификатов (CSR) и подписанных сертификатов для использования с Elastic Stack. Хотя эта команда устарела, вам не нужно заменять ЦС, CSR или сертификаты, созданные с её помощью.
Синтаксис
bin/elasticsearch-certgen (([--cert <cert_file>] [--days <n>] [--dn <name>] [--key <key_file>] [--keysize <bits>] [--pass <password>] [--p12 <password>]) | [--csr]) [-E <KeyValuePair>] [-h, --help] [--in <input_file>] [--out <output_file>] ([-s, --silent] | [-v, --verbose])
Описание
По умолчанию команда работает в интерактивном режиме, и вас попросят предоставить информацию о каждом экземпляре. Экземпляр — это любая часть Elastic Stack, которая требует сертификата Transport Layer Security (TLS) или SSL. В зависимости от вашей конфигурации, Elasticsearch, Logstash, Kibana и Beats могут потребовать сертификат и закрытый ключ.
Минимально необходимое значение для каждого экземпляра — имя. Это может быть просто имя хоста, используемое в качестве общего имени сертификата. Вы также можете использовать полное полное доменное имя. IP-адреса и имена DNS необязательны. Несколько значений можно указать через запятую. Если IP-адреса или имена DNS не указаны, возможно, вам нужно отключить проверку имени хоста в вашей конфигурации TLS или SSL.
В зависимости от указанных параметров вас также попросят предоставить необходимую информацию, такую как путь к выходному файлу и пароль к закрытому ключу ЦС.
Команда elasticsearch-certgen также поддерживает режим бездействия для упрощения пакетных операций. Дополнительную информацию см. в разделе Использование elasticsearch-certgen в бесшумном режиме.
Выходной файл — это zip-архив, содержащий подписанные сертификаты и закрытые ключи для каждого экземпляра. Если вы выбрали генерацию ЦС, что является по умолчанию, сертификат и закрытый ключ включаются в выходной файл. Если вы выбрали генерацию CSR, вы должны предоставить их своему коммерческому или организационному центру сертификации для получения подписанных сертификатов. Подписанные сертификаты должны быть в формате PEM для работы с функциями безопасности Elastic Stack.
Параметры
-
--cert <cert_file> - Указывает на генерацию новых сертификатов и ключей экземпляров с использованием существующего сертификата ЦС, который предоставляется в аргументе
<cert_file>. Этот параметр нельзя использовать с параметром-csr. -
--csr - Указывает режим работы с запросом на подписание сертификатов.
-
--days <n> - Указывает целое число, представляющее количество дней, в течение которых сгенерированные ключи будут действительными. Значение по умолчанию —
1095. Этот параметр нельзя использовать с параметром-csr. -
--dn <name> - Определяет полное доменное имя, используемое для сгенерированного сертификата ЦС. Значение по умолчанию —
CN=Elastic Certificate Tool Autogenerated CA. Этот параметр нельзя использовать с параметром-csr. -
-E <KeyValuePair> - Настраивает параметр.
-
-h, --help - Возвращает все параметры команды.
-
--in <input_file> - Указывает файл, используемый для работы в бесшумном режиме. Входной файл должен быть YAML-файлом, как описано в Использование
elasticsearch-certgenв бесшумном режиме. -
--key <key_file> - Указывает файл закрытого ключа для сертификата ЦС. Этот параметр необходим всякий раз, когда используется параметр
-cert. -
--keysize <bits> - Определяет количество бит, используемых в сгенерированных ключах RSA. Значение по умолчанию —
2048. -
--out <output_file> - Указывает путь к выходному файлу.
-
--pass <password> - Указывает пароль к закрытому ключу ЦС. Если указан параметр
-key, это пароль к существующему файлу закрытого ключа. В противном случае это пароль, который должен быть применён к сгенерированному ключу ЦС. Этот параметр нельзя использовать с параметром-csr. -
--p12 <password> - Генерирует файл контейнера PKCS#12 (
.p12или.pfx) для каждого из сертификатов и ключей экземпляров. Сгенерированный файл защищён предоставленным паролем, который может быть пустым. Этот параметр нельзя использовать с параметром-csr. -
-s, --silent - Отображает минимальный вывод.
-
-v, --verbose - Отображает подробный вывод.
Примеры
Использование elasticsearch-certgen в бесшумном режиме
Для использования бесшумного режима необходимо создать YAML-файл, содержащий информацию об экземплярах. Он должен соответствовать следующему формату:
instances:
- name: "node1"
ip:
- "192.0.2.1"
dns:
- "node1.mydomain.com"
- name: "node2"
ip:
- "192.0.2.2"
- "198.51.100.1"
- name: "node3"
- name: "node4"
dns:
- "node4.mydomain.com"
- "node4.internal"
- name: "CN=node5,OU=IT,DC=mydomain,DC=com"
filename: "node5" | Имя экземпляра. Это может быть простая строка или полное доменное имя (DN). Это единственное обязательное поле. | |
| Необязательный массив строк, представляющих IP-адреса для этого экземпляра. Разрешены значения IPv4 и IPv6. Значения добавляются как альтернативные имена субъекта. | |
| Необязательный массив строк, представляющих имена DNS для этого экземпляра. Значения добавляются как альтернативные имена субъекта. | |
| Имя файла для этого экземпляра. Это имя используется в качестве имени каталога, содержащего файлы экземпляра в выводе. Оно также используется в именах файлов внутри каталога. Имя файла не должно иметь расширения. Примечание: Если предоставленное для экземпляра |
Когда ваш YAML-файл готов, вы можете использовать команду elasticsearch-certgen для генерации сертификатов или запросов на подписание сертификатов. Просто используйте параметр -in для указания местоположения файла. Например:
bin/elasticsearch-certgen -in instances.yml
Эта команда генерирует сертификат и закрытый ключ ЦС, а также сертификаты и закрытые ключи для экземпляров, перечисленных в YAML-файле.
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/certgen.html