Prometheus: Aggiungere autenticazione a Prometheus Node Exporter
Questa documentazione fa parte della guida Recupero delle metriche da Linux. Consulta la guida completa qui: Come recuperare le metriche di un server Linux in Prometheus utilizzando Node Exporter.
👋 Benvenuti nella documentazione di Stackhero!
Stackhero offre una soluzione Prometheus cloud pronta all'uso che fornisce numerosi vantaggi, tra cui:
Alert Managerincluso per inviare avvisi aSlack,Mattermost,PagerDuty, ecc.- Server email dedicato per inviare avvisi email illimitati.
Blackboxper sondareHTTP,ICMP,TCPe altro ancora.- Configurazione facile con editor di file di configurazione online.
- Aggiornamenti senza sforzo con un solo clic.
- Prestazioni ottimali e sicurezza robusta grazie a una VM privata e dedicata.
Risparmia tempo e semplifica la tua vita: bastano solo 5 minuti per provare la soluzione di Prometheus cloud hosting di Stackhero!
Per impostazione predefinita, Node Exporter non esegue l'autenticazione, il che significa che chiunque può recuperare le metriche esposte. Per proteggere l'accesso, è possibile aggiungere un'autenticazione di base per un utente.
Generazione di una password casuale
Genera una password utilizzando i seguenti comandi:
password=`openssl rand -base64 32`
passwordHashed=`echo ${password} | htpasswd -inBC 10 "" | tr -d ':'`
echo "Password chiara da conservare per il server Prometheus: ${password}"
Se non si dispone del binario
htpasswd, è possibile installarlo su Debian/Ubuntu utilizzandoapt-get install --no-install-recommends apache2-utils.
Conservate la password chiara in sicurezza poiché sarà necessaria durante la configurazione di Prometheus.
Aggiunta dell'utente e riavvio di Node Exporter
Aggiungi le seguenti righe al file di configurazione per aggiungere un utente chiamato "prometheus" con l'hash della password generata:
sudo cat << EOF >> /etc/prometheus_node_exporter/configuration.yml
basic_auth_users:
prometheus: ${passwordHashed}
EOF
# Riavvia Node Exporter
sudo systemctl restart node_exporter
Infine, verifica che l'autenticazione funzioni correttamente:
- Eseguire
curl http://localhost:9100/metricsdovrebbe restituire "Unauthorized". - Eseguire
curl -u prometheus:${password} http://localhost:9100/metricsdovrebbe restituire l'elenco delle metriche.