Documentation Sme9admin
Auteur : Landry Breuil
Date de création de cette doc : 29/01/2006
Version de Sme9admin correspondante : 1.1.0-1
Versions de SME testées avec Sme9admin : 7b5, 7pre1
Pourquoi cette contrib ? :
Pouvoir voir en un coup d'oeil ce qu'il se passe sur le serveur sans avoir à utiliser la console d'administration par ssh. L'accueil de la contrib est accessible dans le server-manager d'SME à l'onglet Sme9admin
. Cette contrib est l'évolution de sme6admin pour SME7, et à été réécrite presque totalement.
Description des différentes pages :
Liste des informations fournies par la page d'accueil de la contrib :
Des liens vers les pages comportants les graphes d'activité du système expliqués juste après, ainsi qu'un lien vers la page permettant de configurer sme9admin.
Le résultat de la commande netstat
qui permet de voir quelles sont les connexions tcp ouvertes sur le serveur. On distingue les connexions vers l'exterieur/interieur.
Le résultat de la commande w
qui permet de voir les utilisateurs connectés directement sur le serveur, depuis quand, à partir d'où et quelle était la dernière commande lancée.
Le status des principaux services tournant sur le système, avec le nombre de processus unix associés. Le bouton à droite permet d'arrêter/démarrer un service. (Ce qui correspond à la commande service xx stop/start
)
Certains des noms des services sont des liens vers des pages comportants plus de détails sur le service en question.
Le résultat de la commande netstat --listen -tp
qui permet de voir la liste des processus en attente de connexion.
On à ensuite la date de la dernière mise à jour de la base de virus de ClamAV, ainsi que le nombre de virus contre lesquels on est protégés.
Page de graphes sur l'état du matériel :
Un graphe comportant les températures du processeur et de la carte mère detectées par lm_sensors, ainsi que celle des disques durs avec hddtemp.
Un graphe avec la vitesse de rotation du ventilateur du processeur.
(Il faut noter que ces valeurs dépendent entièrement du support de votre matériel par lm_sensors et hddtemp. De plus, il faut configurer correctement Sme9admin
si l'on veut que les graphes se remplissent.)
On peut avoir ces graphes sur différentes durées en suivant les liens du haut de la page.
Page de graphes sur l'utilisation du réseau :
Un graphe sur les sessions réseau ouvertes. On monitore les connexions ftp, ssh, netbios, afp et vpn. Ces courbes correspondent au nombre de connexions tcp ouvertes sur ces services aux ports 21,22,139,548 et 1723.
Un graphe avec le nombre de renouvellement de bails dhcp et le nombre de connexions samba. Il permet de mesurer l'utilisation du réseau local. Les connexions samba diffèrent ici des connexions netbios par le fait qu'un poste client peut être connecté à plusieurs partages samba en même temps, cela ne donne qu'une connexion netbios et plusieurs "connexions" samba.
Un graphe avec le nombre de mails entrant/sortant (valeurs empilées) sur le serveur. Par défaut, on ne gère que les e-mails arrivant sur le domaine principal du serveur, sur les domaines virtuels du serveur, ainsi que les mails relayés par fetchmail sur des boites locales. On peut ajouter des domaines en configurant Sme9admin, mais les e-mails ne seront détectés que s'ils transitent par le serveur de messagerie de SME. On a aussi le nombre de spams rejetés par Spamassassin et le nombre de virus filtrés par ClamAV.
Un graphe montrant le temps de réponse de la passerelle par défaut vers internet. La cible du ping est configurable, car il peut être utile lorsqu'on n'est pas "en frontal" sur internet de tester la latence avec un quelconque autre site, et pas avec la passerelle par défaut. Si le ping dépasse 200ms, on bride la valeur pour que le graphe reste "lisible". (ie, si on a un ping de 4s, on aurait un pic sur le graphe et rien à coté.)
Deux graphes montrant le volume du trafic réseau brut passant par le serveur. Souvent, le volume entrant sur l'interface externe correspond au volume sortant sur l'interface interne, c'est tout le trafic relayé par la passerelle vers le réseau local. On peut voir sur un troisième graphe le traffic qui n'est pas du routage. Si l'on est en server-only
, un seul graphe est affiché.
Page de graphes sur l'utilisation du système :
Un premier graphe sur la proportion de processus systémes, utilisateurs et nicés dans le % d'utilisation du cpu.
Un deuxième sur le load du système par rapport au % total d'utilisation du cpu.
Un troisième sur le nombre de processus tournant sur le serveur, ainsi que la taille de la file d'attente des process.
Enfin, un quatrième sur l'uptime du cpu.
Ensuite, un graphe sur l'occupation de la mémoire vive du serveur.
Et un graphe sur la taille et l'occupation de la mémoire virtuelle ou swap.
Puis un graphe sur le volume brut de données érites/lues sur le disque dur du serveur.
Enfin, un graphe sur l'occupation disque de composantes importantes de SME: les répertoires /var/log
(les fichiers journaux), /home/e-smith/files
(les fichiers des utilisateurs et les ibays), /var/spool/squid
(la taille du cache du proxy Squid), /var/lib/mysql
(la taille des bases de données MySQL) ainsi que l'espace restant encore disponible sur le disque dur. On peut désactiver le calcul de l'occupation disque sur ces répertoires, car sur certaines configurations, cela peut prendre beaucoup de temps et ralentir le fonctionnement général du serveur. On n'aura alors sur le graphe que l'espace disponible par rapport à l'espace total.
Page de tests avancés :
Cette page va servir à vérifier qu'un service répond vraiment lorsque on lui envoie un requête.
En cliquant sur les diffèrents liens, on peut tester les services httpd, smbd, nmbd, popd, sshd, ftpd, smtpfont-qmail ainsi que le temps de réponse du serveur à un ping.
Page de configuration de Sme9admin :
Cette page permet de configurer le démon sme9admind
ainsi que certains paramètres de l'interface web. La configuration est stockée dans un fichier texte. Les options sont les suivantes :
Destinataire des messages de status, ainsi que leur fréquence. Si on met 0, ils sont désactivés.
Paramètres de connexion à MySQL. On ne doit modifier ces valeurs que si on a modifié les valeurs correspondantes dans MySQL.
Noms des interfaces réseaux. Logiquement, ces valeurs sont auto-détectées, mais on peut avoir besoin de les changer (p.ex 3ème interface réseau en Wi-Fi à surveiller..). On peut ajouter des domaines de courrier externes, mais il ne seront pris en compte que si les messages transitent par le serveur de messagerie de SME.
Diverses options pour l'interface web.
Options pour les senseurs. Bien vérifier que son matériel est supporté ou pas par lm_sensors et hddtemp, et que ces options sont correctement renseignées avant de dire "mon graphe de température ne se remplit pas".
Destinataire des messages d'alertes, et limites pour le déclenchement des alertes. Les limites possibles sont : la température du matériel, le nombre de connexions ssh/ftp/vpn/netbios, l'utilisation du disque dur, du processeur, de la mémoire et le nombre d'email sortant/rentrant. Si l'on met 0 pour une alerte, elle est désactivée.
Page de détail du service httpd / httpd-admin :
On dispose d'un graphe détaillant le % cpu, la taille de la mémoire vive alloués à des processus httpd, ainsi que leur nombre.
Page de détail du service sshd :
On donne la liste des derniès connexions administratives. On met en évidence les connexions root réssies, ainsi que toutes les tentatives de connexions infructueuses.
Page de détail du service squid :
On à un graphe détaillant le % cpu, la taille de la mémoire vive alloués à des processus squid correspondant au proxy transparent, ainsi que leur nombre.
Page de détail du service pppoe :
Elle présente l'historique des dernières connexions ADSL par pppoe, avec le début, l'ip attribuée, ainsi que la date de fin, la durée et le volume transféré durant la connexion. On met en évidence les connexions de moins de 4 heures, et les déconnexions de plus d'une minute. Ces deux paramètres peuvent être changés dans la page de configuration de Sme9admin. Ainsi, on peut observer la fiabilité/stabilité de la connexion à Internet.
Page de détail du service dhcpd :
On dispose ici de la date des derniers renouvellements de baux par les postes du réseau local, ainsi que de leurs adresses MAC, leurs IPs, et leurs nom DNS attribué par le serveur. On peut ainsi voir quelle stations ont été allumées récemment.
Page de détail du service pptpd :
On a la liste des connexions vpn effectuées sur le serveur, avec les dates de début et de fin, la durée, l'IP du client vpn, son login et le volume transféré. On met en évidence les connexions de plus de 2 heures, ce paramètre peut être changé dans la page de configuration de Sme9admin.
Page de détail du service smb/nmb :
Cette page propose tout d'abord l'historique des dernières connexions d'un triplet (machine/ip/personne) à un des partages réseau samba du serveur, ainsi que la durée approximative à cinq minutes.
Ensuite elle propose le graphe détaillant le % cpu, la taille de la mémoire vive alloués aux processus gèrant samba, ainsi que leur nombre.
On peut ainsi observer quels sont les postes qui utilisent fréquemment le service samba du serveur.
Page de détail du service atalk :
De la même manière cette page propose tout d'abord l'historique des dernières connexions d'une machine au service de partage de fichier avec les Macintosh du serveur avec le détail des volumes de transferts de fichiers.
Ensuite elle propose le graphe détaillant le % cpu, la taille de la mémoire vive alloués aux processus gèrant ce service (papd, afpd, netatalk), ainsi que leur nombre.
On peut ainsi observer quels sont les postes qui utilisent fréquemment le service atalk du serveur.
Page de détail du service proftpd :
Cette page montre la liste de connexions au service ftp du serveur, réussies ou non. Elle détaille l'adresse IP du client, son login et le volume transféré.
Liste des fichiers installés/crées par le RPM :
/etc/e-smith/events/actions/sme9admin-parselog
/etc/e-smith/events/logrotate/S15sme9admin-parselog
/etc/e-smith/web/functions/sme9admin
/etc/e-smith/web/panels/manager/cgi-bin/sme9admin
/etc/e-smith/web/panels/manager/html/sme9admin/sme9admin.conf
/etc/rc.d/init.d/sme9admind
/etc/rc.d/rc0.d/K03sme9admind
/etc/rc.d/rc1.d/K03sme9admind
/etc/rc.d/rc2.d/K03sme9admind
/etc/rc.d/rc3.d/S97sme9admind
/etc/rc.d/rc4.d/S97sme9admind
/etc/rc.d/rc5.d/S97sme9admind
/etc/rc.d/rc6.d/K03sme9admind
/etc/rc.d/rc7.d/S97sme9admind
/usr/bin/sme9admind
/usr/share/doc/smeserver-sme9admin-1.1.0/create_mysql.sh
/usr/share/doc/smeserver-sme9admin-1.1.0/create_rrd.sh
/usr/share/doc/smeserver-sme9admin-1.1.0/create_smedb.sh
/usr/share/doc/smeserver-sme9admin-1.1.0/sme9admin-doc-fr.html
/usr/share/doc/smeserver-sme9admin-1.1.0/sme9admin-doc-en.html
/usr/share/doc/smeserver-sme9admin-1.1.0/sme9admin-fr.po
/usr/share/doc/smeserver-sme9admin-1.1.0/sme9admin-en.po
/usr/share/doc/smeserver-sme9admin-1.1.0/tables.sql
/usr/share/locale/en/LC_MESSAGES/sme9admin.mo
/usr/share/locale/fr/LC_MESSAGES/sme9admin.mo
Liste des répertoires utilisés :
Fichier/répertoire | Contient |
/var/log/sme9admin.log | la trace du démon. |
/var/tmp/ | stockage temporaire des logs. |
/var/lib/sme9admin/ | les fichiers RRDs stockant les données pour les graphes. |
/etc/e-smith/web/panels/manager/html/sme9admin/ | les graphes générés et de la configuration. |
(Le programme stocke tous les graphes dans un sous-répertoire du server-manager
ainsi l'interface est accessible via un tunnel SSH.)
Un petit peu plus de détails :
les e-mails d'alertes et de status sont envoyés avec le nom sme9admin-daemon@mondomaine en expéditeur, pour être bien vus dans le lecteur de mail.
Un e-mail d'alerte rappelle la limite qui avait été fixée, la valeur courante, ainsi qu'une explication possible de la cause de l'alerte. De plus, on a un lien vers l'interface web pour configurer directement la limite.
Un e-mail de status envoie les 10 dernières lignes de /var/log/messages
, le nombre de connexions ouvertes sur les services critiques, la sortie de netstat --numeric-hosts -tpu
(la liste détaillée de toutes les connexions réseau actives) ainsi que le status des services samba, http et ssh. Si on ne le reçoit pas, c'est un bon indice d'un fonctionnement anormal. (Serveur éteint, qmail arreté, pas de connexion ADSL ...)
Le programme est un démon, pour savoir s'il fonctionne faire :
service sme9admind status
S'il est arreté, un début d'explication peut être trouvé dans son fichier journal /var/log/sme9admin.log
. Si vous avez des problèmes pour le redémarrer, faites rm -f /var/run/sme9admin.pid
avant de réessayer.
Il se lance automatiquement au démarrage du serveur. Lors d'un évenement logrotate
, le système lui envoie un signal unix SIGUSR1 pour le forcer à lire les journaux qui vont être archivés.
Changelog :
* Web Feb 01 2006 : v1.1.0 - un an pile après la derniere version majeure.
- Renommage en smeserver-sme9admin.
- Uniquement compatible avec SME 7 à partir de maintenant. (Sauf si BEAUCOUP de demandes => extension de compatibilité.)
- Réécriture majeure, GROS nettoyage du code.
- Passage des options dans un fichier de configuration.
- BEAUCOUP plus de choses configurables. Gère plus de configurations correctement.
- Ajout de services spécifiques SME7.
- Ajout d'un lien pour configurer la limite dans les mails d'alerte.
- Ajout du 'netstat -tlp' et du 'w' dans la page d'accueil.
* Mon Oct 03 2005 : v1.0.5 by Cyril
- Correction de certains bugs pour pouvoir le lancer sur sme7.
- Beaucoup de choses fonctionnent anormalement (événements non détectés) sur sme7.
* Tue Feb 01 2005 : v1.0.4
- Passage à gettext pour toutes les sorties texte.
- Traduction anglaise pour le panel et le texte des e-mails.
- Fichier .po inclus pour les langue française et anglaise.
* Tue Sep 14 2004 : v1.0.3
- Ajout de afp sur le graphe des sessions.
- Modification des graphes de traffic réseau.
- Modification du graphe ecriture/lecture disque.
- Ajout graphe trafic serveur hors routage.
- Amélioration UI et short_status (easter-egg ;)).
- Correction bug client ftp anonymous.
- Possibilité de désactiver les alertes.
- Nettoyage /var/tmp au logrotate.
* Thu Aug 26 2004 : v1.0.2
- Compatibilité avec la 5.6 Ok.
- Prise en compte de la locale US (0.0 => 0,0).
- Ajout température hd2.
- Correction bugs.
- Amélioration des scripts postinstall et preuninstall pour rendre possible l'upgrade.
* Mon Aug 9 2004 : v1.0.1
- Ajout de la configuration du temps entre 2 mails de status.
- Amélioration de la compatibilité avec SME 5.6.
* Fri Aug 6 2004 : v1.0.0
Toutes les requêtes, questions et rapports d'erreurs sont bienvenus, et peuvent être envoyées à landry at firewall - services point com
.