Prometheus: Ajouter une authentification à Prometheus Node Exporter
Cette documentation fait partie du guide Récupération des métriques depuis Linux. Consultez le guide complet ici : Comment récupérer les métriques d'un serveur Linux dans Prometheus en utilisant Node Exporter.
👋 Bienvenue dans la documentation Stackhero !
Stackhero vous propose une plateforme Prometheus cloud entièrement gérée, conçue pour la fiabilité et la simplicité :
Alert Managerest intégré, ce qui vous permet d’acheminer les alertes directement versSlack,Mattermost,PagerDutyet d’autres destinations populaires.- Un serveur email dédié vous permet d’envoyer un nombre illimité d’alertes par email sans configuration supplémentaire.
Blackboxest inclus, vous permettant de sonder les protocolesHTTP,ICMP,TCPet autres pour une surveillance complète.- Configurez votre instance rapidement grâce à l’éditeur de fichier de configuration en ligne. Plus besoin de gérer le YAML manuellement.
- Appliquez les mises à jour en un seul clic. Stackhero s’occupe du processus de mise à niveau pour vous, réduisant ainsi les interruptions et les interventions manuelles.
- Performance élevée et sécurité renforcée sont incluses grâce à votre propre infrastructure privée et dédiée.
Mettez votre instance en service en environ 5 minutes. Stackhero s’occupe de l’installation pour que vous puissiez vous concentrer sur la surveillance, pas sur la maintenance. Essayez l’hébergement Prometheus cloud sur Stackhero pour simplifier vos flux de travail de monitoring et d’alerting.
Par défaut, Node Exporter n'effectue pas d'authentification, ce qui signifie que n'importe qui peut récupérer les métriques exposées. Pour sécuriser l'accès, vous pouvez ajouter une authentification basique pour un utilisateur.
Génération d'un mot de passe aléatoire
Générez un mot de passe en utilisant les commandes suivantes :
password=`openssl rand -base64 32`
passwordHashed=`echo ${password} | htpasswd -inBC 10 "" | tr -d ':'`
echo "Mot de passe clair à conserver pour le serveur Prometheus : ${password}"
Si vous n'avez pas le binaire
htpasswd, vous pouvez l'installer sur Debian/Ubuntu en utilisantapt-get install --no-install-recommends apache2-utils.
Gardez le mot de passe clair en sécurité car vous en aurez besoin lors de la configuration de Prometheus.
Ajout de l'utilisateur et redémarrage de Node Exporter
Ajoutez les lignes suivantes au fichier de configuration pour ajouter un utilisateur appelé "prometheus" avec le hash du mot de passe généré :
sudo cat << EOF >> /etc/prometheus_node_exporter/configuration.yml
basic_auth_users:
prometheus: ${passwordHashed}
EOF
# Redémarrer Node Exporter
sudo systemctl restart node_exporter
Enfin, vérifiez que l'authentification fonctionne correctement :
- Exécuter
curl http://localhost:9100/metricsdevrait retourner "Unauthorized". - Exécuter
curl -u prometheus:${password} http://localhost:9100/metricsdevrait retourner la liste des métriques.