메뉴 건너뛰기

imitator

loganalyzer란

loganalyzer는 rsyslog가 message 또는 syslog에 기록된 데이터를 DB화 한것을 웹으로 볼수있게 해주는 프로그램입니다.

로그의 내용을 가독성 있게 분류해주며 검색기능이 존재하여 다량의 서버를 관리하는 서버 관리자에게 도움이됩니다.


장점

1. 필터 기능이 있어 원하는 부분만 보는것이 가능합니다.

2. 로그를 쉽고 편하게 볼수 있습니다.


단점

1. DB의 양이 늘어날수록 느려지므로 별도의 스크립트 처리를 통해 DB의 용량을 줄여야합니다.


설치


1. 먼저 loganalyzer에 필요한 패키지를 설치합니다.

 

# 패키지 설치

yum install -y wget vim httpd php mysql rsyslog rsyslog-mysql mariadb mariadb-server php-mysql 



2. 패키지가 설치되면 서버 리부팅시 자동으로 시작되게 한후 서비스를 시작합니다.


# 패키지 등록 및 시작

chkconfig rsyslog on

chkconfig mariadb on

chkconfig httpd on 


service rsyslog start

service httpd start

service mariadb start 



0.png


3. rsyslog.conf의 설정을 진행합니다. 이 문서에서는 로그를 UDP로 받는것을 전제로 합니다.

    이 부분은 매우 중요하니 설명을 참고 후 설정을 진행해주세요.


# 주석을 해제 합니다.

$ModLoad imudp

$UDPServerRun 514


$ModLoad imtcp

$InputTCPServerRun 514


# 아래의 내용을 추가합니다.

$ModLoad ommysql

$ActionOmmysqlServerPort 3306

*.*  :ommysql:127.0.0.1,Syslog,rsyslog,비밀번호

$AllowedSender UDP, 127.0.0.1,  192.168.0.0/16  



중요 설명

*.*  :ommysql:127.0.0.1,Syslog,rsyslog,비밀번호 

Syslog : mysql에서 로그가 쌓이는 데이터베이스입니다.

rsyslog : Syslog를 사용하는 mysql의 관리 아이디입니다.

비밀번호 : rsyslog의 비밀번호입니다. 꼭 수정후 사용하도록 합니다.


$AllowedSender UDP, 127.0.0.1,  192.168.0.0/16

192.168.0.0/16 : 192.168대역 전체의 로그를 받아들이는 설정으로 알맞게 변경해주세요. 


4. mysql의 설정을 진행합니다. 여기서 설정방법은 두가지로 갈립니다. 서버의 상태에 따라 확인 후 진행해주세요.



1) mysql를 처음 설치한 상태이고 관리자 패스워드가 설정되지 않는 경우

# 아래의 설정을 통해 Syslog의 데이터베이스를 추가합니다.

mysql -u root < /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql


# rsyslog의 계정 생성과 관리자의 패스워드 변경을 진행합니다. 비밀번호로 적힌 부분은 꼭 수정해서 사용해주세요.

mysql -u root 

GRANT all privileges ON Syslog.* TO rsyslog@'localhost' IDENTIFIED BY '비밀번호';

use mysql;

update user set password = password('비밀번호') where user = 'root';

flush privileges;

exit; 


2) mysql에 관리자 패스워드가 설정 된 경우

# 아래의 설정을 통해 Syslog의 데이터베이스를 추가합니다. 관리자 패스워드를 입력하면 작업이 완료됩니다.

mysql -u root -p < /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql

# rsyslog의 계정 생성을 진행합니다. 비밀번호로 적힌 부분은 꼭 수정해서 사용해주세요.

mysql -u root -p

GRANT all privileges ON Syslog.* TO rsyslog@'localhost' IDENTIFIED BY '비밀번호';

flush privileges;

exit; 



0-1.png


5. iptable에 514 udp 포트를 추가 후 적용합니다.


# iptables 파일 수정

vi /etc/sysconfig/iptables 

-A RH-Firewall-1-INPUT -p udp -m state --state NEW -m udp --dport 514 -j ACCEPT


# iptables 파일 적용
iptables-restore < /etc/sysconfig/iptables

# rsyslog 서비스 재시작

service rsyslog restart 


6. loganalyzer 설치 작업을 진행합니다.


# /usr/local/src로 이동 후 loganalyzer를 다운로드 받은 뒤 압축을 해제합니다.

cd /usr/local/src

wget http://download.adiscon.com/loganalyzer/loganalyzer-4.1.6.tar.gz

tar -zxvf /usr/local/src/loganalyzer-4.1.6.tar.gz 


# 웹으로 구동될 파일들을 /var/www/html/loganalyzer로 이동시킵니다.

mv /usr/local/src/loganalyzer-4.1.6/src /var/www/html/loganalyzer

mv /usr/local/src/loganalyzer-4.1.6/contrib/* /var/www/html/loganalyzer

chmod +x /var/www/html/loganalyzer/configure.sh /var/www/html/loganalyzer/secure.sh


# /var/www/html/loganalyzer로 이동하여 설정 스크립트를 실행합니다.

cd /var/www/html/loganalyzer

./configure.sh 



1.png


7. 웹 설정을 진행합니다. 아래의 URL로 접속한후 here를 클릭합니다.


URL : http://자기 IP/loganalyzer/ 



2.png


8. Next를 클릭합니다.


3.png


9. Next를 클릭합니다.


4.png


10. Enable User Database를 yes로 변경하고 추가 설정을 진행합니다.


# 설정 진행

Database Name localhost

Database Port 3306

Database Name Syslog

Table prefix logcon_

Database User rsyslog

Database Password 비밀번호 



5.png


11. Next를 클릭합니다.


6.png


12. Next를 클릭합니다.


7.png


13. 관리자의 아이디를 생성하고 Next를 클릭합니다.


8.png


14. Source Type을 MYSQL Native로 설정하고 추가 설정을 진행합니다.


# 설정 진행

Database Host localhost

Database Name Syslog

Database Tablename SystemEvents

Database User rsyslog

Database Password 비밀번호 



9.png


15. 설치가 모두 완료되었습니다 Finish!를 클릭합니다.


10.png


16. 설치가 완료되면 로그를 확인할수 있습니다.


클라이언트 설정 방법

클라이언트의 rsyslog.conf 파일을 아래와 같은 방법을 선택 후 추가한 뒤 서비스를 재시작합니다.

# 모든 로그를 보낼경우

vi /etc/rsyslog.conf 

*.* @로그서버 IP:514


# 에러에 관련된 로그만 보낼경우

vi /etc/rsyslog.conf 

*.err;*.warn;kern.alert;kern.crit;kern.emerg @로그서버 IP:514


# rsyslog 서비스를 재시작

service rsyslog restart 


번호 제목 글쓴이 날짜 조회 수
» CentOS 7 loganalyzer 로그 서버 설치 방법 file 관리자 2018.09.07 71
94 VirtualBox 디스크 이미지 파일을 열 수 없습니다. 해결방법 file 관리자 2018.08.02 93
93 apache2 ProxyPass 사용 중 503 에러 발생시 해결 방법 관리자 2018.05.21 254
92 오픈스택 가상서버 이미지 설치 관련 정리 secret 관리자 2018.05.02 0
91 도커의 설치에 관해 정리 관리자 2018.04.10 283
90 쉘 스크립트 expect에서 spawn 파이프(pipe) 사용 방법 [1] file 관리자 2018.02.21 487
89 CentOS 7 MRTG 한글 깨짐 발생시 해결방법 file 관리자 2018.01.04 508
88 Ubuntu 16.04 apt-get 패키지 설치 오류 발생시 해결방법 file 관리자 2017.10.10 1325
87 Ubuntu 16.04 단축 URL을 생성하는 YOURLS 설치 방법 file 관리자 2017.08.11 373
86 Ubuntu 16.04 jar 디컴파일 툴 JD-GUI 설치 file 관리자 2017.08.01 478
85 linux apk를 jar로 디컴파일하는 dex2jar 설치 및 사용 방법 file 관리자 2017.08.01 482
84 우분투 16.04 /var/lib/dpkg/lock 잠금 파일을 얻을 수 없습니다 해결법 [1] file 관리자 2017.07.20 2004
83 우분투 16.04 LTS 서버 보안 강화를 위한 knockd 설치 방법 file 관리자 2017.07.06 269
82 CentOS 6 comodo Antivirus for Linux 백신 설치 방법 file 관리자 2017.06.15 552
81 CentOS 6 ssh google-authenticator로 OTP 접속하는 방법 file 관리자 2017.06.09 420
80 vsftpd 호스트로갈 루트가 없음(No route to host) 에러 처리 방법 file 관리자 2017.05.08 2238
79 오픈스택 qcow2 이미지 가져오기 secret 관리자 2017.04.17 0
78 let’s Encrypt SSL 무료 인증서 certbot을 통해 설치 및 설정하는 방법 file 관리자 2017.04.13 2531
77 VPN를 악용하는 xe 광고글 작성자를 iptables로 차단하는 방법 [2] file 관리자 2017.03.31 195
76 리눅스 CentOS 마인크래프트 서버 spigot 1.11.2 설치(셋팅)방법 file 관리자 2017.02.27 1473