Skip to main content

System Syslog Server

Beschreibung

Konfiguration eines Syslog-Servers mit rsyslog auf dem LocaPhone-System, damit für Endgeräte oder Subsysteme wie DECT ein Log-Server bereitgestellt wird.


LocaPhone Versionen

RELEASE 5 RELEASE 4 RELEASE 3 RELEASE 2


Vorgehensweise

Das verwendete Betriebssystem Ubuntu stellt normalerweise das Paket rsyslog bereit.

root@voip:~$

BASH
root@voip:~# systemctl status rsyslog

● rsyslog.service - System Logging Service
   Loaded: loaded (/lib/systemd/system/rsyslog.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2021-11-16 14:05:06 CET; 24min ago
     Docs: man:rsyslogd(8)
           http://www.rsyslog.com/doc/
 Main PID: 4884 (rsyslogd)
    Tasks: 10
   Memory: 1.6M
      CPU: 1.263s
   CGroup: /system.slice/rsyslog.service
           └─4884 /usr/sbin/rsyslogd -n

Nov 16 14:05:06 voip.loca systemd[1]: Starting System Logging Service...
Nov 16 14:05:06 voip.loca systemd[1]: Started System Logging Service.


Konfiguration

Einstellungen des Systemdienstes rsyslogd als Default.

/etc/rsyslog.conf

BASH
#  /etc/rsyslog.conf    Configuration file for rsyslog.
#                       For more information see
#                       /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
#
#  Default logging rules can be found in /etc/rsyslog.d/50-default.conf

#################
#### MODULES ####
#################
module(load="imuxsock") # provides support for local system logging
module(load="imklog")   # provides kernel logging support
#module(load="immark")  # provides --MARK-- message capability

# provides UDP syslog reception
#module(load="imudp")
#input(type="imudp" port="514")

# provides TCP syslog reception
#module(load="imtcp")
#input(type="imtcp" port="514")

# Enable non-kernel facility klog messages
$KLogPermitNonKernelFacility on

###########################
#### GLOBAL DIRECTIVES ####
###########################

#
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

# Filter duplicated messages
$RepeatedMsgReduction on

#
# Set the default permissions for all log files.
#
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog

#
# Where to place spool and state files
#
$WorkDirectory /var/spool/rsyslog

#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf


Einstellungen des Loggings von UDP auf Port 514. Logging per UDP-Verbindung ist schneller, Logging per TCP-Verbindung ist zuverlässiger.

/etc/rsyslog.d/remotelog.conf

BASH
module(load="imudp")
#input(type="imudp" port="514")
 
#$template RemoteHost,"/var/log/rsyslog/hosts/%HOSTNAME%/syslog.log"
$template RemoteHost,"/var/log/%HOSTNAME%/syslog.log"
 
$RuleSet remote
*.* ?RemoteHost
 
$ModLoad imudp
$InputUDPServerBindRuleset remote
$UDPServerRun 514


Start des Syslog-Servers

Nach erfolger Konfiguration wird der rsyslog daemon neu gestartet.

root@voip:~$

BASH
root@voip:~# systemctl restart rsyslog

Überprüfung der rsyslog network sockets.

root@voip:~$

BASH
root@voip:~# ss -tulnp | grep "rsyslog"
udp    UNCONN     0      0         *:514                   *:*                   users:(("rsyslogd",pid=4884,fd=6))
udp    UNCONN     0      0        :::514                  :::*                   users:(("rsyslogd",pid=4884,fd=7))
tcp    LISTEN     0      25        *:514                   *:*                   users:(("rsyslogd",pid=4884,fd=8))
tcp    LISTEN     0      25       :::514                  :::*                   users:(("rsyslogd",pid=4884,fd=9))

Nach Aktivierung des Loggins in einem Endgeräte kann die Log-Ausgabe unter /var/log/%HOSTNAME% eingesehen werden.

root@voip:~$

BASH
root@voip:~# ll /var/log/
total 24176
drwxrwxr-x 16 root     syslog       4096 Nov 16 14:06 ./
drwxr-xr-x 14 root     root         4096 Aug 30 12:09 ../
drwxr-xr-x  2 syslog   syslog       4096 Nov 16 14:06 10.10.1.14/
drwxr-xr-x  2 syslog   syslog       4096 Nov 16 14:06 10.10.1.15/

root@voip:~# ll /var/log/10.10.1.14/
total 1280
drwxr-xr-x  2 syslog syslog    4096 Nov 16 14:06 ./
drwxrwxr-x 16 root   syslog    4096 Nov 16 14:06 ../
-rw-r-----  1 syslog adm    1295702 Nov 16 14:47 s_local@base-dm-int-589ec638bc10.lo

Als Hostname wird entweder die IP-Adresse oder der DNS-Name des Gerätes angegeben.


Einrichtung logrotate

Sollte das Logging dauerhaft aktiv sein, muss ein entsprechendes logrotate eingerichtet werden. Folgende Zeilen müssen der Datei /etc/logrotate.d/rsyslog hinzugefügt werden:

/etc/logrotate.d/rsyslog

BASH
#%HOSTNAME% muss durch die IP/DNS-Name des loggenden Gerätes ersetzt werden
/var/log/%HOSTNAME%/syslog.log
{
        rotate 7
        daily
        maxsize 1k
        missingok
        notifempty
        delaycompress
        compress
        postrotate
                /usr/lib/rsyslog/rsyslog-rotate
        endscript
}


Zusätzliche Informationen


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.