1. 원격 로그서버(rsyslog) 구성
- 로그 기록은 로컬 서버에 저장되지만, 여러 서버를 관리하는 관리자 측에서 생각하면 여러 서버의 로그 기록을 한 곳에서 관리하는 목적
- 악의적으로 서버에 접근하고 기록을 삭제하는 등의 행위를 하였을 경우 로컬이 아닌 백업용(A-A)으로 구성을 하는 것이 좋다.
[+] rsyslog 구성
- 로그 서버 구성 (CentOS_9_13)
- 로그 클라이언트 구성(Ubuntu)
[+] 로그서버 설치 (rsyslog install)
> Centos의 경우 기본으로 설치되어 있다.
dnf -y install rsyslog
[+] 설정파일 수정 (/etc/rsyslog.conf)
- rsyslog는 UDP 514를 사용하여 전송을 수신받습니다.
> UDP의 경우 TCP보다 전송속도가 빠르다는 장점이 있지만 신뢰성을 보장하지 않습니다.
- 로그 기록
> vim /etc/rsyslog.conf 수정
module(load="imudp") # needs to be done just once
input(type="imudp" port="514")
<!-- 추가로 로그가 기록될 장소를 기입 -->
$template TmplAuth, "/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
[+] 방화벽 설정 및 보안 설정
firewall-cmd --permanent --zone=public --add-service=rsyslog --add-port=514/udp
firewall-cmd --reload
[+] rsyslog 확인 및 재시작
chkconfig rsyslog on && service rsyslog restart
[+] 소켓 확인
netstat -tulpn | grep rsyslog
[+] rsyslog 트래픽 허용
- semanage 명령을 하였을 때 아래와 같은 에러가 발생한다면, semanage를 설치
semanage port -a -t syslogd_port_t -p udp 514
semanage port -a -t syslogd_port_t -p tcp 514
2. 클라이언트 서버 설정
[+] 설정파일 수정
- etc/rsyslog.conf파일 수정 (맨 아래 임의로 추가)
모든 파일(*.*)을 설정하였으나, (OR *.warn;mail.none;authpriv.*;cron.none)으로 원하는 로그만 지정 가능
*.* @@192.168.100.13:514
[+] 포트 추가 및 확인
iptables -I INPUT -p udp --dport 514 -j ACCEPT
iptables -I OUTPUT -p udp --sport 514 -j ACCEPT
netstat -na | grep -i udp
3. 테스트
[+] 클라이언트 서버에서 여러 로그가 남을 작업 진행
- nmap install, ssh login 등등 작업을 진행
- 로그파일이 centos에 있는 것을 확인할 수 있다.
'소소한 IT이야기 > 클라우드' 카테고리의 다른 글
[Network_01] 기본 용어 정리 (1) | 2023.02.13 |
---|---|
[Linux_30] webmin(웹민) 서버 구축 (feat. CentOS stream 9) (1) | 2023.02.10 |
[Linux_30] TrueNAS 설치하기 (feat. virtualBOX) (1) | 2023.02.10 |