Aller au contenu

Centraliser Tous Les Syslog Des Nas Sur Un Seul Serveur


DjMomo

Messages recommandés

Bonjour,

Vous possédez plusieurs équipements réseau qui supportent le Syslog et souhaitez tous les centraliser sur un même serveur, Synology (avec le DSM V3.2 ou ultérieure et Package Syslog) ou sur un PC dédié.

Ce mini-tutoriel s'adresse aux personnes qui souhaitent rediriger les messages syslog d'un NAS Synology pour les centraliser sur un autre NAS (ou sur un PC).

Prérequis :

  • Package Syslog Server (via DSM V3.2) ou syslog-ng (via ipkg) installé
  • Accès SSH / Telnet

Mode opératoire pour le Package Syslog Server (DSM v3.2 et +) :

  • Se connecter en SSH/telnet avec le compte root
  • Se placer dans le dossier /usr/syno/etc/synosyslog et éditer le fichier system.conf.

cd /usr/syno/etc/synosyslog


vi system.conf
  • Remplacer la ligne
destination d_system_file { udp(127.0.0.1); };
par

destination d_system_file { udp(IP_SERVEUR); };
où IP_SERVEUR correspond à l'adresse IP de la machine/du NAS qui va centraliser tous les messages Syslog.
  • Sauvegarder le fichier et quitter.
  • Redémarrer le package Syslog Server via l'interface du DSM.
Mode opératoire pour le Package syslog-ng (ipkg) :
  • Se connecter en SSH/telnet avec le compte root
  • Se placer dans le dossier /opt/etc/syslog-ng/ et éditer le fichier syslog-ng.conf.
cd /opt/etc/syslog-ng


vi syslog-ng.conf
  • Remplacer la ligne
destination syslog { file("/opt/var/log/syslog"); };
par

destination syslog { file("/opt/var/log/syslog"); udp(IP_SERVEUR); };

où IP_SERVEUR correspond à l'adresse IP de la machine/du NAS qui va centraliser tous les messages Syslog.

  • Sauvegarder le fichier et quitter.
  • Redémarrer le daemon syslog.

Lien vers le commentaire
Partager sur d’autres sites

  • 5 mois après...

A l'occasion de la sortie de DSM 4.0 je me permet un petit "up" sur ce sujet

Il n'est désormais plus necessaire d'editer "/usr/syno/etc/synosyslog" en se connectant en ssh (ou telnet) sur le syno

Cela se fait directement dans l'interface d'admin.

dans le panneau de configuration sélectionner

9fJ6P.png

ce qui nous donne:

qO7LF.png

Dans le champ "serveur" mettre l'IP du serveur syslog (dans l'exemple ci dessus on redirige sur le package syslog installé en local)

L'onglet "filtre de journal" permet de choisir quelles catégories d’évènements sont propagées.

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

Bon apparement c'est pas encore tout a fait au point.

Il y a des bugs dans les scripts de démarrage de syslog et j'ai aussi le sentiment que l'interopérabilité entre le package "syslog server" d'une part, le /sbin/syslogd de base et le syslog-ng intégré à DSM de l'autre n'est pas encore complètement "fluide"

exemple:

FSERV> /usr/syno/etc/rc.d/S22syslogng.sh start

Syslog-ng server start...

sh: or: unknown operand

sh: or: unknown operand

sh: or: unknown operand

sh: or: unknown operand

sh: or: unknown operand

sh: or: unknown operand

sh: or: unknown operand
Trouvé la source du bug dans "/usr/syno/syslogclient/scripts/runscript.sh"

if [ -n "${fac}" ]; then

	if [ -z ${SYSLOGNG_FAC_FILTER_STRING} ]; then

		SYSLOGNG_FAC_FILTER_STRING="program(${fac})"

	else

		SYSLOGNG_FAC_FILTER_STRING="${SYSLOGNG_FAC_FILTER_STRING} or program(${fac})"

	fi

fi

Il aurait fallu des quotes autour de "${SYSLOGNG_FAC_FILTER_STRING}", comme ceci:
  if [ -z "${SYSLOGNG_FAC_FILTER_STRING}" ]; then[/code]

J'ai ouvert un dossier de support chez Synology, on verra bien

Lien vers le commentaire
Partager sur d’autres sites

Le dossier de support n'avance pas mais comme ma config fonctionne je vous la donne:

Faire les modifs suivantes (pas forcéments necessaires, mais j'aime pas les bugs qui trainent)

  • Dans le fichier: "/usr/syno/etc/rc.d/S22syslogng.sh"
    
    --- FILE_SYSLOGNG_SETTING=/usr/syno/etc/synosyslog/setting.conf
    
    +++ FILE_SYSLOGNG_SETTING=/etc/synosyslog.conf
    
    
    ainsi que
    
    --- if [ "yes" == SYSLOGNG_SERVER_ENABLE ]; then		
    
    +++ if [ "yes" == $SYSLOGNG_SERVER_ENABLE ]; then
    
    
  • Dans le fichier: "/usr/syno/syslogclient/scripts/runscript.sh"
    
    --- if [ -z ${SYSLOGNG_FAC_FILTER_STRING} ]; then
    
    +++ if [ -z "${SYSLOGNG_FAC_FILTER_STRING}" ]; then
    
    
Ajouter les lignes suivantes à la fin de "/usr/syno/syslogclient/etc/system.conf" (==> la est la principale différences avec le post initial, car /usr/syno/etc/synosyslog/system.conf est écrasé a chaque démarrage avec le contenu du premier)

source s_system_local { unix-stream("/var/run/log"); };

log { source(s_system_local);  filter(f_syno_client_sev); destination(d_syno_internet); flags(flow_control); };

Rédémarrer le serveur syslog et le client.

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.