[Tutoriel] Installation de ntop sur SME Server v7.x

Forum dédié à la distribution du même nom et que vous pourrez télécharger sur http://www.contribs.org. La nouvelle version de cette distribution se nomme SME Server

Modérateur: modos Ixus

[Tutoriel] Installation de ntop sur SME Server v7.x

Messagepar Grand-Pa » 03 Mars 2009 02:27

Bonjour,

Voici une procédure d'installation pour ntop avec supervision du service par daemontools.
Merci de m'indiquer toutes vos remarques : succès, échecs, manque de clarté, évolution, etc.

I Configuration du dépôt
Nous utiliserons le dépôt RPMforge (qui contient DAG, pour les connaisseurs). S'il est déjà configuré sur votre système, vous pouvez passer cette première étape :
Code: Tout sélectionner
db yum_repositories set rpmforge repository BaseURL http://apt.sw.be/redhat/el4/en/\$basearch/dag EnableGroups no GPGCheck yes GPGKey http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt MirrorList http://apt.sw.be/redhat/el4/en/mirrors-rpmforge Name "Red Hat Enterprise $releasever - RPMforge.net - dag" Visible no status disabled
expand-template /etc/yum.smerepos.d/sme-base.repo
signal-event yum-update

Cette configuration oblige à spécifier l'utilisation de ce dépôt pour toute installation ; ce n'est pas très contraignant et beaucoup plus sûr !

II Installation
Installation de ntop et de ses dépendances (libart_lgpl, perl-rrdtool et rrdtool) :
Code: Tout sélectionner
yum --enablerepo rpmforge install ntop

Pour ceux qui souhaitent utiliser la fonction "Local Network Traffic Map" (cf. image ci-dessous), il est nécessaire d'installer des paquets supplémentaires.
Image
Installation de ces paquets et de leurs dépendances (chkfontpath, fonts-xorg-base, ttmkfdir, xorg-x11-font-utils, xorg-x11-xfs) :
Code: Tout sélectionner
yum --enablerepo rpmforge install graphviz urw-fonts
[ -s /usr/share/fonts/fonts.cache-1 ] || rm -f /usr/share/fonts/fonts.cache-1

La dernière ligne permet de corriger un petit bug aléatoire...

Avant toute utilisation, il est nécessaire de définir le mot de passe du compte admin de ntop :
Code: Tout sélectionner
ntop -A


III Configuration
La configuration passe par les mécanismes de SME dont voici un exemple basique :
Code: Tout sélectionner
/sbin/e-smith/db configuration set ntop service HTTPPort 3000 access private status enabled

ntop sera donc lancé en service à chaque démarrage (status enabled) avec un accès uniquement depuis le réseau local (access private) et il sera accessible en HTTP sur le port 3000 (HTTPPort 3000).
Il est possible de le configurer en HTTPS (ex : HTTPSPort 3001), mais il doit exister un mécanisme dans SME qui en bloque l'accès ; si quelqu'un pouvait m'aider sur ce point, ça serait avec plaisir.
Si vous souhaitez que ce service soit accessible de l'extérieur, il faut le définir (access public) et ne pas oublier d'ouvrir le ou les ports (TCPPort 3000) ou (TCPPorts 3000,3001).
A noter que ntop considérera comme réseaux locaux tous ceux définis dans la "Gestion des réseaux locaux" du gestionnaire de serveur de SME.

Définition du template pour hosts.allow :
Code: Tout sélectionner
mkdir -p /etc/e-smith/templates-custom/etc/hosts.allow
sed -e 's/sshd/ntop/g' /etc/e-smith/templates/etc/hosts.allow/sshd > /etc/e-smith/templates-custom/etc/hosts.allow/ntop
signal-event remoteaccess-update


IV Intégration à daemontools
Daemontools est utile pour relancer automatiquement un service en cas de plantage et comme il est très bien intégré dans SME, autant en profiter.
Code: Tout sélectionner
mkdir -p /var/service/ntop/log

Créer le fichier /var/service/ntop/run qui doit contenir les lignes suivantes :
Code: Tout sélectionner
#!/bin/sh

exec 2>&1

httpport=$(/sbin/e-smith/db configuration getprop ntop HTTPPort || echo 0)
httpsport=$(/sbin/e-smith/db configuration getprop ntop HTTPSPort || echo 0)

localsubnets=''
for i in `/sbin/e-smith/db networks keys`
do
  localsubnets=$i/$(/sbin/e-smith/db networks getprop $i Mask),$localsubnets
done
localsubnets=${localsubnets%?}

exec /usr/bin/ntop --user ntop --db-file-path /var/ntop --http-server $httpport --https-server $httpsport --local-subnets $localsubnets

Créer le fichier /var/service/ntop/log/run qui doit contenir les lignes suivantes :
Code: Tout sélectionner
#!/bin/sh

exec                                    \
    /usr/local/bin/setuidgid smelog     \
    /usr/local/bin/multilog t s5000000  \
    /var/log/ntop

Et on finit l'intégration :
Code: Tout sélectionner
chmod 755 /var/service/ntop/run /var/service/ntop/log/run
touch /var/service/ntop/down
mkdir /var/log/ntop
chown smelog.smelog /var/log/ntop
ln -s /var/service/ntop /service
ln -s ../daemontools /etc/init.d/supervise/ntop
ln -s /etc/rc.d/init.d/e-smith-service /etc/rc7.d/S93ntop


V Utilisation
Si le service est configuré avec (status enabled), il sera lancé automatiquement à chaque démarrage. Vous pouvez également le lancer en ligne de commande :
Code: Tout sélectionner
/etc/rc7.d/S*ntop start


L'accès à l'interface web se fait depuis un navigateur en indiquant l'adresse du serveur et le port d'écoute de ntop (ex: http://monserveur.monsite.org:3000)

Si vous avez installé les paquets nécessaire à "Local Network Traffic Map", vous devez aller dans Admin/Configure/Prefrences et à la dernière ligne, créer un nouvel enregistrement :
Code: Tout sélectionner
Preference = dot.path
Configured Value = /usr/bin/dot


Après chaque changement de configuration du service, n'oubliez pas de faire prendre en compte vos changements par le système. Par exemple :
Code: Tout sélectionner
/sbin/e-smith/db configuration setprop ntop HTTPPort 5000
signal-event remoteaccess-update
/etc/rc7.d/S*ntop restart


Notez que le script /etc/init.d/ntop inclus dans le RPM ntop-3.3.8-1.el4.rf est buggé. Et pour une fois, c'est une bonne chose car vous ne devriez pas utiliser ce script pour gérer le service : seul /etc/rc7.d/S*ntop doit être utilisé.
Pour mémoire, le bug peut être corrigé en remplaçant la ligne [daemon $prog -d -L @/etc/ntop.conf] par [daemon $prog @/etc/ntop.conf -d -L]
Avatar de l’utilisateur
Grand-Pa
Vice-Amiral
Vice-Amiral
 
Messages: 728
Inscrit le: 08 Avr 2002 00:00
Localisation: Gap, France

Messagepar shwing » 03 Mars 2009 14:54

testé et approuvé.

Je l'ai mis sur une sme test, et ça marche du tonnerre !!! aucune erreur pendant l'install.

Merci BCP pour ce travail !
Avatar de l’utilisateur
shwing
Amiral
Amiral
 
Messages: 1246
Inscrit le: 14 Mars 2004 01:00
Localisation: GE/CH

Messagepar dadoudidon » 05 Mars 2009 01:34

l'install se passe sans accrocs
par contre à la connexion http j'ai une erreur 111 connection refused

david
dadoudidon
Premier-Maître
Premier-Maître
 
Messages: 65
Inscrit le: 19 Juin 2007 10:39
Localisation: Beaucroissant

Messagepar unnilennium » 05 Mars 2009 04:52

Bonjour Grand Pa,

euh sans vouloir embeter poruquoi reinventer la roue :

https://sme.firewall-services.com/spip.php?article41
Unnilennium / http://smeserver.pialasse.com
________________________

IRC: chat.freenode.net/6667 channel: #sme-fr

newsgroup: alt.e-smith.fr
____________________
unnilennium
Vice-Amiral
Vice-Amiral
 
Messages: 749
Inscrit le: 21 Sep 2004 10:30
Localisation: Québec, Qc, Canada

Messagepar dadoudidon » 05 Mars 2009 20:57

dadoudidon a écrit:l'install se passe sans accrocs
par contre à la connexion http j'ai une erreur 111 connection refused


Une malheureuse erreur de copié/collé dans le premier fichier run
corrigé
et ça marche impeccable

merci bien
david
dadoudidon
Premier-Maître
Premier-Maître
 
Messages: 65
Inscrit le: 19 Juin 2007 10:39
Localisation: Beaucroissant

Messagepar Grand-Pa » 05 Mars 2009 23:34

unnilennium a écrit:Bonjour Grand Pa,

euh sans vouloir embeter poruquoi reinventer la roue :

https://sme.firewall-services.com/spip.php?article41

Salut JP,

Ta remarque ne m'embête absolument pas, bien au contraire car, avant de me lancer dans ce tuto, j'ai cherché vainement d'autres howtos. Rien sur Ixus, rien sur contribs.org, je n'ai pas cherché plus loin...

C'est donc toi qui me fait découvrir ce lien ; c'est pourtant pas faute d'être allé plusieurs fois sur leur site ces derniers mois, mais je n'y avais pas fait attention avant... :oops:

Pour me consoler, je me dis que l'intégration avec daemontools apporte un petit plus bien pratique, ntop n'étant pas réputé pour sa stabilité dans le temps (je ne l'ai jamais vu atteindre 1 semaine sans planter). :wink:
Et hop, finis les galons !
Avatar de l’utilisateur
Grand-Pa
Vice-Amiral
Vice-Amiral
 
Messages: 728
Inscrit le: 08 Avr 2002 00:00
Localisation: Gap, France


Retour vers E-Smith / SME Server

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Google [Bot] et 1 invité

cron