Installer Netdata sur Debian 10
Introduction
Netdata est un outil en temps réel de surveillance des performances et de l'intégrité des systèmes et des applications. Il s'agit d'un agent de surveillance hautement optimisé qui peut être installé sur des serveurs Linux.

On va installer Netdata et apprendre comment empêcher l'accès public à son interface Web, car Netdata ne fournit pas l'authentification par lui-même.
Installer et configurer Netdata
Pour installer la dernière version de Netdata, vous pouvez utiliser un script bash fourni par Netdata.
Exécutez simplement le script suivant dans votre terminal :
bash <(curl -Ss https://my-netdata.io/kickstart.sh)
L’installation est automatisée, le script déploie les dépendances nécessaires manquantes , il faut valider certaines fois en appuyant sur ENTRÉE.
Une fois installé, Netdata est automatiquement démarré et activé sur systemd.
Vérifiez l'état via systemctl :
systemctl status netdata
Vous pouvez désormais accéder à l'interface Web de Netdata via <votre_ip>:19999
Maintenant, nous devons nous assurer que Netdata écoute uniquement 127.0.0.1
car nous ne souhaitons pas que l'interface Web soit accessible sur Internet.
Ouvrez le fichier de configuration /etc/netdata/netdata.conf
avec un éditeur de votre choix :
nano /etc/netdata/netdata.conf
Recherchez la section [web]
, décommentez le paramètre bind to
et remplacez-le par ce qui suit :
bind to = 127.0.0.1
Installation de NGINX
Nous allons installer NGINX pour configurer un proxy inverse afin que nous puissions accéder à l'interface Web Netdata en toute sécurité.
Il faut donc installer NGINX et apache2-utils en exécutant les commandes suivantes, apache2-utils est nécessaire pour la deuxième partie de cette étape :
apt install nginx apache2-utils -y
Configuration de l'authentification
Exécutez cette commande pour créer une paire nom d'utilisateur-mot de passe :
htpasswd -c /etc/nginx/.htpasswd user1
Appuyez sur Entrée et saisissez le mot de passe de user1 à l'invitation.
Confirmez que la paire nom d'utilisateur-mot de passe a été créée en exécutant :
cat /etc/nginx/.htpasswd
Configuration de Nginx
Créez votre fichier de configuration pour Netdata :
nano /etc/nginx/conf.d/netdata.conf
Mettez les lignes suivantes dans le fichier. Remplacez netdata.example.com
par votre propre nom de domaine :
server {
listen 80;
server_name plex.example.com;
location / {
proxy_pass http://127.0.0.1:19999;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
auth_basic "Protected";
auth_basic_user_file /etc/nginx/.htpasswd;
proxy_pass http://backend;
proxy_http_version 1.1;
proxy_pass_request_headers on;
proxy_set_header Connection "keep-alive";
proxy_store off;
}
}
Enregistrez et fermez ce fichier.
Vérifiez ensuite la configuration pour vérifier si tout va bien.
nginx -t
Rechargez Nginx pour que la modification prenne effet :
systemctl reload nginx
Ouvrez votre navigateur et accédez au nom de domaine ou sous-domaine précédemment enregistré.
Activer le HTTPS
Pour chiffrer le trafic HTTP lorsque vous visitez le serveur Netdata, nous pouvons activer HTTPS en installant un certificat TLS gratuit émis par Let's Encrypt.
apt-get install software-properties-common -y
add-apt-repository ppa:certbot/certbot
apt-get update
apt-get install certbot python3-certbot-nginx -y
Exécutez ensuite la commande suivante pour obtenir et installer le certificat TLS :
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email you@example.com -d netdata.example.com
Le certificat doit maintenant être obtenu et installé automatiquement, vous pouvez accéder à l'interface Web de Netdata via HTTPS :
