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 sur la documentation de Stackhero !
Stackhero propose une solution Prometheus cloud prête à l'emploi qui offre de nombreux avantages, notamment :
Alert Managerinclus pour envoyer des alertes àSlack,Mattermost,PagerDuty, etc.- Serveur d'email dédié pour envoyer des alertes email illimitées.
Blackboxpour sonderHTTP,ICMP,TCP, et plus encore.- Configuration facile avec un éditeur de fichier de configuration en ligne.
- Mises à jour sans effort en un clic.
- Performance optimale et sécurité robuste grâce à une VM privée et dédiée.
Gagnez du temps et simplifiez-vous la vie : il suffit de 5 minutes pour essayer la solution Prometheus cloud hosting de Stackhero !
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.