I denne hurtige vejledning vil vi undersøge, hvordan du aktiverer Elasticsearch Xpack sikkerhedsfunktioner, og hvordan du bruger sikkerheds-API til at oprette brugere og roller.
Lad os komme i gang!
BEMÆRK: Vi antager, at du allerede har Elasticsearch installeret og kører på dit system. Hvis ikke, overvej følgende tutorials for at installere Elasticsearch.
https: // linuxhint.com / visualize_apache_logs_with_elk_stack /
https: // linuxhint.com / install-elasticsearch-ubuntu /
Sådan aktiveres Elasticsearch sikkerhedsfunktioner?
Som standard er Elasticsearch-funktioner, Xpack, deaktiveret, og du bliver nødt til at aktivere dem. Stop først Elasticsearch og Kibana, så du kan redigere konfigurationen.
Rediger xpack i Elasticsearch-konfigurationsfilen.sikkerhed.aktiveret indtastning og indstil den til sand.
Som standard finder du elasticsearch.yml placeret i / etc / elasticsearch.
xpack.sikkerhed.aktiveret: sandtGem filen, og genstart Elasticsearch og Kibana.
BEMÆRK: Afhængigt af den licens du har, skal du, når du har aktiveret xpack, køre kommandoen nedenfor for at konfigurere adgangskoder og godkendelse:
elasticsearch-setup-adgangskoderSådan oprettes brugere ved hjælp af Kibana?
Hvis du har koblet Elasticsearch og Kibana, kan du nemt oprette brugere i Kibana stack management.
Start med at starte Kibana, og log derefter ind. Brug de adgangskoder, du brugte, når du konfigurerede.
Når du er logget ind, skal du vælge Kibana Dock og navigere til Stack Management og sikkerhedssektionen.
Naviger nu til brugere og klik på “Opret bruger.”Når du opretter en bruger, vil Kibana bede dig om at tildele en rolle. Du kan se alle tilgængelige roller i Stack Management - Sikkerhed-Roller.
Angiv brugernavn, adgangskode og fuldt navn.
Udover denne enkle måde at oprette Elasticsearch-brugere på, kan du bruge den mere kraftfulde metode, der er beskrevet nedenfor:
Sådan oprettes brugere med Elasticsearch API?
En anden måde at oprette native brugere i Elasticsearch på er at bruge API'en ved hjælp af security som slutpunkt, vi kan tilføje, opdatere og fjerne brugere i Elasticsearch.
Lad os se på, hvordan vi udfører disse operationer.
For at interagere med sikkerheds-API'en bruger vi POST- og PUT HTTP-anmodninger og sørger for, at vi har brugeroplysningerne i anmodningens krop.
Når du opretter en ny bruger, skal du videregive brugerens brugernavn og adgangskode; begge er krævede parametre. Elasticsearch-brugernavne må ikke være mere end 1024 tegn og kan være alfanumeriske. Brugernavne tillader ikke hvide rum.
De oplysninger, du kan give i anmodningsorganet, inkluderer:
- Adgangskode: Dette er en påkrævet parameter af typestrengen. Adgangskoder i Elasticsearch skal være mindst seks tegn lange.
- Fulde navn: Dette angiver brugerens fulde navn (String).
- E-mail: Dette indstiller e-mailadressen til den angivne bruger.
- Roller: Dette er en anden krævet parameter for typelisten. Det specificerer de roller, som den angivne bruger besidder. Du kan oprette en tom liste [], hvis brugeren ikke har nogen tildelte roller.
- Aktiveret: Den aktiverede parameter (boolsk) angiver, om brugeren er aktiv eller ej.
Når du har kroppen med anmodningen, der indeholder den, skal du sende anmodningen om post til _security / user /
Overvej nedenstående anmodning, der viser, hvordan du opretter en bruger ved hjælp af API.
POST / _sikkerhed / bruger / linuxhint"password": "linuxhint",
"aktiveret": sandt,
"roller": ["superbruger", "kibana_admin"],
"full_name": "Linux-tip",
"email": "[email protected]",
"metadata":
"intelligens": 7
Hvis du bruger cURL, skal du indtaste kommandoen nedenfor:
krølle -XPOST "http: // localhost: 9200 / _security / user / linuxhint" -H 'Content-Type: application / json' -d '"password": "linuxhint", "enabled": true, "roller " : ["superbruger", "kibana_admin"], "full_name": "Linux-tip", "e-mail": "[email protected]", "metadata": "intelligence": 1 'Dette skal returneres oprettet: sandt som et JSON-objekt.
"oprettet": sandt
Sådan aktiveres bruger Information?
Hvis du opretter en bruger i Elasticsearch og indstiller den aktiverede parameter som falsk, skal du aktivere kontoen, før du bruger den. For at gøre dette kan vi bruge _enable API.
Du skal sørge for at videregive det brugernavn, du vil aktivere, i PUT-anmodningen. Den generelle syntaks er som:
PUT / _sikkerhed / bruger /For eksempel aktiverer nedenstående anmodning brugeren linuxhint:
PUT / _security / user / linuxhint / _enableCURL-kommandoen er:
krølle -XPUT "http: // localhost: 9200 / _security / user / linuxhint / _enable"Det omvendte er også sandt; for at deaktivere en bruger skal du bruge _disable endpoint:
PUT / _security / user / linuxhint / _disableCURL-kommandoen er:
curl -XPUT “http: // localhost: 9200 / _security / user / linuxhint / _disable”Sådan får du vist Brugere?
For at se brugeroplysninger skal du bruge GET-anmodningen efterfulgt af det brugernavn, du vil se. For eksempel:
GET / _security / user / linuxhintCURL-kommandoen er:
krølle -XGET “http: // localhost: 9200 / _security / user / linuxhint”Dette skal vise oplysninger om det angivne brugernavn, som vist nedenfor:
"linuxhint":
"brugernavn": "linuxhint",
"roller": [
“Superbruger”,
“Kibana_admin”
],
"full_name": "Linux-tip",
"email": "[email protected]",
"metadata":
"intelligens": 7
,
"aktiveret": falsk
Hvis du vil se oplysninger om alle brugerne i Elasticsearch-klyngen, skal du udelade brugernavnet og sende GET-anmodningen som:
GET / _sikkerhed / bruger /Sådan slettes brugere?
Hvis du kan oprette brugere, kan du også slette dem. For at bruge API'en til at fjerne en bruger skal du blot sende DELETE-anmodningen til _security / user /
Eksempel:
SLET / _sikkerhed / bruger / linuxhintCURL-kommandoen er:
krølle -XDELETE “http: // localhost: 9200 / _security / user / linuxhint”Det skal returnere et JSON-objekt med fundet: sandt som:
"fundet": sandt
Konklusion
Denne vejledning lærte dig, hvordan du aktiverer Elasticsearch Security-funktioner. Vi diskuterede også, hvordan man bruger Kibana Stack Management til at administrere brugere. Endelig diskuterede vi, hvordan man opretter brugere, får vist brugeroplysninger og sletter brugere.
Disse oplysninger skal komme i gang, men husk at mestring kommer fra praksis.
Tak fordi du læste.