У цьому короткому посібнику ми розглянемо, як увімкнути функції безпеки Elasticsearch Xpack та як використовувати API безпеки для створення користувачів та ролей.
Давайте почнемо!
ПРИМІТКА: Ми припускаємо, що Elasticsearch вже встановлений і запущений у вашій системі. Якщо ні, розгляньте наступні посібники з встановлення Elasticsearch.
https: // linuxhint.com / visualize_apache_logs_with_elk_stack /
https: // linuxhint.com / install-elasticsearch-ubuntu /
Як увімкнути функції безпеки Elasticsearch?
За замовчуванням Elasticsearch Features, Xpack, вимкнено, і вам потрібно буде їх увімкнути. По-перше, зупиніть Elasticsearch та Kibana, щоб ви могли редагувати конфігурацію.
У файлі конфігурації Elasticsearch відредагуйте xpack.безпеки.увімкнуто запис і встановіть його на true.
За замовчуванням ви знайдете еластичний пошук.yml, що знаходиться в / etc / elasticsearch.
xpack.безпеки.увімкнено: істинаЗбережіть файл і перезапустіть Elasticsearch і Kibana.
ПРИМІТКА: Залежно від вашої ліцензії, після того, як ви активуєте xpack, вам потрібно буде виконати команду нижче, щоб встановити паролі та автентифікацію:
elasticsearch-setup-пароліЯк створити користувачів за допомогою Kibana?
Якщо у вас є Elasticsearch і Kibana, ви можете легко створювати користувачів в управлінні стеком Kibana.
Почніть із запуску Kibana, а потім увійдіть. Використовуйте паролі, які ви використовували під час налаштування.
Увійшовши в систему, виберіть док-станцію Kibana та перейдіть до розділу Керування стеком та розділу безпеки.
Тепер перейдіть до користувачів і натисніть «створити користувача.”Під час створення користувача Kibana попросить вас призначити роль. Ви можете переглянути всі доступні ролі в Stack Management - Security -Roles.
Введіть ім’я користувача, пароль та повне ім’я.
Окрім цього простого способу створення користувачів Elasticsearch, ви можете скористатися більш потужним методом, розглянутим нижче:
Як створити користувачів за допомогою Elasticsearch API?
Іншим способом створення власних користувачів у Elasticsearch є використання API, використовуючи security як кінцеву точку; ми можемо додавати, оновлювати та видаляти користувачів у Elasticsearch.
Давайте розглянемо, як виконувати ці операції.
Для взаємодії з API безпеки ми використовуємо запити POST і PUT HTTP, переконуючись, що в тілі запиту є інформація про користувача.
Створюючи нового користувача, ви повинні передати ім’я користувача та пароль користувача; обидва є обов’язковими параметрами. Імена користувачів Elasticsearch не повинні містити більше 1024 символів і можуть бути буквено-цифровими. Імена користувачів не дозволяють пробіли.
Інформація, яку ви можете надати в тілі запиту, включає:
- Пароль: Це обов’язковий параметр типу string. Паролі в Elasticsearch мають містити щонайменше шість символів.
- Повне ім'я: Тут вказується повне ім'я користувача (рядок).
- Електронна пошта: Встановлює електронну адресу вказаного користувача.
- Ролі: Це ще один обов’язковий параметр списку типів. Він визначає ролі, які виконує вказаний користувач. Ви можете створити порожній список [], якщо користувач не має призначених ролей.
- Увімкнено: Увімкнений параметр (логічний) визначає, активний користувач чи ні.
Після того, як у вас є тіло запиту, що його містить, надішліть запит на повідомлення до _security / user /
Розглянемо наведений нижче запит, який показує, як створити користувача за допомогою API.
POST / _security / user / linuxhint"password": "linuxhint",
"увімкнено": true,
"role": ["суперкористувач", "kibana_admin"],
"full_name": "Підказка для Linux",
"email": "[електронна пошта захищена]",
"метадані":
"інтелект": 7
Якщо ви використовуєте cURL, введіть команду нижче:
curl -XPOST "http: // localhost: 9200 / _security / user / linuxhint" -H 'Content-Type: application / json' -d '"password": "linuxhint", "enabled": true, "role" : ["суперкористувач", "kibana_admin"], "full_name": "Підказка Linux", "email": "[електронна пошта захищена]", "метадані": "інтелект": 1 'Це повинно повернути created: true як об'єкт JSON.
"створено": true
Як увімкнути користувача Інформація?
Якщо ви створюєте користувача в Elasticsearch і встановлюєте ввімкнений параметр як false, вам потрібно буде ввімкнути обліковий запис перед його використанням. Для цього ми можемо використовувати API _enable.
Переконайтеся, що ви передали ім’я користувача, яке ви хочете увімкнути у запиті PUT. Загальний синтаксис такий:
PUT / _security / user /Наприклад, наведений нижче запит дозволяє користувачеві linuxhint:
PUT / _security / user / linuxhint / _enableКоманда cURL:
curl -XPUT "http: // localhost: 9200 / _security / user / linuxhint / _enable"Зворотне також справедливо; щоб вимкнути користувача, використовуйте кінцеву точку _disable:
PUT / _security / user / linuxhint / _disableКоманда cURL:
curl -XPUT “http: // localhost: 9200 / _security / user / linuxhint / _disable”Як переглянути Користувачі?
Щоб переглянути інформацію про користувача, використовуйте запит GET, а потім ім’я користувача, яке ви хочете переглянути. Наприклад:
GET / _security / user / linuxhintКоманда cURL:
curl -XGET “http: // localhost: 9200 / _security / user / linuxhint”Це повинно відображати інформацію про вказане ім’я користувача, як показано нижче:
"linuxhint":
"username": "linuxhint",
"ролі": [
“Суперкористувач”,
“Kibana_admin”
],
"full_name": "Підказка для Linux",
"email": "[електронна пошта захищена]",
"метадані":
"інтелект": 7
,
"enabled": false
Щоб переглянути інформацію про всіх користувачів кластера Elasticsearch, опустіть ім’я користувача та надішліть запит GET як:
ОТРИМАТИ / _security / user /Як видалити користувачів?
Якщо ви можете створити користувачів, ви можете також видалити їх. Щоб використовувати API для видалення користувача, просто надішліть запит DELETE на _security / user /
Приклад:
ВИДАЛИТИ / _security / user / linuxhintКоманда cURL:
curl -XDELETE “http: // localhost: 9200 / _security / user / linuxhint”Це повинно повернути об'єкт JSON із знайденим: true як:
"знайдено": правда
Висновок
Цей підручник навчив вас, як увімкнути функції Elasticsearch Security. Ми також обговорили, як використовувати Kibana Stack Management для управління користувачами. Нарешті, ми обговорили, як створювати користувачів, переглядати інформацію про них та видаляти користувачів.
Ця інформація повинна допомогти вам розпочати, але пам’ятайте, що майстерність походить із практики.
Дякую за читання.