Documentation technique : Debian
Documentation basée sur la distribution Debian

> > > > Monitorer openvpn

Également dans la rubrique : OpenVPN : un réseau privé virtuel

Monitorer openvpn

On va monitorer OpenVPN avec Munin qui doit être installé comme indiqué dans cet article.

Il existe deux plugins de monitoring d’OpenVPN, un fournit dans le paquet officiel de Debian qui ne liste que le nombre d’utilisateurs connectés au serveur, un autre, fourni dans le dépôt de contributions externes, qui lui permet de savoir la bande passante utilisée par les utilisateurs.

Configuration du plugin de base

Le plugin de base ne listera que le nombre d’utilisateur connectés en même temps au serveur.

Pour configurer ce plugin, vous devez savoir où se trouve le fichier de log de statut d’OpenVPN. Dans notre configuration, on l’a configuré pour être créé dans /var/log/openvpn-status.log, voir cet article pour mieux comprendre.

Dans un premier temps, on va lier symboliquement le script de monitoring au bon endroit avec la commande :

  1. sudo ln -s /usr/share/munin/plugins/openvpn /etc/munin/plugins/openvpn

On configure ensuite simplement le fichier de configuration des plugins de munin :

  1. sudo nano /etc/munin/plugin-conf.d/munin-node

Et on y ajoute ces lignes :

  1. [openvpn]
  2. user root
  3. env.statusfile /var/log/openvpn-status.log

Télécharger

Si le fichier de log de status est au bon endroit, et que vous avez un utilisateur connecté, la commande sudo munin-run openvpn devrait retourner ceci :

  1. users.value 1

Votre premier plugin est donc bien configuré, on peut redémarrer le noeud :

  1. sudo /etc/init.d/munin-node restart

Cela devrait ressembler à cela au bout de quelque temps :

OpenVPN - Monitoring Munin nombre utilisateurs

Configuration du plugin plus complet

Ce plugin affichera notamment la bande passante utilisée par utilisateur.

On a décidé de déposer nos plugins personnalisés dans le répertoire /opt/share/munin/plugins, on vérifie qu’il existe bien et on s’y déplace :

  1. #Créer le répertoire des plugins dans le cas ou il n'existe pas déjà
  2. sudo mkdir -p /opt/share/munin/plugins

Télécharger

Le code du plugin openvpn_multi en question est ici.

On le récupère dans notre répertoire de plugins personnalisés :

  1. cd /opt/share/munin/plugins
  2.  
  3. sudo wget --no-check-certificate https://raw.githubusercontent.com/munin-monitoring/contrib/master/plugins/openvpn/openvpn_multi
  4.  
  5. # Rendre le script exécutable
  6. chmod +x openvpn_multi

Télécharger

On le lie symboliquement dans notre répertoire de plugins de muni avec la commande suivante :

  1. sudo ln -s /opt/share/munin/plugins/openvpn_multi /etc/munin/plugins/openvpn_multi

On doit ensuite modifier la configuration des plugins de munin :

  1. sudo nano /etc/munin/plugin-conf.d/munin-node

Et on y ajoute ces lignes :

  1. [openvpn_multi]
  2. user root
  3. env.statusfile /var/log/openvpn-status.log
  4. env.userlist useropenvpn useropenvpnbis

Télécharger

Note :

  • Bien vérifier que votre fichier de log de status est /var/log/openvpn-status.log ;
  • Modifier useropenvpn useropenvpnbis avec votre liste d’utilisateurs à monitorer ;
  • Attention, apparemment le plugin plante si il y a un - dans le nom de l’utilisateur ;

Vous pouvez maintenant tester le plugin avec la commande suivante :

  1. sudo munin-run openvpn_multi

Elle devrait vous retourner ce type de données :

  1. useropenvpn_in.value 8648375
  2. useropenvpn_out.value 46372515
  3. multigraph openvpn_multi.useropenvpn
  4. useropenvpn_in.value 8648375
  5. useropenvpn_out.value 46372515

Télécharger

Si ce test vous retourne des valeurs -1, la configuration n’est pas bonne.

Si tout est ok, vous pouvez finalement redémarrer le noeud :

  1. sudo /etc/init.d/munin-node restart

Cela devrait ressembler à cela au bout de quelque temps :

OpenVPN - Monitoring Munin bande passante

Articles complémentaires

  • Auteur :
  • Publié le :
  • Mis à jour : 05/05/15

3 commentaires


Qui êtes-vous ?
Ajoutez votre commentaire ici
  • Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.