Принципы безопасности Elasticsearch
Защита вашего кластера Elasticsearch и содержащихся в нём данных имеет первостепенное значение. Реализация стратегии защиты по нескольким уровням обеспечивает многослойную безопасность, помогающую защитить вашу систему. Следующие принципы создают основу для безопасной работы Elasticsearch, которая помогает снизить угрозы вашей системе на нескольких уровнях.
Запускайте Elasticsearch с включённой безопасностью
Никогда не запускайте кластер Elasticsearch без включённой безопасности. Данный принцип нельзя переоценить. Запуск Elasticsearch без безопасности делает ваш кластер уязвимым для любого, кто может отправить сетевой трафик в Elasticsearch, позволяя этим лицам загружать, изменять или удалять любые данные в вашем кластере. Настройте безопасность для Elastic Stack, чтобы предотвратить несанкционированный доступ к вашим кластерам и обеспечить безопасность межузловой связи.
Запускайте Elasticsearch с выделенным пользователем, не являющимся root
Никогда не пытайтесь запускать Elasticsearch от пользователя root, что сделает недействительной любую стратегию защиты и позволит злоумышленнику делать любое действие на вашем сервере. Вы должны создать выделенного, не обладающего привилегиями пользователя для запуска Elasticsearch. По умолчанию, пакеты Elasticsearch rpm, deb, docker и Windows содержат пользователя elasticsearch с такими же ограничениями.
Защитите Elasticsearch от публичного интернет-трафика
Даже при включённой безопасности никогда не делайте Elasticsearch доступным для публичного интернет-трафика. Использование приложения для очистки запросов к Elasticsearch по-прежнему несёт риски, такие как злоумышленник, отправляющий _search запросы, которые могут перегрузить кластер Elasticsearch и вывести его из строя. Держите Elasticsearch изолированным как можно больше, предпочтительно за брандмауэром и VPN. Любые приложения, обращённые к интернету, должны выполнять заранее подготовленные агрегации или вообще не выполнять агрегации.
Хотя вы определённо не должны напрямую подключать Elasticsearch к интернету, вы также не должны делать его напрямую доступным пользователям. Вместо этого используйте промежуточное приложение для обработки запросов от имени пользователей. Это позволяет отслеживать поведение пользователей, такие как отправленные запросы и к каким узлам кластера они обращаются. Например, вы можете реализовать приложение, которое принимает поисковой запрос от пользователя и перенаправляет его через запрос simple_query_string.
Реализуйте контроль доступа на основе ролей
Определите роли для ваших пользователей и назначьте соответствующие права, чтобы гарантировать, что пользователи имеют доступ только к необходимым ресурсам. Этот процесс определяет, разрешено ли пользователю, отправившему запрос, выполнить этот запрос.
© 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/es-security-principles.html