Spec-Zone.ru › Elasticsearch 7
›Elasticsearch Руководство [7.17] ›Защита Elastic Stack ›Настройка безопасности Elastic Stack

Настройка минимальной безопасности для Elasticsearch

Вы включаете функции безопасности Elasticsearch и затем создаёте пароли для встроенных пользователей. Вы можете добавить больше пользователей позже, но использование встроенных пользователей упрощает процесс включения безопасности для вашего кластера.

Минимальная сценарий безопасности не подходит для кластеров в режиме производства. Если ваш кластер имеет несколько узлов, вы должны включить минимальную безопасность, а затем настроить Transport Layer Security (TLS) между узлами.

Предварительные условия

  1. Установите и настройте Elasticsearch и Kibana. См. Начало работы с Elastic Stack.
  2. Убедитесь, что вы используете лицензию, включающую необходимые функции безопасности.

    Базовая лицензия включает минимальные настройки безопасности для Elastic Stack, поэтому вы можете просто загрузить дистрибутив и приступить к работе. Вы также можете включить бесплатную пробную лицензию, чтобы получить доступ ко всем функциям Elastic Stack. См. подписки и управление лицензиями.

Включение функций безопасности Elasticsearch

При использовании базовой лицензии функции безопасности Elasticsearch отключены по умолчанию. Включение функций безопасности Elasticsearch включает батовую аутентификацию, позволяющую запускать локальный кластер с аутентификацией по имени пользователя и паролю.

  1. На каждом узле вашего кластера остановите Kibana и Elasticsearch, если они запущены.
  2. На каждом узле вашего кластера добавьте настройку xpack.security.enabled в файл $ES_PATH_CONF/elasticsearch.yml и установите значение true:

    xpack.security.enabled: true

    Переменная $ES_PATH_CONF - путь к файлам конфигурации Elasticsearch. Если вы установили Elasticsearch с помощью дистрибутивов архивов (zip или tar.gz), переменная по умолчанию устанавливается в $ES_HOME/config. Если вы использовали дистрибутивы пакетов (Debian или RPM), переменная по умолчанию устанавливается в /etc/elasticsearch.

  3. Если ваш кластер состоит из одного узла, добавьте настройку discovery.type в файл $ES_PATH_CONF/elasticsearch.yml и установите значение single-node. Эта настройка гарантирует, что ваш узел не будет случайно подключаться к другим кластерам, которые могут работать в вашей сети.

    discovery.type: single-node

Создание паролей для встроенных пользователей

Для связи с кластером необходимо настроить имя пользователя для встроенных пользователей. Если вы не включите анонимный доступ, все запросы без имени пользователя и пароля будут отклонены.

Вам нужно задать пароли только для пользователей elastic и kibana_system при включении минимальной или базовой безопасности.

  1. На каждом узле вашего кластера запустите Elasticsearch. Например, если вы установили Elasticsearch с пакетом .tar.gz, выполните следующую команду из каталога ES_HOME:

    ./bin/elasticsearch
  2. В другом окне терминала задайте пароли для встроенных пользователей, выполнив утилиту elasticsearch-setup-passwords.

    Вы можете запустить утилиту elasticsearch-setup-passwords на любом узле вашего кластера. Однако вы должны запустить эту утилиту только один раз для всего кластера.

    Использование параметра auto выведет случайные сгенерированные пароли в консоль, которые вы можете изменить позже, если это необходимо:

    ./bin/elasticsearch-setup-passwords auto

    Если вы хотите использовать свои собственные пароли, запустите команду с параметром interactive вместо параметра auto. Используя этот режим, вы пройдете настройку паролей для всех встроенных пользователей.

    ./bin/elasticsearch-setup-passwords interactive
  3. Сохраните сгенерированные пароли. Они понадобятся для добавления встроенного пользователя в Kibana.

После установки пароля для пользователя elastic вы не сможете запустить команду elasticsearch-setup-passwords повторно.

Далее: Настройка Kibana для подключения к Elasticsearch с паролем

Настройка Kibana для подключения к Elasticsearch с паролем

Когда функции безопасности Elasticsearch включены, пользователи должны войти в Kibana с помощью действительного имени пользователя и пароля.

Вы настроите Kibana для использования встроенного пользователя kibana_system и пароля, который вы создали ранее. Kibana выполняет некоторые фоновые задачи, которые требуют использования пользователя kibana_system.

Эта учетная запись не предназначена для отдельных пользователей и не имеет разрешений для входа в Kibana из браузера. Вместо этого вы войдете в Kibana как суперпользователь elastic.

  1. Добавьте настройку elasticsearch.username в файл KIB_PATH_CONF/kibana.yml и установите значение для пользователя kibana_system:

    elasticsearch.username: "kibana_system"

    Переменная KIB_PATH_CONF - путь к файлам конфигурации Kibana. Если вы установили Kibana с помощью дистрибутивов архивов (zip или tar.gz), переменная по умолчанию устанавливается в KIB_HOME/config. Если вы использовали дистрибутивы пакетов (Debian или RPM), переменная по умолчанию устанавливается в /etc/kibana.

  2. Из каталога, где вы установили Kibana, выполните следующие команды для создания хранилища ключей Kibana и добавления защищённых настроек:

    1. Создайте хранилище ключей Kibana:

      ./bin/kibana-keystore create
    2. Добавьте пароль для пользователя kibana_system в хранилище ключей Kibana:

      ./bin/kibana-keystore add elasticsearch.password

      При запросе введите пароль для пользователя kibana_system.

  3. Перезапустите Kibana. Например, если вы установили Kibana с пакетом .tar.gz, выполните следующую команду из каталога Kibana:

    ./bin/kibana
  4. Войдите в Kibana как пользователь elastic. Используйте эту суперпользовательскую учётную запись для управления пространствами, создания новых пользователей и назначения ролей. Если вы запускаете Kibana локально, перейдите на страницу http://localhost:5601, чтобы посмотреть страницу входа.

Что дальше?

Поздравляем! Вы включили защиту паролем для вашего локального кластера, чтобы предотвратить несанкционированный доступ. Вы можете безопасно войти в Kibana как пользователь elastic и создать дополнительных пользователей и роли. Если у вас одиночный узел кластер, то можете остановить процесс на этом этапе.

Если ваш кластер имеет несколько узлов, то необходимо настроить Transport Layer Security (TLS) между узлами. Кластеры в режиме производства не будут запущены, если вы не включите TLS.

Настройте базовую безопасность для Elastic Stack, чтобы защитить все внутренние коммуникации между узлами вашего кластера.

© 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/security-minimal-setup.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API