반응형

출처:http://blog.naver.com/PostView.nhn?blogId=junix&logNo=80087440477

 

로그서버 구축

 

1. 각 서버의 모든 로그를 로그서버에 원격 보관하고 웹에서 모니터링할 수 있는 환경 구축

   1. 분산되어 있는 시스템 로그를 한곳에서 실시간 모니터링할 수 있어 서버 장애 모니터링 능력을 향상시킴

   2. 각 서버 시스템로그의 백업 효과

 

  

2. 구성

서버 : x.x.x.27

클라이언트 : 전체 서버(현재는 x.x.x.44, x.x.x..20  2대로 테스트중)

데몬 : 로그서버 rsyslog, 웹프로그램 phplogcon

 

3. 데모 :

 

 

4. 설정 메뉴얼

* 클라이언트의 로그가 로그서버의 /var/log/messages 에 저장되는 구성

   다시 이로그는 로그서버의 DB에 저장됨

 

 

클라이언트(파일로 넘기는 설정, DB에도 넘어감)

yum install rsyslog rsyslog-mysql

chkconfig syslog off

chkconfig rsyslog on

service syslog stop

------------/etc/sysconfig/rsyslog

SYSLOGD_OPTIONS="-m 0"
KLOGD_OPTIONS="-x"

 

------------/etc/rsyslog.conf

*.info;mail.none;authpriv.none;cron.none                /var/log/messages
authpriv.*                                              /var/log/secure
mail.*                                                  -/var/log/maillog
cron.*                                                  /var/log/cron
*.emerg                                                 *
uucp,news.crit                                          /var/log/spooler
local7.*                                                /var/log/boot.log
*.*        @x.x.x.27

 

service rsyslog start

 

 

클라이언트(파일로 남지 않고 DB로 바로 넘기는 설정)

yum install rsyslog rsyslog-mysql

chkconfig syslog off

chkconfig rsyslog on

service syslog stop

------------/etc/sysconfig/rsyslog

SYSLOGD_OPTIONS="-m 0"
KLOGD_OPTIONS="-x"

 

------------/etc/rsyslog.conf

$ModLoad ommysql.so
$template dbFormat,"insert into SystemEvents (Message, Facility, FromHost, Priority, DeviceReportedTime, ReceivedAt, InfoUnitID, SysLogTag) values ('%msg%', %syslogfacility%, '서버IP주소', %syslogpriority%, '%timereported:::date-mysql%', '%timegenerated:::date-mysql%', %iut%, '%syslogtag%')",SQL
*.* :ommysql:x.x.x.27,Syslog,rsyslog,1q2w3e;dbFormat
*.info;mail.none;authpriv.none;cron.none                /var/log/messages
authpriv.*                                              /var/log/secure
mail.*                                                  -/var/log/maillog
cron.*                                                  /var/log/cron
*.emerg                                                 *
uucp,news.crit                                          /var/log/spooler
local7.*                                                /var/log/boot.log

 

service rsyslog start

 

 

서버

yum install rsyslog rsyslog-mysql php httpd mysql-sever

chkconfig syslog off

DB설정

mysql -u root
source /usr/share/doc/rsyslog-mysql-2.0.6/createDB.sql
grant insert privileges on Syslog.* to '유저명'@'%' identified by '비밀번호';
flush privileges;
quit

service rsyslog restart

mysql -u root Syslog
select count(*) from SystemEvents;

chkconfig rsyslog on

service syslog stop

------------/etc/sysconfig/rsyslog

SYSLOGD_OPTIONS="-m 0 -r"
KLOGD_OPTIONS="-x"

 

------------/etc/rsyslog.conf

$ModLoad ommysql.so
$template dbFormat,"insert into SystemEvents (Message, Facility, FromHost, Priority, DeviceReportedTime, ReceivedAt, InfoUnitID, SysLogTag) values ('%msg%', %syslogfacility%, '%FROMHOST%', %syslogpriority%, '%timereported:::date-mysql%', '%timegenerated:::date-mysql%', %iut%, '%syslogtag%')",SQL
*.* :ommysql:localhost,Syslog,rsyslog,1q2w3e;dbFormat
*.info;mail.none;authpriv.none;cron.none                /var/log/messages
authpriv.*                                              /var/log/secure
mail.*                                                  -/var/log/maillog
cron.*                                                  /var/log/cron
*.emerg                                                 *
uucp,news.crit                                          /var/log/spooler
local7.*                                                /var/log/boot.log

 

service rsyslog start

 

 

rsyslog 정상실행 로그
May 2 00:27:32 server rsyslogd: [origin software="rsyslogd" swVersion="2.0.6"
x-pid="10400" x-info="http://www.rsyslog.com"][x-configInfo udpReception="No" upPort="514" tcpReception="No" tcpPort="0"] restart

 

방화벽 설정
vi /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -p udp --dport 514 -s x.x.x.0/255.255.255.0 -j ACCEPT
service iptables restart

 

tcp로 로그를 전달하는 설정
서버 설정옵션에 -t514 추가
클라이언트 설정에 @@x.x.x.27 과 같이 설정(UDP는 @x.x.x.27임)
방화벽 설정추가
-A RH-Firewall-1-INPUT -p tcp --dport 514 -s x.x.x.0/255.255.255.0 -j ACCEPT


 

 

todo list

- 서버 정보가 호스트네임으로 기록되는 것을 IP주소로 남길 수 있도록 수정

  - mysql로 직접 로그를 보내는 경우 %FROMHOST%가 안먹힘

- 원격로그서버 /var/log/messages 단일 파일에 모든 서버의 로그가 기록되는 것을 각 서버별/기간별로 나누어서 저장되도록 수정

- 보안 조치

   - 웹프로그램 접근제한(id/pw 인증, apache, htaccess)

   - 특정 서버만 원격로그서버를 사용할 수 있도록 제한, iptables, x.x.x.0/255.255.255.0, udp 514

 

참고자료
원격로그서버 세팅방법 : http://iscert.springnote.com/pages/1554282
rsyslog.conf : http://www.rsyslog.com/doc-rsyslog_conf_actions.html


 

---------

 

2011.3.24

 

http://gembuls.wordpress.com/2011/02/12/how-to-install-rsyslogmysql-with-loganalyzer-on-centos/

 

 

2011.3.29

 

CentOS 5.5 で rsyslogを使ってMySQLにsyslogメッセージを書き出す
http://ossexpo.blogspot.com/2010/10/centos-55-rsyslogmysqlsyslog.html

Rsyslog+MySQL+LogAnalyzer
http://itorzorg.blogspot.com/2010/10/rsyslogmysqlloganalyzer.html


RHEL ES4 update 3 x86_64にrsyslogをインストールする
http://ysmt.blog21.fc2.com/blog-entry-308.html

 

 

 

 

 

------

 

2011.12.13

 

 

Working Apache and Rsyslog configuration

http://wiki.rsyslog.com/index.php/Working_Apache_and_Rsyslog_configuration

 

Splunk/Rsyslog/Apache/Ubuntu Quickstart

http://bitkickers.blogspot.com/2010/12/splunk-rsyslogapacheubuntu-quickstart.html

 

Remote logging of Apache logs

http://tipstricks.itmatrix.eu/?p=274

 

Rsyslog & PHPSyslog

http://pbraun.nethence.com/doc/net/rsyslog-phpsyslog.html

 

 

 

 

 

 

2013.2.15

 

 

 

CentOS 6.3에서 rsyslog를 간단히 remote syslog 서버로 설정 변경 방법

 

출처 : http://www.ehowstuff.com/how-to-setup-central-log-server-using-rsyslog-on-centos-6-2centos6-3/

 

 

 

/etc/rsyslog.conf 의 해당 부분을 아래와 같이 수정

 

# Provides UDP syslog reception

$ModLoad imudp.so

$UDPServerAddress 0.0.0.0

$UDPServerRun 514

 

# Provides TCP syslog reception

$ModLoad imtcp.so

$InputTCPServerRun 514

 

 

 

 

 

Kiwi SyslogGen - Syslog 테스트를 위한 로그 생성기

 

 

Kiwi SyslogGen - Test Your Kiwi Syslog Server Installation

http://www.kiwisyslog.com/downloads.aspx

 

-> 요거 좋다!!!

 

 

Kiwi SyslogGen sends Unix type Syslog messages created from the GUI to a host running a Syslog Server.

Kiwi SyslogGen can be used to test a Syslog Server setup and diagnose communication problems.

 

Features

· GUI Interface

· Sends standard Unix Syslog messages (or enhanced messages compatible with Kiwi

Syslog Server)

· Fast and simple to use

· Free to use for as long as you like

· Fully test your Syslog Server setup

· Create BSD Syslog Daemon RFC3164 compliant message headers

· Send messages using either UDP or TCP protocol

· Can send sequentially numbered messages

· Can replay syslog messages from an Ethereal capture file

 

 

 

 

 

rsyslog evaluation

http://mperedim.wordpress.com/2010/01/21/rsyslog-evaluation/

 

 

반응형

+ Recent posts