본문 바로가기

Network Management System

RSyslog Configuration 설정

RSYSLOG 설정 파일

Ubuntu기준으로 볼 때 RSyslog는 minimal로 설치해도 기본으로 설치됩니다. 즉, 별도로 설치할 필요 없이 OS에 기본으로 포함되어 설치되고 자동 실행됩니다.

 

동작 확인

아래와 같이 rsyslog daemon이 동작 중인지 확인할 수 있습니다.

systemclt status rsyslog

설정 파일 (rsyslog.conf)

기본 설정 파일은 /etc/rsyslog.conf에 위치합니다.

# /etc/rsyslog.conf configuration file for rsyslog

#

# For more information install rsyslog-doc and see

# /usr/share/doc/rsyslog-doc/html/configuration/index.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="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")

 

# provides kernel logging support and enable non-kernel klog messages

module(load="imklog" permitnonkernelfacility="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
$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

RSyslog 원격 서버로 운용할 경우 UDP, TCP 설정 부분의 주석을 제거하면 됩니다. 세부 설정은 /etc/rsyslog.d/*.conf에 설정됩니다.

 

/etc/rsyslog.d로 가서 확인하면

kenny@kenny-VirtualBox:/etc/rsyslog.d$ ll

total 24

drwxr-xr-x   2 root root  4096  2 13 00:54 ./

drwxr-xr-x 128 root root 12288  2 13 01:07 ../

-rw-r--r--   1 root root   314  1 22  2020 20-ufw.conf

-rw-r--r--   1 root root  1124  2 12  2020 50-default.conf

kenny@kenny-VirtualBox:/etc/rsyslog.d$

20-ufw.conf와 50-default.conf를 확인할 수 있습니다. ufw.conf는 ubuntu firewall 로그 설정이고 default.conf는 rsyslog default 설정 파일입니다.

 

UFW log는 /var/log/ufw.log 파일에 저장한다는 의미입니다.

# Log kernel generated UFW log messages to file

:msg,contains,"[UFW " /var/log/ufw.log

 

/etc/rsyslog.d/50-default.conf

#  Default rules for rsyslog.

#

#                       For more information see rsyslog.conf(5) and /etc/rsyslog.conf

 

#

# First some standard log files.  Log by facility.

#

auth,authpriv.*                 /var/log/auth.log

*.*;auth,authpriv.none          -/var/log/syslog

#cron.*                         /var/log/cron.log

#daemon.*                       -/var/log/daemon.log

kern.*                          -/var/log/kern.log

#lpr.*                          -/var/log/lpr.log

mail.*                          -/var/log/mail.log

#user.*                         -/var/log/user.log

 

#

# Logging for the mail system.  Split it up so that

# it is easy to write scripts to parse these files.

#

#mail.info                      -/var/log/mail.info

#mail.warn                      -/var/log/mail.warn

mail.err                        /var/log/mail.err

 

#

# Some "catch-all" log files.

#

#*.=debug;\

#       auth,authpriv.none;\

#       news.none;mail.none     -/var/log/debug

#*.=info;*.=notice;*.=warn;\

#       auth,authpriv.none;\

#       cron,daemon.none;\

#       mail,news.none          -/var/log/messages

 

#

# Emergencies are sent to everybody logged in.

#

*.emerg                         :omusrmsg:*

 

#

# I like to have messages displayed on the console, but only on a virtual

# console I usually leave idle.

#

#daemon,mail.*;\

#       news.=crit;news.=err;news.=notice;\

#       *.=debug;*.=info;\
# console I usually leave idle.
#
#daemon,mail.*;\
#       news.=crit;news.=err;news.=notice;\
#       *.=debug;*.=info;\
#       *.=notice;*.=warn       /dev/tty8

기본적으로 facility.severity형식으로 어디에 어떤 파일로 저장할지를 지정합니다. 이것으로 기본적인 필터링을 지정한다고 볼 수 있습니다.

 

주석 처리 : 주석은 # 이나 C-Sytle의 /* ~~~ */ 모두 가능합니다.

 

/var/log/syslog 파일을 확인해 보면 아래와 같이 저장됩니다.

내가 원하는 형태로 좀 더 정형화된 포맷으로 로그를 보고 싶다면 다양한 Rsyslog의 Template 기능을 활요하면 됩니다. 

 

'Network Management System' 카테고리의 다른 글

SNMP MIB  (0) 2021.02.18
Rsyslog Properties  (0) 2021.02.14
Rsyslog 개요  (0) 2021.02.13
RSYSLOG란 무엇인가  (0) 2021.02.13
FCAPS: NMS EMS의 주요 기능  (0) 2021.02.05