В това кратко ръководство ще разгледаме как да активираме функциите за защита на Elasticsearch Xpack и как да използваме API за защита за създаване на потребители и роли.
Нека започнем!
ЗАБЕЛЕЖКА: Предполагаме, че вече имате инсталиран и работещ Elasticsearch във вашата система. Ако не, помислете за следните уроци, за да инсталирате Elasticsearch.
https: // linuxhint.com / visualize_apache_logs_with_elk_stack /
https: // linuxhint.com / install-elasticsearch-ubuntu /
Как да активирам функциите за сигурност на Elasticsearch?
По подразбиране функциите Elasticsearch, Xpack, са деактивирани и ще трябва да ги активирате. Първо спрете Elasticsearch и Kibana, за да можете да редактирате конфигурацията.
В конфигурационния файл на Elasticsearch редактирайте xpack.сигурност.активиран вход и го задайте на true.
По подразбиране ще намерите еластичното търсене.yml, намиращ се в / etc / elasticsearch.
xpack.сигурност.разрешено: вярноЗапазете файла и рестартирайте Elasticsearch и Kibana.
ЗАБЕЛЕЖКА: В зависимост от лиценза, който имате, след като активирате xpack, ще трябва да изпълните командата по-долу, за да настроите пароли и удостоверяване:
elasticsearch-setup-паролиКак да създадем потребители, използвайки Kibana?
Ако имате Elasticsearch и Kibana, можете лесно да създавате потребители в управлението на стека на Kibana.
Започнете, като стартирате Kibana, след което влезте. Използвайте паролите, които сте използвали при настройката.
След като влезете, изберете Kibana Dock и отидете до Управление на стека и раздела за сигурност.
Сега отидете до потребители и кликнете върху „създаване на потребител.”Когато създавате потребител, Kibana ще ви помоли да зададете роля. Можете да видите всички налични роли в Управление на стека - Защита-роли.
Посочете потребителското име, паролата и пълното име.
Освен този прост начин за създаване на потребители на Elasticsearch, можете да използвате по-мощния метод, разгледан по-долу:
Как да създадете потребители с API на Elasticsearch?
Друг начин за създаване на местни потребители в Elasticsearch е да се използва API, като се използва security като крайна точка, ние можем да добавяме, актуализираме и премахваме потребители в Elasticsearch.
Нека разгледаме как да извършим тези операции.
За да взаимодействаме със защитния API, използваме POST и PUT HTTP заявки, като се уверим, че разполагаме с потребителска информация в тялото на заявката.
Когато създавате нов потребител, трябва да предадете потребителското име и парола на потребителя; и двата са задължителни параметри. Потребителските имена на Elasticsearch не трябва да имат повече от 1024 знака и могат да бъдат буквено-цифрови. Потребителските имена не позволяват бели пространства.
Информацията, която можете да предоставите в тялото на заявката, включва:
- Парола: Това е задължителен параметър за тип низ. Паролите в Elasticsearch трябва да са с дължина поне шест знака.
- Пълно име: Това указва пълното име на потребителя (низ).
- електронна поща: Това задава имейл адреса на посочения потребител.
- Роли: Това е друг задължителен параметър от списъка с типове. Той определя ролите, които посоченият потребител има. Можете да създадете празен списък [], ако потребителят няма зададени роли.
- Активирано: Активираният параметър (Boolean) указва дали потребителят е активен или не.
След като имате тялото на заявката, която го съдържа, изпратете заявката за публикуване на _security / user /
Обмислете заявката по-долу, която показва как да създадете потребител с помощта на API.
POST / _security / user / linuxhint"парола": "linuxhint",
"разрешено": вярно,
"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"], "пълно_име": "Подсказка за Linux", "имейл": "[имейл защитен]", "метаданни": "интелигентност": 1 'Това трябва да върне created: true като JSON обект.
"създаден": вярно
Как да активирам потребителя Информация?
Ако създадете потребител в Elasticsearch и зададете разрешения параметър като false, ще трябва да активирате акаунта, преди да го използвате. За целта можем да използваме _enable API.
Трябва да се уверите, че сте подали потребителското име, което искате да активирате в заявката PUT. Общият синтаксис е като:
PUT / _security / потребител /Например, заявката по-долу позволява на потребителя 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 заявката, последвана от потребителското име, което искате да видите. Например:
ВЗЕМЕТЕ / _security / потребител / linuxhintКомандата cURL е:
curl -XGET “http: // localhost: 9200 / _security / user / linuxhint”Това трябва да показва информация за посоченото потребителско име, както е показано по-долу:
"linuxhint":
"потребителско име": "linuxhint",
"роли": [
„Суперпотребител“,
“Kibana_admin”
],
"full_name": "Подсказка за Linux",
"email": "[имейл защитен]",
"метаданни":
"интелигентност": 7
,
"enabled": false
За да видите информация за всички потребители в клъстера Elasticsearch, пропуснете потребителското име и изпратете GET заявката като:
ВЗЕМЕТЕ / _security / потребител /Как да изтриете потребители?
Ако можете да създадете потребители, можете и да ги изтриете. За да използвате API за премахване на потребител, просто изпратете заявката DELETE на _security / user /
Пример:
ИЗТРИВАНЕ / _security / потребител / linuxhintКомандата cURL е:
curl -XDELETE “http: // localhost: 9200 / _security / user / linuxhint”Това трябва да върне JSON обект с found: true като:
"намерен": вярно
Заключение
Този урок ви научи как да активирате функциите на Elasticsearch Security. Също така обсъдихме как да използваме Kibana Stack Management за управление на потребители. Накрая обсъдихме как да създаваме потребители, да преглеждаме потребителска информация и да изтриваме потребители.
Тази информация трябва да ви започне, но не забравяйте, че майсторството идва от практиката.
Благодаря ви за четенето.