Rsyslog est un serveur de journalisation utilisé dans les systèmes Linux. C'est une version améliorée de Syslog. Rsyslog prend également en charge les bases de données ( MySQL, PostgreSQL ) pour stocker les journaux. Il s'agit du serveur de journalisation par défaut utilisé à partir de la version CentOS/RHEL 6. Rsyslog est une version améliorée du service syslog sous Linux. Cet article concerne la configuration du serveur de journalisation centralisé dans notre environnement d'hébergement.
Cet article vous aidera à installer le service Rsyslog sur CentOS/RHEL 5 et à configurer Rsyslog pour envoyer tous les journaux à un serveur central. Notre objectif principal est que tous nos fichiers journaux soient à un emplacement d'où nous pouvons facilement les sauvegarder ou utiliser n'importe quel analyseur pour les analyser à un seul endroit. Nous n'avons pas besoin de configurer la sauvegarde sur chaque serveur individuellement.
Étape 1 :Installer le service Rsyslog
Rsyslog est installé par défaut sur les systèmes basés sur RHEL à partir de la version RHEL 6. Installez le service Rsyslog sur le système de journalisation central ainsi que sur les systèmes clients. Utilisez les commandes suivantes pour installer le service Rsyslog dans les versions antérieures des systèmes RHEL/CentOS.
# yum install rsyslog
Après l'installation, démarrez le service rsyslog et assurez-vous que syslog est arrêté sur le serveur.
# service syslog stop # chkconfig syslog off # service rsyslog start # chkconfig rsyslog on
Étape 2 : Configurer Rsyslog sur le serveur de journalisation central
Nous devons maintenant configurer Rsyslog sur le serveur de journalisation central pour recevoir les journaux des clients distants et les stocker à différents endroits.
Étape 2.1 :Autoriser SELinux
Si SELinux est activé sur votre système, utilisez la commande suivante pour activer le trafic rsyslog sur le port 514.
# semanage -a -t syslogd_port_t -p udp 514
Étape 2.2 :Configuration de l'emplacement du fichier journal
Modifiez maintenant le fichier de configuration Rsyslog et configurez l'emplacement pour générer des fichiers journaux dans le système.
# vim /etc/rsyslog.conf
et ajoutez les lignes suivantes en fin de fichier.
$template TmplAuth, "/var/log/%HOSTNAME%/%PROGRAMNAME%.log" authpriv.* ?TmplAuth *.info,mail.none,authpriv.none,cron.none ?TmplMsg
Étape 2.3 :Activer le module et le protocole UDP
Supprimez également le commentaire des lignes suivantes (supprimez le numéro de départ) dans le fichier de configuration rsyslog pour activer UDP.
$ModLoad imudp $UDPServerRun 514
Étape 2.4 :Ouvrir l'accès dans le pare-feu
Si vous utilisez iptables pour protéger votre système, vous devez ajouter la règle suivante pour ouvrir le port
# iptables -A INPUT -m state --state NEW -m udp -p udp --dport 514 -j ACCEPT
Étape 2.5 :Redémarrez Rsyslog
Après avoir effectué les modifications ci-dessus dans le serveur central Rsyslog, redémarrez le service à l'aide de la commande suivante.
# service rsyslog restart
Étape 3 :Configurer Rsyslog sur les nœuds clients
Après avoir configuré le serveur centralisé Rsyslog, configurez le système client pour envoyer ses journaux au serveur central Rsyslog. Connectez-vous à chaque nœud client et ajoutez la ligne suivante à la fin du fichier
# vim /etc/rsyslog.conf
ajoutez la ligne ci-dessous, modifiez le nom d'hôte ou l'adresse IP avec l'adresse IP/le nom d'hôte de votre système Rsyslog central.
*.* @192.168.1.254:514 [or ] *.* @logserver.example.com:514
et redémarrez le service rsyslog à l'aide de la commande suivante.
# service rsyslog restart
Et la configuration de votre serveur de journalisation centralisée s'est terminée avec succès.