Installation OpenSearch · 12 min read · Sep 12, 2025

Comment installer OpenSearch sur Ubuntu 24.04

OpenSearch est un projet communautaire d’Amazon et un fork d’Elasticsearch et Kibana. C’est un moteur de recherche et une suite d’analytique entièrement open-source avec des fonctionnalités riches et une fonctionnalité innovante. Les principaux composants du projet OpenSearch sont OpenSearch (un fork d’Elasticsearch) et les OpenSearch Dashboards (un fork de Kibana). Les deux composants offrent des fonctionnalités telles que la sécurité d’entreprise, l’alerte, l’apprentissage automatique, SQL, la gestion de l’état des index, et plus encore.

Ce guide vous montrera comment installer OpenSearch et OpenSearch Dashboard sur le serveur Ubuntu 24.04. Vous sécuriserez également OpenSearch avec des certificats TLS et activerez l’authentification avec un nom d’utilisateur et un mot de passe.

Prérequis

Avant de commencer, assurez-vous d’avoir les éléments suivants :

  • Un serveur Ubuntu 24.04 avec au moins 8 Go de RAM
  • Un utilisateur non-root avec des droits d’administrateur sur le serveur

Ajout du dépôt OpenSearch

Pour commencer, vous devez ajouter les dépôts OpenSearch et OpenSearch Dashboard à votre système. Dans cet exemple, nous utiliserons la dernière version stable d’OpenSearch.

Tout d’abord, exécutez la commande ci-dessous pour installer les paquets de base sur votre système Ubuntu.

sudo apt install lsb-release ca-certificates curl gnupg2 -y

Téléchargez la clé GPG pour le dépôt OpenSearch avec la commande suivante.

curl -o- https://artifacts.opensearch.org/publickeys/opensearch.pgp | sudo gpg --dearmor --batch --yes -o /usr/share/keyrings/opensearch-keyring

Ajoutez les dépôts pour OpenSearch et OpenSearch Dashboard à votre système avec la commande ci-dessous. Dans cet exemple, vous utiliserez la version stable OpenSearch 2.x.

echo "deb [signed-by=/usr/share/keyrings/opensearch-keyring] https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt stable main" | sudo tee /etc/apt/sources.list.d/opensearch-2.x.list  

echo "deb [signed-by=/usr/share/keyrings/opensearch-keyring] https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.x/apt stable main" | sudo tee /etc/apt/sources.list.d/opensearch-dashboards-2.x.list

Enfin, exécutez la commande ‘ apt ‘ ci-dessous pour mettre à jour votre index de paquets et récupérer les nouvelles informations sur les paquets OpenSearch.

sudo apt update

Installation d’OpenSearch et d’OpenSearch Dashboard

Après l’ajout du dépôt OpenSearch, vous installerez OpenSearch et OpenSearch Dashboard via le gestionnaire de paquets APT. Ensuite, vous démarrerez les deux services via l’utilitaire ‘ systemctl ‘.

Avant d’installer OpenSearch, exécutez la commande ci-dessous pour générer un mot de passe aléatoire pour l’installation d’OpenSearch. Assurez-vous de copier la sortie et d’inclure des majuscules, des chiffres et des symboles.

sudo openssl rand -hex 16

Maintenant, exécutez la commande ci-dessous pour installer les paquets ‘ opensearch ‘ et ‘ opensearch-dashboard ‘. Assurez-vous de changer ‘ OPENSEARCH_INITIAL_ADMIN_PASSWORD ‘ et tapez ‘ Y ‘ pour confirmer l’installation.

sudo env OPENSEARCH_INITIAL_ADMIN_PASSWORD=B07e_af7e9f8fe12e@85ab797ddc1f174Dapt-get install opensearch opensearch-dashboard

Après la fin de l’installation, exécutez la commande ‘ systemctl ‘ ci-dessous pour recharger le gestionnaire systemd et appliquer les nouveaux fichiers de service.

sudo systemctl daemon-reload

Vous pouvez maintenant démarrer, activer et vérifier OpenSearch avec la commande ci-dessous.

sudo systemctl enable --now opensearch  
sudo systemctl status opensearch

Vous pouvez voir ci-dessous qu’OpenSearch est en cours d’exécution.

vérifier opensearch

Enfin, vous pouvez maintenant démarrer, activer et vérifier le service OpenSearch Dashboard en utilisant la commande suivante.

sudo systemctl enable --now opensearch-dashboards  
sudo systemctl status opensearch-dashboards

Dans la sortie suivante, vous pouvez voir que le service ‘ opensearch-dashboards ‘ est en cours d’exécution.

vérifier le tableau de bord opensearch

Configuration d’OpenSearch

Avec OpenSearch installé, vous configurerez l’installation via le fichier ‘ /etc/opensearch/opensearch.yml ‘. Vous augmenterez également la taille maximale par défaut de la JVM (Java Virtual Memory) pour OpenSearch si nécessaire.

Ouvrez la configuration par défaut d’OpenSearch ‘ /etc/opensearch/opensearch.yml ‘ avec l’éditeur ‘ nano ‘.

sudo nano /etc/opensearch/opensearch.yml

Changez les configurations suivantes d’OpenSearch :

    • Changez l’option ‘ network.host ‘ avec votre adresse IP locale
    • Ajoutez le ‘ discovery.type ‘ comme ‘ single-node ‘ pour exécuter OpenSearch en mode unique
    • Réglez le ‘ plugins.security.disabled ‘ sur ‘ false
# Liez OpenSearch à l'interface réseau correcte. Utilisez 0.0.0.0  
# pour inclure toutes les interfaces disponibles ou spécifiez une adresse IP  
# assignée à une interface spécifique.  
network.host: 192.168.10.60  
  
# À moins que vous n'ayez déjà configuré un cluster, vous devez définir  
# discovery.type sur single-node, ou les vérifications de bootstrap échoueront  
# lorsque vous essayez de démarrer le service.  
discovery.type: single-node  
  
# Si vous avez précédemment désactivé le plugin de sécurité dans opensearch.yml,  
# assurez-vous de le réactiver. Sinon, vous pouvez ignorer ce paramètre.  
plugins.security.disabled: false

Enregistrez le fichier et quittez l’éditeur lorsque vous avez terminé.

Ensuite, ouvrez la configuration de la JVM (Java Virtual Machine) ‘ /etc/opensearch/jvm.options ‘ avec l’éditeur ‘ nano ‘.

sudo nano /etc/opensearch/jvm.options

Augmentez la mémoire maximale par défaut pour OpenSearch si nécessaire. La valeur par défaut est ‘ 1 Go ‘.

-Xms2g  
-Xmx2g

Enregistrez et quittez le fichier.

Enfin, exécutez la commande ‘ systemctl ‘ suivante pour redémarrer ‘ opensearch ‘ et appliquer vos modifications. Avec cela, OpenSearch sera en cours d’exécution sur une adresse IP locale en mode unique.

sudo systemctl restart opensearch

Sécurisation d’OpenSearch avec des certificats TLS/SSL

Maintenant que vous avez configuré OpenSearch, vous devrez configurer la sécurité d’OpenSearch via des certificats SSL/TLS. Dans cette section, vous désactiverez les certificats de démon, puis générerez des certificats racines, des certificats administratifs et des certificats d’hôte/serveur.

Avant de générer des certificats SSL, supprimez les certificats de démon d’OpenSearch en utilisant la commande ci-dessous.

rm -f /opt/opensearch/{esnode-key.pem,esnode.pem,kirk-key.pem,kirk.pem,root-ca.pem}

Éditez la configuration d’OpenSearch ‘ /etc/opensearch/opensearch.yml ‘ avec l’éditeur ‘ nano ‘.

sudo nano /etc/opensearch/opensearch.yml

Commentez la configuration de sécurité ‘ demo ‘ pour OpenSearch comme suit.

désactiver le démon

Enregistrez le fichier et quittez l’éditeur.

Maintenant, créez un nouveau répertoire ‘ /etc/opensearch/certs ‘ et déplacez-vous à l’intérieur. Ce répertoire sera utilisé pour stocker de nouveaux certificats pour OpenSearch.

mkdir -p /etc/opensearch/certs; cd /etc/opensearch/certs

Génération de certificats racines

Tout d’abord, exécutez la commande ci-dessous pour générer des certificats racines qui seront utilisés pour signer vos autres certificats tels que les certificats de serveur et de client.

openssl genrsa -out root-ca-key.pem 2048

Maintenant, exécutez la commande suivante pour générer un certificat racine à partir de votre clé privée. Assurez-vous de changer l’option ‘ -subj ‘ avec les détails de votre serveur.

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

Génération de certificats administratifs

Créez une nouvelle clé privée pour votre certificat administratif avec ce qui suit.

openssl genrsa -out admin-key-temp.pem 2048

Convertissez votre clé administrative au format PKCS8 en utilisant la commande ci-dessous.

openssl pkcs8 -inform PEM -outform PEM -in admin-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out admin-key.pem

Ensuite, créez une nouvelle demande de signature de certificat (CSR) pour le certificat administratif avec la commande ci-dessous.

openssl req -new -key admin-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=A" -out admin.csr

Maintenant, exécutez la commande suivante pour signer votre nouveau certificat de demande administrative (CSR) avec le certificat racine.

openssl x509 -req -in admin.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out admin.pem -days 730

Génération de certificats d’hôte ou de serveur

Générez la clé privée pour vos hôtes/serveurs OpenSearch et convertissez le certificat au format PKCS8.

openssl genrsa -out ubuntu24-key-temp.pem 2048  
openssl pkcs8 -inform PEM -outform PEM -in ubuntu24-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out ubuntu24-key.PEM

Maintenant, exécutez la commande suivante pour générer une demande de certificat (CSR) pour votre hôte. Le CN ou nom commun doit correspondre au fqdn de votre serveur hôte et non au nom d’hôte. Dans cet exemple, le fqdn pour le serveur est ‘ ubuntu24.howtoforge.local ‘.

openssl req -new -key ubuntu24-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=ubuntu24.howtoforge.local" -out ubuntu24.csr

Ensuite, exécutez la commande ci-dessous pour créer un nouveau fichier d’extension contenant le DNS de votre hôte/serveur.

echo 'subjectAltName=DNS:ubuntu24.howtoforge.local' > ubuntu24.ext

Enfin, exécutez la commande suivante pour signer le certificat d’hôte/serveur avec le certificat racine et inclure le fichier d’extension que vous avez créé plus tôt.

openssl x509 -req -in ubuntu24.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out ubuntu24.pem -days 730 -extfile ubuntu24.ext

Configuration des certificats

Supprimez les certificats temporaires, les CSR (demandes de certificats) pour l’administrateur et l’hôte, et le fichier d’extension avec ce qui suit.

rm *temp.pem *csr *ext  
ls

Maintenant, convertissez le certificat ‘ root-ca.pem ‘ en fichier ‘ root-ca.crt ‘ avec la commande ci-dessous.

openssl x509 -outform der -in root-ca.pem -out root-ca.crt

Après cela, copiez le certificat ‘ root-ca.crt ‘ dans le répertoire ‘ /usr/local/share/ca-certificates ‘ et chargez votre certificat racine sur le serveur.

sudo cp root-ca.crt /usr/local/share/ca-certificates  
sudo update-ca-certificates

ajouter le ca racine

Enfin, exécutez la commande suivante pour définir les permissions et la propriété appropriées des fichiers et répertoires de certificats.

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 à OpenSearch

Après avoir généré des certificats TLS pour OpenSearch, vous devez ajouter une nouvelle configuration au fichier ‘ opensearch.yml ‘. Dans ce cas, vous ajouterez une nouvelle configuration au ‘opensearch.yml’ via le script bash.

Avant d’ajouter des certificats à votre serveur OpenSearch, exécutez la commande ci-dessous pour sauvegarder le fichier ‘ opensearch.yml ‘ et configurer votre serveur fqdn.

sudo cp /etc/opensearch/opensearch.yml /etc/opensearch/opensearch.yml.orig  
sudo hostnamectl set-hostname ubuntu24.howtoforge.local

Maintenant, créez un nouveau fichier ‘ add-cert.sh ‘ avec l’éditeur ‘ nano ‘.

nano add-cert.sh

Insérez les configurations suivantes dans le fichier. Avec cela, vous ajouterez de nouvelles configurations au fichier de configuration OpenSearch ‘ opensearch.yml

#! /bin/bash  
  
# Avant d'exécuter ce script, assurez-vous de remplacer le CN dans le  
# nom distinctif du nœud par un véritable enregistrement DNS A.  
  
echo "plugins.security.ssl.transport.pemcert_filepath: /etc/opensearch/certs/ubuntu24.pem" | sudo tee -a /etc/opensearch/opensearch.yml  
echo "plugins.security.ssl.transport.pemkey_filepath: /etc/opensearch/certs/ubuntu24-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/ubuntu24.pem" | sudo tee -a /etc/opensearch/opensearch.yml  
echo "plugins.security.ssl.http.pemkey_filepath: /etc/opensearch/certs/ubuntu24-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=ubuntu24.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 le fichier et quittez l’éditeur lorsque vous avez terminé.

Maintenant, rendez le fichier ‘ add-cert.sh ‘ exécutable et exécutez-le avec la commande suivante. De nouvelles configurations seront ajoutées au fichier ‘opensearch.yml’.

chmod +x add-cert.sh  
./add-cert.sh

ajouter nouvelle configuration

Sécurisation d’OpenSearch avec l’authentification par mot de passe

À ce stade, vous avez configuré OpenSearch avec des certificats SSL/TLS, et dans l’étape suivante, vous allez configurer l’authentification par mot de passe pour OpenSearch. Vous allez définir deux utilisateurs qui seront utilisés pour se connecter à OpenSearch et s’intégrer dans le tableau de bord OpenSearch.

Allez dans le répertoire ‘ /usr/share/opensearch/plugins/opensearch-security/tools ‘ et exécutez le script ‘ hash.sh ‘ pour générer un nouveau mot de passe pour OpenSearch. Exécutez le ‘ hash.sh ‘ deux fois pour générer deux mots de passe pour OpenSearch et OpenSearch Dashboard. Assurez-vous également de copier le mot de passe généré sur votre note.

cd /usr/share/opensearch/plugins/opensearch-security/tools  
OPENSEARCH_JAVA_HOME=/usr/share/opensearch/jdk ./hash.sh

Maintenant, ouvrez le fichier ‘ /etc/opensearch/opensearch-security/internal_users.yml ‘ avec l’éditeur ‘ nano ‘ suivant.

sudo nano /etc/opensearch/opensearch-security/internal_users.yml

Changez le mot de passe haché pour l’utilisateur ‘ admin ‘ et ‘ kibanaserver ‘ avec votre mot de passe précédent. L’utilisateur ‘ admin ‘ sera utilisé pour se connecter au tableau de bord OpenSearch, l’utilisateur ‘ kibanaserver ‘ sera utilisé pour connecter OpenSearch et OpenSearch Dashboard.

admin:  
hash: "$2y$12$zPtsgbrpfmInPRuDEKvDKetuzhUzsQWyCpE9foT1uun5RTMW51p9K"  
reserved: true  
backend_roles:  
- "admin"  
description: "Utilisateur admin"  
  
kibanaserver:  
hash: "$2y$12$zPtsgbrpfmInPRuDEKvDKetuzhUzsQWyCpE9foT1uun5RTMW51p9K"  
reserved: true  
description: "Utilisateur de démon OpenSearch Dashboards"

Enregistrez le fichier et quittez l’éditeur lorsque vous avez terminé.

Maintenant, exécutez la commande ci-dessous pour redémarrer le service ‘ opensearch ‘ et appliquer vos modifications.

sudo systemctl restart opensearch

Une fois qu’OpenSearch a redémarré, exécutez la commande ci-dessous pour appliquer vos certificats SSL à OpenSearch.

cd /usr/share/opensearch/plugins/opensearch-security/tools  
OPENSEARCH_JAVA_HOME=/usr/share/opensearch/jdk ./securityadmin.sh -h 192.168.10.60 -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

Si tout se passe bien, vous verrez une sortie comme celle-ci :

ajouter certificats

Enfin, exécutez la commande ‘ curl ‘ ci-dessous pour vérifier l’authentification sur le serveur OpenSearch.

curl https://192.168.10.60:9200 -u admin:password -k  
curl https://node-rock1:9200 -u kibanaserver:kibanapass -k

Lorsque cela réussit, vous pourrez accéder à OpenSearch avec votre nom d’utilisateur et votre mot de passe via le protocole HTTPS.

accéder à opensearch

Configuration du tableau de bord OpenSearch

Après avoir configuré l’authentification par mot de passe, vous allez configurer le tableau de bord OpenSearch en modifiant le fichier ‘ opensearch-dashboard,yml ‘.

Ouvrez la configuration pour le tableau de bord OpenSearch ‘ /etc/opensearch-dashboards/opensearch-dashboard.yml ‘ avec l’éditeur ‘ nano ‘.

sudo nano /etc/opensearch-dashboards/opensearch-dashboard.yml

Entrez votre adresse IP locale dans l’option ‘ server.host ‘ comme suit :

server.host: "192.168.10.60"

Assurez-vous de changer l’hôte OpenSearch, le nom d’utilisateur et le mot de passe avec vos informations.

opensearch.hosts: ["https://192.168.10.60:9200"]  
opensearch.ssl.verificationMode: none  
opensearch.username: kibanaserver  
opensearch.password: kibanapass

Enregistrez le fichier et quittez l’éditeur.

Maintenant, exécutez la commande ‘ systemctl ‘ ci-dessous pour redémarrer le tableau de bord OpenSearch et appliquer vos modifications. Avec cela, le tableau de bord OpenSearch devrait être connecté à OpenSearch.

sudo systemctl restart opensearch-dashboards

Ensuite, ouvrez votre navigateur web et visitez http://192.168.10.60:5601. Si votre installation est réussie, vous verrez la page de connexion du tableau de bord OpenSearch.

Entrez votre utilisateur admin et votre mot de passe, puis cliquez sur ‘ Se connecter ‘.

connexion

Une fois connecté, sélectionnez ‘ Ajouter des données ‘ pour ajouter de nouvelles données ou cliquez sur l’option ‘ Explorer par moi-même ‘.

explorer par moi-même

Pour assurer la connexion entre OpenSearch et le tableau de bord OpenSearch, vous devez vérifier l’état d’OpenSearch depuis le tableau de bord.

Dans la section ‘ Gestion ‘, cliquez sur ‘ Outils de développement ‘.

outils de développement

Dans la section console, saisissez ‘ GET / ‘ et cliquez sur le bouton de lecture. Si votre connexion à OpenSearch et au tableau de bord OpenSearch est réussie, vous verrez la page suivante.

requête

Conclusion

Félicitations ! Vous avez installé OpenSearch et OpenSearch Dashboard sur le serveur Ubuntu 24.04. OpenSearch fonctionne en mode unique, et l’installation est sécurisée avec HTTPS. Enfin, vous avez également configuré l’authentification pour OpenSearch et intégré OpenSearch avec le tableau de bord OpenSearch.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.