elasticsearch-certgen
Устарело в 6.1.
Заменено на elasticsearch-certutil.
Команда elasticsearch-certgen упрощает создание центров сертификации (CA), запросов на подпись сертификатов (CSR) и подписанных сертификатов для использования с Elastic Stack. Несмотря на то, что эта команда устарела, вам не нужно заменять созданные ею CA, 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.
В зависимости от указанных параметров, вас также попросят предоставить необходимую информацию, например, путь к выходному файлу и пароль к закрытому ключу CA.
Команда elasticsearch-certgen также поддерживает режим «безмолвия» для упрощения пакетных операций. Дополнительную информацию см. в разделе «Использование elasticsearch-certgen в режиме безмолвия».
Выходной файл — это zip-архив, содержащий подписанные сертификаты и закрытые ключи для каждого экземпляра. Если вы выбрали создание CA (что является по умолчанию), сертификат и закрытый ключ включены в выходной файл. Если вы выбрали создание CSR, вы должны предоставить их своему коммерческому или организационному центру сертификации для получения подписанных сертификатов. Подписанные сертификаты должны быть в формате PEM, чтобы работать с функциями безопасности Elastic Stack.
Параметры
-
--cert <cert_file> - Указывает на создание новых сертификатов и ключей экземпляров с использованием существующего сертификата CA, который предоставляется в аргументе
<cert_file>. Этот параметр нельзя использовать с параметром-csr. -
--csr - Указывает на работу в режиме запроса на подпись сертификата.
-
--days <n> - Указывает целочисленное значение, которое представляет количество дней, в течение которых сгенерированные ключи действительны. Значение по умолчанию —
1095. Этот параметр нельзя использовать с параметром-csr. -
--dn <name> - Определяет полное доменное имя, используемое для сгенерированного сертификата CA. Значение по умолчанию —
CN=Elastic Certificate Tool Autogenerated CA. Этот параметр нельзя использовать с параметром-csr. -
-E <KeyValuePair> - Настраивает параметр.
-
-h, --help - Возвращает все параметры команды.
-
--in <input_file> - Указывает файл, используемый для работы в режиме безмолвия. Входной файл должен быть файлом YAML, как описано в разделе «Использование
elasticsearch-certgenв режиме безмолвия». -
--key <key_file> - Указывает файл закрытого ключа для сертификата CA. Этот параметр требуется всякий раз, когда используется параметр
-cert. -
--keysize <bits> - Определяет количество бит, используемых в сгенерированных ключах RSA. Значение по умолчанию —
2048. -
--out <output_file> - Указывает путь к выходному файлу.
-
--pass <password> - Указывает пароль к закрытому ключу CA. Если указан параметр
-key, это пароль к существующему файлу закрытого ключа. В противном случае это пароль, который должен быть применен к сгенерированному ключу CA. Этот параметр нельзя использовать с параметром-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
Эта команда генерирует сертификат CA и закрытый ключ, а также сертификаты и закрытые ключи для экземпляров, перечисленных в файле 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/7.17/certgen.html