web-dev-qa-db-fra.com

Filtre Rsyslog pour la journalisation des événements de routeur (serveur syslog)

J'essaie de configurer rsyslog (Ubuntu 12.04 Server) pour consigner les événements d'un routeur. J'ai trouvé ce vieux post sur le forum ubunt qui m'a le plus aidé.

Jusqu'à présent, je peux obtenir les événements consignés à partir du routeur. Cependant, comme je ne les ai pas connectés à /var/log/syslog, j'essaie de configurer un filtre de travail dans /etc/rsyslog.conf pour placer les événements enregistrés dans /var/log/linksys.log. C'est là que j'ai des problèmes.

  • J'ai d'abord essayé de filtrer l'adresse IP du routeur comme ceci:

    :fromhost-ip, isequal, "192.168.2.1" /var/log/linksys.log
    & ~
    

    Cette redirection avec succès les journaux que je voulais, le seul problème est maintenant que je ne reçois pas de journaux SSHD dans auth.log. Inutile de dire que ce n'est pas acceptable.

  • Ensuite, j'ai essayé de filtrer par le nom du routeur qui apparaît dans chaque journal des événements:

    :msg,contains, "RV042" /var/log/linksys.log
    & ~
    

    Bien que cela ne connecte ni ne bloque rien.

Donc je suis perplexe. Je ne sais pas pourquoi SSHD est filtré avec le filtre :fromhost-ip. SSHD est local sur la machine avec rsyslog (192.168.2.2). Cela me frustre beaucoup, toutes les suggestions sont les bienvenues.

4
jpetersen

Je l'ai compris! Ces liens ont aidé:

http://www.rsyslog.com/tag/udp/

http://www.rsyslog.com/doc/multi_ruleset.html

Voici ce que j'ai fait:

Ouvert /etc/rsyslog.d/50-default.conf et en haut du fichier, avant tous les filtres par défaut, j'ai ajouté:

# process remote messages
# define new ruleset and add rules to it:
$RuleSet remote
*.*           /var/log/linksys.log
# only messages not from 192.168.2.1 make it past this point

# bind ruleset to UDP listener
$InputUDPServerBindRuleset remote
# and activate it:
$UDPServerRun 514

# switch back to the default ruleset:
$RuleSet RSYSLOG_DefaultRuleset
3
jpetersen

/etc/rsyslog.conf n'est pas le bon fichier à éditer. Vous voulez vraiment créer un fichier .conf séparé:

$ Sudo nano /etc/rsyslog.d/20-router.conf

Ajoutez ensuite la configuration requise:

:fromhost-ip, isequal, "192.168.2.1" /var/log/linksys.log
& ~

Cela ne doit pas confondre les autres entrées du journal. Juste essayé moi-même et cela fonctionne bien.

Merci à http://nickhumphreyit.blogspot.co.uk/2012/09/how-to-setup-syslog-server-on-ubuntu.html pour m'avoir donné la réponse, après avoir abandonné La documentation.

Vous pouvez également ajouter un fichier logrotate à /etc/logrotate.d/linksys:

/var/log/linksys.log {
       daily
       rotate 7
       delaycompress
       compress
       notifempty
       missingok
}
1
Ken Sharp