Comment installer OpenSearch sur Rocky Linux 9
OpenSearch est un projet communautaire d'Amazon et un fork d'Elasticsearch et Kibana. Il s'agit d'un moteur de recherche et d'une suite d'analyse entièrement open source doté de fonctionnalités riches et innovantes. Le composant principal du projet OpenSearch est OpenSearch (un fork d'Elasticsearch) et les OpenSearch Dashboards (un fork de Kibana). Les deux composants fournissent des fonctionnalités telles que la sécurité d'entreprise, les alertes, l'apprentissage automatique, SQL, la gestion de l'état des index, etc.
OpenSearch est 100 % open source et sous licence Apache 2.0. Il vous permet d'ingérer, de sécuriser, de rechercher, de regrouper, d'afficher et d'analyser facilement des données pour un certain nombre de cas d'utilisation tels que l'analyse de journaux, la recherche d'applications, la recherche d'entreprise, etc.
Cet article vous montre comment installer OpenSearch - une suite open source de recherche, d'analyse et de visualisation - sur le serveur Rocky Linux 9. Cet article comprend la sécurisation du déploiement d'OpenSearch avec des certificats TLS/SSL et la configuration de l'authentification et de l'autorisation sur OpenSearch.
Cet article vous montre également comment installer OpenSearch Dashboards, un outil de visualisation open source comme Kibana, puis le configurer pour se connecter à OpenSearch. Une fois cet article terminé, une suite d'analyse et de visualisation de données sera installée sur votre serveur Rocky Linux.
Conditions préalables
Pour commencer avec ce guide, vous devez remplir les conditions suivantes :
- Un serveur avec Rocky Linux 9 et 4 Go de RAM minimum : cet exemple utilise un serveur Rocky Linux avec le nom d'hôte « node-rock1 », l'adresse IP « 192.168.5.25 » et RAM 8 Go.
- Un utilisateur non root avec les privilèges d'administrateur sudo/root.
- Un SELinux fonctionne en mode permissif.
C'est ça; Commençons par installer OpenSearch.
Système de configuration
La première chose à faire est de préparer votre hôte Rocky Linux. Cela inclut la configuration du nom d'hôte et du nom de domaine complet appropriés, la désactivation de SWAP et l'augmentation de la mémoire maximale des cartes sur votre système.
Pour ce faire, vous devez vous connecter à votre serveur Rocky Linux.
Émettez maintenant la commande suivante pour configurer le nom d'hôte et le nom de domaine complet appropriés pour votre serveur Rocky Linux.
Dans cet exemple, vous allez configurer le nom d'hôte du système avec « node-rock1 » et le nom de domaine complet « node-rock1.hwdomain.lan ». Assurez-vous également de modifier l'adresse IP dans la commande suivante avec l'adresse IP de votre serveur.
sudo hostnamectl set-hostname node-rock1
echo '192.168.5.25 node-rock1.hwdomain.lan node-rock1' >> /etc/hosts
Déconnectez-vous de votre session en cours et reconnectez-vous. Ensuite, vérifiez le nom de domaine complet via la commande ci-dessous.
sudo hostname -f
Vous devriez obtenir une sortie comme celle-ci. Le nom de domaine complet sur l'hôte est configuré sur « node-rock1.hwdomain.lan ».
Ensuite, vous devrez désactiver la pagination de la mémoire et SWAP sur votre hôte Rocky Linux. La désactivation de la pagination de la mémoire et de SWAP augmentera les performances de votre serveur OpenSearch.
Exécutez la commande ci-dessous pour désactiver SWAP sur votre système. La première commande désactivera définitivement SWAP en commentant la configuration SWAP dans le fichier '/etc/fstab'. Et la deuxième commande est utilisée pour désactiver SWAP sur votre session en cours.
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
sudo swapoff -a
Vérifiez l'état de SWAP sur votre système via la commande suivante.
free -m
Vous recevrez un résultat similaire à celui-ci : la section « Swap » avec une valeur de 0 au total confirme que le SWAP est désactivé.
Enfin, vous devez augmenter la mémoire maximale des cartes sur votre système pour OpenSearch. Et cela peut être fait via le fichier '/etc/sysctl.conf'.
Exécutez la commande suivante pour augmenter la mémoire maximale des cartes à « 262144 » et appliquez les modifications. Avec cela, vous ajouterez une nouvelle configuration 'vm.max_map_count=262144' au fichier /etc/sysctl.conf' et appliquerez les modifications sur votre système via le 'sysctl -p ' commande.
sudo echo "vm.max_map_count=262144" >> /etc/sysctl.conf
sudo sysctl -p
Vous pouvez maintenant désactiver l'état de la mémoire maximale des cartes sur votre système avec la commande ci-dessous. Et vous devriez augmenter « max_map_count » à « 262144 ».
cat /proc/sys/vm/max_map_count
Sortir :
Une fois le système configuré, vous êtes prêt à installer OpenSearch.
Installation d'OpenSearch
OpenSearch peut être installé de plusieurs manières. Vous pouvez installer OpenSearch via tarball, Docker, RPM et Kubernetes. Pour les distributions basées sur RHEL, vous pouvez facilement installer OpenSearch via le référentiel officiel OpenSearch.
Exécutez la commande curl ci-dessous pour télécharger le référentiel OpenSearch sur votre système. Ensuite, vérifiez la liste des référentiels disponibles via la commande ci-dessous.
sudo curl -SL https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/opensearch-2.x.repo -o /etc/yum.repos.d/opensearch-2.x.repo
sudo dnf repolist
En cas de succès, vous devriez obtenir le référentiel « OpenSearch 2.x » disponible dans la sortie de votre terminal.
Vous pouvez également vérifier les packages disponibles de « opensearch » en exécutant la commande suivante.
sudo dnf info opensearch
Au moment d'écrire ces lignes, le référentiel OpenSearch propose deux versions d'OpenSearch pour différentes architectures système : OpenSearch 2.5 pour x86_64 et aarch64.
Appelez la commande dnf suivante pour installer OpenSearch sur votre serveur Rocky Linux. Lorsque vous êtes invité à confirmer, saisissez y pour confirmer et appuyez sur ENTRÉE pour continuer.
sudo dnf install opensearch
Sortir :
Lors de l'installation, vous serez également invité à ajouter la clé GPG pour le référentiel OpenSearch. Saisissez y pour confirmer et appuyez sur ENTER.
Une fois OpenSearch installé avec succès, rechargez le gestionnaire systemd et appliquez les nouvelles modifications à l'aide de l'utilitaire de commande systemctl ci-dessous.
sudo systemctl daemon-reload
Maintenant, démarrez et activez OpenSearch à l’aide de la commande ci-dessous. Avec cela, OpenSearch devrait fonctionner avec les configurations par défaut et il est également activé, ce qui signifie qu'OpenSearch démarrera automatiquement au démarrage du système.
sudo systemctl start opensearch
sudo systemctl enable opensearch
Pour vous assurer qu'OpenSearch fonctionne et fonctionne, vous pouvez vérifier à l'aide de la commande systemctl ci-dessous.
sudo systemctl status opensearch
Vous devriez recevoir une sortie comme celle-ci : la sortie 'active (running)' confirme que le service OpenSearch est en cours d'exécution, tandis que '... activé;...' confirme que le service OpenSearch est activé.
Vous avez maintenant installé OpenSearch et il est maintenant en cours d'exécution et activé. Vous pouvez maintenant passer à l'étape suivante pour configurer votre installation OpenSearch.
Configuration d'OpenSearch
Par défaut, les configurations OpenSearch sont stockées dans le répertoire '/etc/opensearch'. Dans cette étape, vous effectuerez la configuration de base d’OpenSearch en mode nœud unique. Vous augmenterez également la mémoire maximale du tas sur votre système pour obtenir de meilleures performances du serveur OpenSearch.
Ouvrez le fichier de configuration OpenSearch '/etc/opensearch/opensearch.yml' à l'aide de la commande de l'éditeur nano ci-dessous.
sudo nano /etc/opensearch/opensearch.yml
Modifiez certains paramètres OpenSearch par défaut avec les lignes suivantes. Avec cela, vous exécuterez OpenSearch dans une adresse IP réseau spécifique '192.168.5.25', le type de déploiement est 'single-node' et réactiverez le Plugins de sécurité OpenSearch.
# Bind OpenSearch to the correct network interface. Use 0.0.0.0
# to include all available interfaces or specify an IP address
# assigned to a specific interface.
network.host: 192.168.5.25
# Unless you have already configured a cluster, you should set
# discovery.type to single-node, or the bootstrap checks will
# fail when you try to start the service.
discovery.type: single-node
# If you previously disabled the security plugin in opensearch.yml,
# be sure to re-enable it. Otherwise you can skip this setting.
plugins.security.disabled: false
Enregistrez et quittez le fichier '/etc/opensearch/opensearch.yml' lorsque vous avez terminé.
Ensuite, ouvrez le fichier d'options JVM par défaut pour OpenSearch '/etc/opensearch/jvm.options' à l'aide de la commande suivante de l'éditeur nano.
sudo nano /etc/opensearch/jvm.options
Modifiez la mémoire de tas maximale par défaut avec les lignes suivantes. Cela dépend de la mémoire de votre serveur, vous pouvez allouer plus de 2 Go pour OpenSearch si vous disposez d'une plus grande mémoire RAM.
-Xms2g
-Xmx2g
Enregistrez le fichier et quittez l'éditeur lorsque vous avez terminé.
Enfin, exécutez l'utilitaire de commande systemctl ci-dessous pour redémarrer le service OpenSearch et appliquer les modifications.
sudo systemctl restart opensearch
Maintenant, OpenSearch devrait s'exécuter sur l'adresse IP '192.168.5.25' avec le port par défaut '9200'. Vérifiez la liste des ports ouverts sur votre système en exécutant la commande ss ci-dessous.
ss -tulpn
Sécuriser OpenSearch avec des certificats TLS
Au cours de cette étape, vous allez générer plusieurs certificats qui seront utilisés pour sécuriser le déploiement d'OpenSearch. Vous sécuriserez les communications de nœud à nœud avec des certificats TLS et sécuriserez les trafics de la couche REST entre les communications client-serveur via TLS.
Ci-dessous la liste des certificats qui seront générés :
- Certificats d'autorité de certification racine : ces certificats seront utilisés pour signer d'autres certificats.
- Certificats d'administrateur : ces certificats seront utilisés pour obtenir les droits d'administrateur permettant d'effectuer toutes les tâches liées au plugin de sécurité.
- Certificats de nœud et client : ces certificats seront utilisés par les nœuds et les clients au sein du cluster OpenSearch.
Avant de générer de nouveaux certificats TLS, supprimons certains certificats par défaut et configurations OpenSearch par défaut.
Exécutez la commande suivante pour supprimer les certificats OpenSearch TLS par défaut. Ensuite, ouvrez la configuration OpenSearch '/etc/opensearch/opensearch.yml' à l'aide de la commande nano editor suivante.
rm -f /opt/opensearch/{esnode-key.pem,esnode.pem,kirk-key.pem,kirk.pem,root-ca.pem}
sudo nano /etc/opensearch/opensearch.yml
Au bas de la ligne, commentez la configuration de démonstration de sécurité OpenSearch par défaut comme ci-dessous.
Enregistrez et quittez le fichier lorsque vous avez terminé.
Ensuite, exécutez la commande suivante pour créer un nouveau répertoire « /etc/opensearch/certs ». Ce répertoire servira à stocker les nouveaux certificats TLS qui seront générés. Ensuite, déplacez-y votre répertoire de travail.
mkdir -p /etc/opensearch/certs; cd /etc/opensearch/certs
Génération de certificats d'autorité de certification racine
Générez une clé privée pour les certificats de l'autorité de certification racine à l'aide de ce qui suit.
openssl genrsa -out root-ca-key.pem 2048
Générez maintenant un certificat d'autorité de certification racine auto-signé via la commande ci-dessous. Vous pouvez également modifier les valeurs du paramètre « -subj » avec vos informations.
openssl req -new -x509 -sha256 -key root-ca-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=ROOT" -out root-ca.pem -days 730
Avec cela, vous devriez obtenir la clé privée de l'autorité de certification racine 'root-ca-key.pem' et le certificat de l'autorité de certification racine 'root-ca.pem'.
Sortir :
Génération de certificats d'administrateur
Générez la nouvelle clé privée du certificat d'administrateur 'admin-key-temp.pem' à l'aide de la commande ci-dessous.
openssl genrsa -out admin-key-temp.pem 2048
Convertissez la clé privée d'administrateur par défaut au format PKCS#8. Pour l'application Java, vous devez convertir la clé privée par défaut en algorithme compatible PKCS#12 (3DES). Avec cela, votre clé privée d'administrateur devrait être « admin-key.pem ».
openssl pkcs8 -inform PEM -outform PEM -in admin-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out admin-key.pem
Ensuite, exécutez la commande ci-dessous pour générer le CSR (Certificate Signing Request) de l'administrateur à partir de la clé privée « admin-key.pem ». Votre CSR généré devrait maintenant être le fichier 'admin.csr'.
Étant donné que ce certificat est utilisé pour authentifier un accès élevé et n'est lié à aucun hôte, vous pouvez utiliser n'importe quoi dans la configuration « CN ».
openssl req -new -key admin-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=A" -out admin.csr
Enfin, exécutez la commande ci-dessous pour signer le CSR d'administrateur avec le certificat d'autorité de certification racine et la clé privée. La sortie du certificat d'administrateur est le fichier « admin.pem ».
openssl x509 -req -in admin.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out admin.pem -days 730
Votre certificat d'administrateur doit maintenant être le fichier « admin.pem » signé avec les certificats de l'autorité de certification racine. Et la clé privée de l'administrateur est « admin-key.pem », qui est convertie au format PKCS#8.
Sortir :
Génération de certificats de nœud
Le processus de génération des certificats de nœud est similaire aux certificats d'administrateur. Mais vous pouvez spécifier la valeur CN avec le nom d'hôte ou l'adresse IP de votre nœud.
Générez la clé privée du nœud à l'aide de la commande ci-dessous.
openssl genrsa -out node-rock1-key-temp.pem 2048
Convertissez la clé privée du nœud au format PKCS#8. La clé privée de votre nœud devrait maintenant être « node-rock1-key.pem ».
openssl pkcs8 -inform PEM -outform PEM -in node-rock1-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out node-rock1-key.pem
Ensuite, créez un nouveau CSR pour le certificat de nœud. Assurez-vous de modifier la valeur « CN » avec le nom d'hôte de votre nœud. Ce certificat est lié aux hôtes et vous devez spécifier la valeur CN avec le nom d'hôte ou l'adresse IP de votre nœud OpenSearch.
openssl req -new -key node-rock1-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=node-rock1.hwdomain.lan" -out node-rock1.csr
Avant de signer le certificat de nœud, exécutez la commande ci-dessous pour créer un fichier d'extension SAN « node-rock1.ext ». Celui-ci contiendra le nom d'hôte du nœud ou le FQDN ou l'adresse IP.
echo 'subjectAltName=DNS:node-rock1.hwdomain.lan' > node-rock1.ext
Enfin, signez le fichier CSR du certificat de nœud avec le certificat CA racine et privé à l'aide de la commande ci-dessous.
openssl x509 -req -in node-rock1.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out node-rock1.pem -days 730 -extfile node-rock1.ext
Avec cela, votre certificat de nœud est un fichier 'node-rock1.pem' et la clé privée est 'node-rock1-key.pem'.
Sortir :
Configuration des certificats
Exécutez la commande ci-dessous pour supprimer le certificat temporaire, le fichier d'extension CSR et SAN.
rm *temp.pem *csr *ext
ls
Convertissez le certificat CA racine au format .crt.
openssl x509 -outform der -in root-ca.pem -out root-ca.crt
Ajoutez le certificat CA racine à votre système Rocky Linux à l'aide de la commande ci-dessous. Copiez le fichier root-ca.crt dans le répertoire « /etc/pki/ca-trust/source/anchors/ » et chargez le nouveau certificat d'autorité de certification racine sur votre système.
sudo cp root-ca.crt /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust
Sortir :
Enfin, exécutez la commande ci-dessous pour configurer l'autorisation et la propriété appropriées de vos certificats. La propriété du répertoire « /etc/opensearch/certs » doit être l'utilisateur « opensearch » avec l'autorisation 0700. Et pour tous les fichiers de certificat, l'autorisation doit être 0600.
sudo chown -R opensearch:opensearch /etc/opensearch/certs
sudo chmod 0700 /etc/opensearch/certs
sudo chmod 0600 /etc/opensearch/certs/*.pem
sudo chmod 0600 /etc/opensearch/certs/*.crt
Ajout de certificats TLS à OpenSearch
Avec les certificats TLS générés, l'autorité de certification racine, les certificats d'administrateur et les certificats de nœud le sont. Vous allez ensuite ajouter des certificats au fichier de configuration OpenSearch '/etc/opensearch/opensearch.yml'. Dans cet exemple, vous allez créer un nouveau script bash qui ajoutera des certificats et des paramètres de plug-in de sécurité TLS à OpenSearch.
Créez un nouveau fichier « add.sh » à l'aide de la commande de l'éditeur nano ci-dessous.
nano add.sh
Ajoutez les lignes suivantes au fichier. Assurez-vous de modifier et d'utiliser le chemin correct de vos fichiers de certificat et du fichier de configuration OpenSearch cible.
#! /bin/bash
# Before running this script, make sure to replace the CN in the
# node's distinguished name with a real DNS A record.
echo "plugins.security.ssl.transport.pemcert_filepath: /etc/opensearch/certs/node-rock1.pem" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.ssl.transport.pemkey_filepath: /etc/opensearch/certs/node-rock1-key.pem" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.ssl.transport.pemtrustedcas_filepath: /etc/opensearch/certs/root-ca.pem" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.ssl.http.enabled: true" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.ssl.http.pemcert_filepath: /etc/opensearch/certs/node-rock1.pem" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.ssl.http.pemkey_filepath: /etc/opensearch/certs/node-rock1-key.pem" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.ssl.http.pemtrustedcas_filepath: /etc/opensearch/certs/root-ca.pem" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.allow_default_init_securityindex: true" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.authcz.admin_dn:" | sudo tee -a /etc/opensearch/opensearch.yml
echo " - 'CN=A,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.nodes_dn:" | sudo tee -a /etc/opensearch/opensearch.yml
echo " - 'CN=node-rock1.hwdomain.lan,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.audit.type: internal_opensearch" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.enable_snapshot_restore_privilege: true" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.check_snapshot_restore_write_privileges: true" | sudo tee -a /etc/opensearch/opensearch.yml
echo "plugins.security.restapi.roles_enabled: [\"all_access\", \"security_rest_api_access\"]" | sudo tee -a /etc/opensearch/opensearch.yml
Enregistrez et quittez le fichier lorsque vous avez terminé.
Ensuite, rendez le fichier 'add.sh' exécutable et exécutez-le. Le nouveau plugin de sécurité TLS pour OpenSearch doit être ajouté au fichier de configuration OpenSearch '/etc/opensearch/opensearch.yml'.
chmod +x add.sh
./add.sh
Sortir :
Si vous vérifiez le fichier de configuration OpenSearch '/etc/opensearch/opensearch.yml', vous devriez voir les nouveaux paramètres générés par le script 'add.sh'.
Vous avez maintenant ajouté des certificats TLS à OpenSearch et activé les plugins de sécurité. Dans l'étape suivante, vous sécuriserez OpenSearch avec authentification et autorisation en créant un nouvel utilisateur sur OpenSearch.
Définition de l'utilisateur administrateur OpenSearch
Tout d'abord, déplacez votre répertoire de travail vers '/usr/share/opensearch/plugins/opensearch-security/tools' en exécutant la commande cd ci-dessous.
cd /usr/share/opensearch/plugins/opensearch-security/tools
Exécutez le script 'hash.sh' pour générer un nouveau hachage de mot de passe pour OpenSearch. Saisissez le mot de passe que vous allez créer et appuyez sur ENTRÉE.
OPENSEARCH_JAVA_HOME=/usr/share/opensearch/jdk ./hash.sh
Vous devriez obtenir le hachage généré de votre mot de passe. Copiez ce hachage car vous devrez ajouter ce mot de passe haché à la configuration OpenSearch.
Réexécutez le script 'hash.sh' pour générer un autre hachage de mot de passe qui sera utilisé pour les tableaux de bord OpenSearch.
OPENSEARCH_JAVA_HOME=/usr/share/opensearch/jdk ./hash.sh
Avec cela, vous avez maintenant généré deux mots de passe hachés pour OpenSearch.
Ensuite, ouvrez la configuration utilisateur OpenSearch '/etc/opensearch/opensearch-security/internal_users.yml' à l'aide de la commande de l'éditeur nano ci-dessous. Vous allez maintenant configurer les utilisateurs OpenSearch via OpenSearch Security.
sudo nano /etc/opensearch/opensearch-security/internal_users.yml
Supprimez tous les utilisateurs OpenSearch par défaut et remplacez-les par les lignes suivantes. Assurez-vous de changer le mot de passe haché avec votre mot de passe généré. Dans cet exemple, vous allez créer deux utilisateurs pour OpenSearch, l'utilisateur « admin » pour OpenSearch et l'utilisateur « kibanaserver » qui sera utilisé par les tableaux de bord OpenSearch.
...
...
admin:
hash: "$2y$12$BnfqwqWRi7DkyuPgLa8.3.kLzdpIY11jFpSXTAOKOMCVj/i20k9oW"
reserved: true
backend_roles:
- "admin"
description: "Admin user"
kibanaserver:
hash: "$2y$12$kYjgPjPzIp9oTghNdWIHcuUalE99RqSYtTCh6AiNuS5wmeEaWnbzK"
reserved: true
description: "Demo OpenSearch Dashboards user"
Enregistrez et quittez le fichier lorsque vous avez terminé.
Exécutez maintenant l'utilitaire de commande systemctl suivant pour redémarrer le service OpenSearch et appliquer les modifications.
sudo systemctl restart opensearch
Accédez maintenant au répertoire « /usr/share/opensearch/plugins/opensearch-security/tools » et appelez le script « securityadmin.sh » pour appliquer les nouvelles modifications sur Sécurité OpenSearch.
cd /usr/share/opensearch/plugins/opensearch-security/tools
OPENSEARCH_JAVA_HOME=/usr/share/opensearch/jdk ./securityadmin.sh -h 192.168.5.25 -p 9200 -cd /etc/opensearch/opensearch-security/ -cacert /etc/opensearch/certs/root-ca.pem -cert /etc/opensearch/certs/admin.pem -key /etc/opensearch/certs/admin-key.pem -icl -nhnv
Le script « securityadmin.sh » se connectera au serveur OpenSearch qui s'exécute sur l'adresse IP « 192.168.5.25 » et le port par défaut « 9200 ». . Ensuite, appliquez les nouveaux utilisateurs que vous avez configurés dans le fichier « /etc/opensearch/opensearch-security/internal_users.yml » au déploiement OpenSearch.
enfin, avec les nouveaux utilisateurs ajoutés et appliqués via le script 'securityadmin.sh', vous allez désormais vérifier les utilisateurs OpenSearch via la commande curl ci-dessous. Assurez-vous de modifier le nom d'hôte ou l'adresse IP ainsi que l'utilisateur et le mot de passe pour OpenSearch.
curl https://node-rock1:9200 -u admin:password -k
curl https://node-rock1:9200 -u kibanaserver:kibanapass -k
Si la configuration de l'utilisateur réussit, vous devriez recevoir un résultat comme celui-ci :
Vérifiez l'utilisateur OpenSearch « admin ».
Vérifiez l'utilisateur OpenSearch 'kibanaserver'.
À ce stade, vous avez maintenant terminé l'installation d'OpenSearch via les packages RPM sur le serveur Rocky Linux 9. Et a également sécurisé le déploiement d'OpenSearch via des certificats TLS et activé l'authentification et l'autorisation des utilisateurs via les plugins OpenSearch Security.
À l'étape suivante, vous installerez les tableaux de bord OpenSearch et y ajouterez votre serveur OpenSearch en utilisant le nouvel utilisateur que vous avez créé « kibanaserver ».
Installation du tableau de bord OpenSearch
Étant donné que le référentiel OpenSearch utilise toujours le hachage SHA1 existant pour vérifier le package OpenSearch Dashboard, vous devez modifier les politiques de chiffrement par défaut de votre Rocky Linux en LEGACY.
Exécutez la commande ci-dessous pour mettre à jour la politique de chiffrement par défaut vers LEGACY.
sudo update-crypto-policies --set LEGACY
Ensuite, ajoutez le référentiel OpenSearch Dashboards à votre système via la commande curl ci-dessous.
sudo curl -SL https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.x/opensearch-dashboards-2.x.repo -o /etc/yum.repos.d/opensearch-dashboards-2.x.repo
Vérifiez ensuite la liste des référentiels disponibles sur votre système. Vous devriez voir le référentiel « OpenSearch Dashboard 2.x » disponible dans la liste des référentiels.
sudo dnf repolist
Sortir :
Appelez maintenant la commande dnf suivante pour installer le package OpenSearch Dashboards. Lorsque vous y êtes invité, saisissez y pour confirmer et appuyez sur ENTRÉE pour continuer.
sudo dnf install opensearch-dashboards
Lors de l'installation, vous serez également invité à accepter la clé GPG du référentiel OpenSearch Dashboards. Saisissez y et appuyez sur ENTER pour confirmer.
Une fois les tableaux de bord OpenSearch installés, exécutez l'utilitaire de commande systemctl ci-dessous pour démarrer et activer le service « opensearch-dashboard ». Le tableau de bord OpenSearch devrait maintenant fonctionner avec la configuration par défaut et il doit être activé, ce qui signifie que le service démarrera automatiquement au démarrage du système.
sudo systemctl start opensearch-dashboards
sudo systemctl enable opensearch-dashboards
Vérifiez le service OpenSearch Dashboard pour vous assurer qu’il est en cours d’exécution.
sudo systemctl status opensearch-dashboards
Vous devriez recevoir une sortie comme celle-ci : l'état du service OpenSearch Dashboard est en cours d'exécution et il est maintenant également activé et sera exécuté automatiquement au démarrage du système.
Passez maintenant à l'étape suivante pour configurer l'installation de votre tableau de bord OpenSearch.
Configuration des tableaux de bord OpenSearch
Au cours de cette étape, vous configurerez les tableaux de bord OpenSearch sur l'adresse IP et le port sur lesquels le tableau de bord Open Search doit être exécuté, et vous configurerez également une connexion au serveur OpenSearch.
Ouvrez le fichier de configuration d'OpenSearch Dashboard '/etc/opensearch-dashboards/opensearch-dashboard.yml' à l'aide de l'éditeur nano ci-dessous.
sudo nano /etc/opensearch-dashboards/opensearch-dashboard.yml
Décommentez et modifiez les paramètres par défaut 'server.port' et 'server.host' avec les lignes suivantes. Les tableaux de bord OpenSearch par défaut s'exécuteront sur le port « 5601 », assurez-vous d'ajuster le paramètre « server.host » avec l'adresse IP de votre serveur.
# OpenSearch Dashboards is served by a back end server. This setting specifies the port to use.
server.port: 5601
# Specifies the address to which the OpenSearch Dashboards server will bind. IP addresses and host names are both valid values.
# The default is 'localhost', which usually means remote machines will not be able to connect.
# To allow connections from remote users, set this parameter to a non-loopback address.
server.host: "192.168.5.25"
Accédez à la ligne inférieure de la configuration et modifiez les détails des paramètres OpenSearch utilisés pour se connecter au serveur OpenSearch. Assurez-vous de modifier les paramètres "opensearch.hosts", "opensearch.username" et "opensearch.password" avec votre serveur OpenSearch. détails.
opensearch.hosts: [https://192.168.5.25:9200]
opensearch.ssl.verificationMode: none
opensearch.username: kibanaserver
opensearch.password: kibanapass
Enregistrez le fichier et quittez l'éditeur lorsque vous avez terminé.
Ensuite, exécutez la commande systemctl ci-dessous pour redémarrer le service OpenSearch Dashboards et appliquer les modifications.
sudo systemctl restart opensearch-dashboards
Avec cela, les tableaux de bord OpenSearch doivent fonctionner sur l'adresse IP « 192.168.5.25 » avec le port « 5601 ». De plus, le tableau de bord OpenSearch sera connecté au serveur OpenSearch avec les détails de l'utilisateur « kibanaserver ».
Accéder aux tableaux de bord OpenSearch
À ce stade, vous avez terminé l'installation et la configuration d'OpenSearch Dashboard. Vous allez maintenant vérifier l'installation d'OpenSearch Dashboards en y accédant via un navigateur Web et en vérifiant la connexion au serveur OpenSearch via « Dev Tools ».
Avant d'accéder aux tableaux de bord OpenSearch, vous devez ouvrir le port 5601 sur votre pare-feu.
Appelez les commandes firewall-cmd suivantes pour ouvrir le port TCP 5601. Ensuite, rechargez le pare-feu pour appliquer les modifications.
sudo firewall-cmd --add-port=5601/tcp --permanent
sudo firewall-cmd --reload
Ensuite, vérifiez la liste des règles sur firewalld à l'aide de la commande ci-dessous. Vous devriez voir que le port 5601 est disponible sur firewalld.
sudo firewall-cmd --list-all
Ouvrez maintenant votre navigateur Web et visitez l'adresse IP d'OpenSearch Dashboards avec le port 5601 (c'est-à-dire : http:192.168.5.25:5601). Vous verrez maintenant la page de connexion d'OpenSearch Dashboards.
Saisissez votre nom d'utilisateur et votre mot de passe que vous avez créés. Dans cet exemple, l'utilisateur est « kibanaserver ». Cliquez ensuite sur le bouton « Connexion » pour confirmer et vous connecter aux tableaux de bord OpenSearch.
En cas de succès, vous devriez obtenir la page suivante avec le message « Bienvenue dans les tableaux de bord OpenSearch ». Vous pouvez maintenant cliquer sur « Ajouter des données » pour ajouter de nouvelles données à votre serveur OpenSearch ou cliquer sur « Explorer les miennes » pour une configuration ultérieure.
Ensuite, pour vous assurer que les tableaux de bord OpenSearch sont connectés au serveur OpenSearch, vous suivrez les étapes suivantes :
Cliquez sur le menu de gauche, accédez à la section Gestion et cliquez sur « Outils de développement ».
Saisissez maintenant la requête « GET/» sur la console et cliquez sur le bouton de lecture. En cas de succès, vous devriez voir la sortie sur le côté droit avec des informations détaillées sur votre serveur OpenSearch. Aussi, vous pouvez voir en haut à droite le code HTTP '200 - OK' qui confirme que la requête est exécutée sans erreur.
Dans cet esprit, vous avez maintenant installé OpenSearch Dashboards sur le serveur Rocky Linux via le package RPM. De plus, vous avez configuré les tableaux de bord OpenSearch pour vous connecter au serveur OpenSearch.
Conclusion
Dans cet article, vous avez installé OpenSearch via RPM sur le serveur Rocky Linux 9. Vous avez également sécurisé OpenSearch avec des certificats TLS, activé l'authentification et l'autorisation et configuré les utilisateurs dans OpenSearch. En plus de cela, vous avez également configuré et optimisé le serveur Rocky Linux pour le déploiement d'OpenSearch.
Vous avez également installé les tableaux de bord OpenSearch via RPM sur le serveur Rocky Linux 9. Vous avez configuré et connecté avec succès les tableaux de bord OpenSearch à OpenSearch Server avec l'authentification activée et vous avez également vérifié avec succès l'installation d'OpenSearch et des tableaux de bord OpenSearch.
Avec cette configuration, vous pouvez en savoir plus sur OpenSearch en déployant OpenSearch Cluster, en configurant une authentification supplémentaire et bien d'autres encore. Vous en apprendrez davantage sur OpenSearch à partir de la documentation officielle d'OpenSearch.