반응형

 

syslog 설정하고 Log파일 이름을 원하는 경로에 원하는 파일명으로 설정하는 방법에 대하여 공유드리겠습니다.

해당 명령어 실행은 CentOS 7.9 버전에서 수행되었습니다.

가장 우선적으로 yum 패키지 업데이트 이후 syslog 패키지를 다운로드하여 설치합니다.

1
2
3
#=== 패키지 설치 ===#
sudo yum update
sudo yum install -y rsyslog
cs

 

설치가 모두 완료되었으면 Log를 저장 할 위치를 선정하고 폴더를 생성하여 줍니다.

저는 /data/log/remote 경로에 저장하겠습니다.

1
2
#=== 폴더 생성 ===#
sudo mkdir -/data/log/remote
cs

 

syslog를 원하는 파일명으로 저장하기 위해 아래 $ModLoad부터 ~ 514 까지 2줄의 주석 제거하고

$template 부터 시작하는 아래 2줄을 추가해 줍니다.

UDP/514만 저장하기 원하는 경우 위에 2줄만 주석 제거하고

TCP/514만 저장하기 원하는 경우 아래 2줄만 주석 제거해줍니다.

저의 경우 UDP/514, TCP/514 모두를 파일로 저장하기 위해 아래와 같이 총 4줄을 주석제거 했습니다.

Log 파일 이름 포맷을 변경하실 분은 %로 시작하는 Format의 순서를 변경하시면 됩니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#=== 주석 삭제 및 라인 추가1 ===#
sudo vi /etc/rsyslog.conf
$ModLoad imudp
$UDPServerRun 514
 
$template FILENAME, "/data/log/remote/%fromhost-ip%/%$YEAR%-%$MONTH%-%$DAY%_%fromhost-ip%.log"
*.* ?FILENAME
 
 
#=== 주석 삭제 및 라인 추가2 ===#
$ModLoad imtcp
$InputTCPServerRun 514
 
$template FILENAME, "/data/log/remote/%fromhost-ip%/%$YEAR%-%$MONTH%-%$DAY%_%fromhost-ip%.log"
*.* ?FILENAME
cs

 

설정파일을 저장하였으면 syslog 서비스를 시작하여 줍니다.

1
2
#=== 서비스 시작 ===#
sudo systemctl start rsyslog
cs

 

서비스가 잘 시작되었는지 netstat 명령어로 포트 리스닝을 확인합니다.

1
2
#=== 포트 오픈 확인 ===#
sudo netstat -anp
cs

 

netstat 명령어로 확인해보니 TCP, UDP 모두 정상적으로 514 포트를 리스닝하고 있습니다.

 

syslog client에서 syslog를 전송하게 되면 아래 경로에 다음과 같이 IP 이름으로 폴더가 생성됩니다.

 

폴더에 들어가보면 <%날짜%>_<%IP주소%>.log 형태의 로그가 저장됩니다.

 

내용이 유용하셨다면 좋아요&댓글 부탁드립니다.
이 블로그를 이끌어갈 수 있는 강력한 힘입니다!

caul334@gmail.com

 

반응형

+ Recent posts