# Rsyslog

Rsyslog est un logiciel libre utilisé sur des systèmes d'exploitation de type Unix (Unix, Linux) transférant les messages des journaux d'événements sur un réseau IP. Rsyslog implémente le protocole basique syslog - qui centralise les journaux d'événements, permettant de repérer plus rapidement et efficacement les défaillances d'ordinateurs présents sur un réseau. Il présente la particularité d'en étendre les fonctionnalités en permettant, notamment, de filtrer sur des champs, de filtrer à l'aide d'expressions régulières et l'utilisation du protocole TCP de la couche transport. Il existe régulièrement une confusion entre le logiciel Rsyslog, et le protocole de gestion transmissions de logs syslog et le logiciel syslog.

## Fonctionnalités

Les fonctionnalités les plus notables sont :
* il remplace facilement syslog (les règles de syslog peuvent être simplement copiées dans /etc/rsyslog)
* il peut écrire les événements dans une base de données (MySQL ou postgreSQL)
* il gère la rotation automatique des fichiers
* il peut mettre en tampon (sous forme de fichiers) des événements
* il gère GSS-API et TLS
* il peut être utilisé comme un relais et peut être configuré pour enregistrer les points de passage
* il peut utiliser son propre protocole réseau : RELP (Reliable Event Logging Protocol) qui offre une meilleure garantie de réception des événements par le serveur.
* il peut utiliser un format de date complet (incluant l'année, contrairement au syslog de base qui n'inclut jamais l'année) et pouvant être précis jusqu'au millième de seconde (contrairement à syslog qui n'est précis qu'à la seconde)
Le protocole "syslog" par réseau qui n'est qu'un standard de fait mal défini, fonctionne au-dessus d'UDP. Le protocole "syslog" de base n'offre aucune garantie que le serveur était bien en train d'écouter au moment où le message est envoyé. RELP utilise des acquittements pour garantir que le serveur a bien pris en compte l'événement envoyé. Avec RELP, la perte de message devient peu probable. Par contre, ils peuvent être reçus en double.

## Historique

Le projet rsyslog a débuté en 2004, lorsque Gerhards Rainer, l'auteur principal de rsyslog, a décidé d'écrire un nouveau démon syslog pour rivaliser avec syslog-ng, parce que, selon l'auteur, "Un nouvel acteur majeur permettra d'éviter les monocultures et offrira une richesse dans le choix". Rainer Gerhards a travaillé sur le projet rsyslog au sein de sa propre entreprise, Adiscon GmbH.

## Distributions

rsyslog est disponible sur un certain nombre de systèmes d'exploitation Unix et Linux, entre autres :
* Fedora (Depuis Novembre 2007) Fedora a été la première distribution majeure à adopter Rsyslog.
* openSUSE (par défaut depuis 11.2; Novembre 2009)
* Debian GNU/Linux (depuis Debian 5.0, rsyslog est devenu le syslog par défaut)
* Ubuntu
* Red Hat Enterprise Linux (depuis RHEL 5)
* SUSE Linux Enterprise Server (depuis SLES 11 SP 2)
* Solaris
* FreeBSD
* OpenBSD
* Gentoo
* Arch Linux

## Configuration

Seule la partie spécifique à rsyslog sera expliquée, pour le reste, se référer à la documentation de syslog.

### Sous Ubuntu
## Fonctionnement

Rsyslog implémente syslog. Ainsi les outils utilisés pour syslog restent valable. En particulier l'utilitaire logger.
Dans un terminal, exécuter la commande shell suivante:
Puis vérifier sur le serveur et dans le fichier configuré l'apparition du message:
Voici la ligne que vous devez voir apparaître:

## RFCs implémentées et groupes de travail impliqués

* RFC 3164 - Le protocole BSD syslog (rendu obsolète par RFC 5424)
* RFC 5424 - Le protocole Syslog (rend obsolète RFC 3164)
* RFC 5425 - Schéma d'affectation de la couche transport sécurité pour Syslog
* RFC 5426 - Transmission des messages Syslog via UDP