Dans ce guide rapide, nous examinerons comment activer les fonctionnalités de sécurité Elasticsearch XPACK et comment utiliser l'API de sécurité pour créer des utilisateurs et des rôles.
Laissez-nous commencer!
NOTE: Nous supposons que vous avez déjà installé Elasticsearch et exécuté sur votre système. Sinon, considérons les tutoriels suivants pour installer Elasticsearch.
https: // linuxhint.com / visualize_apache_logs_with_elk_stack /
https: // linuxhint.com / install-elasticsearch-ubuntu /
Comment activer les fonctionnalités de sécurité Elasticsearch?
Par défaut, les fonctionnalités Elasticsearch, XPack, sont désactivées et vous devrez leur activer. Tout d'abord, arrêtez Elasticsearch et Kibana, afin que vous puissiez modifier la configuration.
Dans le fichier de configuration Elasticsearch, modifiez le XPACK.sécurité.Entrée activée et le définir sur True.
Par défaut, vous trouverez la recherche Elastics.yml situé dans / etc / elasticsearch.
xpack.sécurité.Activé: vraiEnregistrez le fichier et redémarrez Elasticsearch et Kibana.
NOTE: Selon la licence que vous avez, une fois que vous avez activé XPACK, vous devrez exécuter la commande ci-dessous pour configurer les mots de passe et l'authentification:
elasticsearch-setup-passwordsComment créer des utilisateurs à l'aide de Kibana?
Si vous avez couplé Elasticsearch et Kibana, vous pouvez facilement créer des utilisateurs dans la gestion de la pile Kibana.
Commencez par lancer Kibana, puis connectez-vous. Utilisez les mots de passe que vous avez utilisés lors de la configuration.
Une fois connecté, sélectionnez le quai Kibana et accédez à la gestion de la pile et à la section de sécurité.
Maintenant, accédez aux utilisateurs et cliquez sur «Créer un utilisateur."Lors de la création d'un utilisateur, Kibana vous demandera d'attribuer un rôle. Vous pouvez afficher tous les rôles disponibles dans la gestion de la pile - Security -Roles.
Fournir le nom d'utilisateur, le mot de passe et le nom complet.
Outre ce moyen simple de créer des utilisateurs d'Elasticsearch, vous pouvez utiliser la méthode la plus puissante discutée ci-dessous:
Comment créer des utilisateurs avec une API Elasticsearch?
Une autre façon de créer des utilisateurs natifs dans Elasticsearch est d'utiliser l'API, en utilisant Security comme point de terminaison, nous pouvons ajouter, mettre à jour et supprimer les utilisateurs dans Elasticsearch.
Voyons comment effectuer ces opérations.
Pour interagir avec l'API de sécurité, nous utilisons la publication et mettons les demandes HTTP, en nous assurant que nous disposons des informations utilisateur dans le corps de la demande.
Lors de la création d'un nouvel utilisateur, vous devez passer le nom d'utilisateur et le mot de passe de l'utilisateur; Les deux sont des paramètres nécessaires. Les noms d'utilisateur Elasticsearch ne doivent pas être plus de 1024 caractères et peuvent être alphanumériques. Les noms d'utilisateur n'autorisent pas les espaces blancs.
Les informations que vous pouvez fournir dans le corps de la demande comprennent:
Une fois que vous avez le corps de la demande en le contenant, envoyez la demande de poste à _Security / User /.
Considérez la demande ci-dessous qui montre comment créer un utilisateur à l'aide de l'API.
Post / _security / utilisateur / linuxhintSi vous utilisez Curl, entrez la commande ci-dessous:
curl -xpost "http: // localhost: 9200 / _security / user / linuxhint" -h 'contenu-type: application / json' -d '"mot de passe": "linuxhint", "activé": true, "rôles" : ["SuperUser", "Kibana_admin"], "Full_name": "Linux Insiste", "Email": "Exemple @ Linuxhint.com "," métadonnées ": " Intelligence ": 1 'Cela devrait retourner créé: vrai en tant qu'objet JSON.
Comment activer l'utilisateur Information?
Si vous créez un utilisateur dans Elasticsearch et définissez le paramètre activé comme faux, vous devrez activer le compte avant de l'utiliser. Pour ce faire, nous pouvons utiliser l'API _enable.
Vous devez vous assurer de passer le nom d'utilisateur que vous souhaitez activer dans la demande de put. La syntaxe générale est comme:
Mettre / _security / user // _ activerPar exemple, la demande ci-dessous permet à l'utilisateur LinuxHint:
Put / _security / user / linuxhint / _enableLa commande curl est:
curl -xput "http: // localhost: 9200 / _security / user / linuxhint / _enable"L'inverse est également vrai; Pour désactiver un utilisateur, utilisez le point de terminaison _diste:
Mettre / _security / user / linuxhint / _disableLa commande curl est:
curl -xput «http: // localhost: 9200 / _security / user / linuxhint / _disable»Comment voir Utilisateurs?
Pour afficher les informations de l'utilisateur, utilisez la demande GET suivie du nom d'utilisateur que vous souhaitez afficher. Par exemple:
Get / _security / user / linuxhintLa commande curl est:
curl -xget «http: // localhost: 9200 / _security / user / linuxhint»Cela devrait afficher des informations sur le nom d'utilisateur spécifié, comme indiqué ci-dessous:
Pour afficher les informations sur tous les utilisateurs du cluster Elasticsearch, omettez le nom d'utilisateur et envoyez la demande de GET comme:
Get / _security / user /Comment supprimer les utilisateurs?
Si vous pouvez créer des utilisateurs, vous pouvez également les supprimer. Pour utiliser l'API pour supprimer un utilisateur, envoyez simplement la demande de suppression à _Security / User /.
Exemple:
Supprimer / _security / user / linuxhintLa commande curl est:
curl -xdelete "http: // localhost: 9200 / _security / user / linuxhint"Cela devrait renvoyer un objet JSON avec Found: True As:
Conclusion
Ce tutoriel vous a appris à activer les fonctionnalités de sécurité Elasticsearch. Nous avons également discuté de la façon d'utiliser la gestion de la pile de kibana pour gérer les utilisateurs. Enfin, nous avons discuté de la façon de créer des utilisateurs, de visualiser les informations des utilisateurs et de supprimer les utilisateurs.
Ces informations devraient vous aider à démarrer mais rappelez-vous que la maîtrise vient de la pratique.
Merci pour la lecture.