# -*- coding: utf-8; mode: python -*- import sys include("ip") if '/usr/scripts' not in sys.path: sys.path.append('/usr/scripts') from gestion import config info["owner"] = "root" info["group"] = "root" header(""" Fichier de configuration de Munin-Node. Pour des informations détaillées, consulter http://munin.projects.linpro.no/wiki/munin-node.conf """) munin_hostname = pubhostname @# Fichier PID, configuration du démon @pid_file /var/run/munin/munin-node.pid @background 1 @setsid yes @setseid 1 @ @# Port sur lequel se binder. On s'ouvre sur toutes les interfaces, le tri se fait plus bas @host * @port 4949 @ @# Utilisateur sous lequel tourne le démon munin-node @user root @group root @ @# Fichiers à ignorer @ignore_file ~$ @ignore_file \.bak$ @ignore_file %$ @ignore_file \.dpkg-(tmp|new|old|dist)$ @ @# Nom d'hôte reporté au serveur munin print "host_name %s" % munin_hostname @ @# Attention: allow_cidr ne peut être utilisé à la fois avec des IPv4 et IPv6 @# (merci munin et debian). Comme c'est vachement mieux d'utiliser des cidr @# plutôt que des regexp, on utilise les regexp uniquement pour les IPv4 @# utilisant une fonction de conversion et la directive allow. def allow(cidr): """On fait des regex pour les IPv4 uniquement. Retirer ce kludge quand cidr_allow sera supporté pour les deux types d'IPs. Cf https://bugs.debian.org/cgi-bin/bugreport.cgi?msg=20;bug=645292""" if ':' in cidr: print "cidr_allow " + cidr else: print "allow " + cidr_to_regex(cidr) if not has("users"): @# On autorise tout adm et localhost allow('127.0.0.0/8') allow('::1/128') for net in config.NETs['adm'] + config.prefix['adm']: allow(net) else: @# On autorise seulement le serveur munin for ip in ips_of_metadata(metadata.query.by_profiles(['munin-server'])): allow(ip + (128 if ':' in ip else 32))