Ask question

Ask Questions and Get Answers from Our Community

Answer

Answer Questions and Become an Expert on Your Topic

Contact Staff

Our Experts are Ready to Answer your Questions

Cài đặt và cấu hình syslog-ng trên CentOS 6

magicvn

Member
Joined
Aug 10, 2014
Messages
22
Reaction score
1
Points
0
Cài đặt và cấu hình syslog-ng trên CentOS 6

Khái niệm facility level và secrity level:

Facility level: đại diện cho đối tượng tạo ra thông báo (kernel, process).
[TABLE="class: grid, width: 500"]
[TR]
[TD]acility Number[/TD]
[TD]Keyword[/TD]
[TD]Facility Description[/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]kem[/TD]
[TD]kernel messages[/TD]
[/TR]
[TR]
[TD]1[/TD]
[TD]user[/TD]
[TD]user-level messages[/TD]
[/TR]
[TR]
[TD]2[/TD]
[TD]mail[/TD]
[TD]mail system[/TD]
[/TR]
[TR]
[TD]3[/TD]
[TD]daemon[/TD]
[TD]system daemons[/TD]
[/TR]
[TR]
[TD]4[/TD]
[TD]auth[/TD]
[TD]security/authorization messages[/TD]
[/TR]
[TR]
[TD]5[/TD]
[TD]syslog[/TD]
[TD]messages generated internally by syslog[/TD]
[/TR]
[TR]
[TD]6[/TD]
[TD]lpr[/TD]
[TD]line printer subsystem[/TD]
[/TR]
[TR]
[TD]7[/TD]
[TD]news[/TD]
[TD]network news subsystem[/TD]
[/TR]
[TR]
[TD]8[/TD]
[TD]uucp[/TD]
[TD]UUCP subsystem[/TD]
[/TR]
[TR]
[TD]9[/TD]
[TD]-[/TD]
[TD]clock daemon[/TD]
[/TR]
[TR]
[TD]10[/TD]
[TD]authpriv[/TD]
[TD]security/authorization messages[/TD]
[/TR]
[TR]
[TD]11[/TD]
[TD]ftp[/TD]
[TD]FTP daemon[/TD]
[/TR]
[TR]
[TD]12[/TD]
[TD]-[/TD]
[TD]network news subsystem[/TD]
[/TR]
[TR]
[TD]13[/TD]
[TD]-[/TD]
[TD]log audit[/TD]
[/TR]
[TR]
[TD]14[/TD]
[TD]-[/TD]
[TD]log alert[/TD]
[/TR]
[TR]
[TD]15[/TD]
[TD]cron[/TD]
[TD]clock daemon[/TD]
[/TR]
[TR]
[TD]16[/TD]
[TD]local0[/TD]
[TD]local use 0 (local0)[/TD]
[/TR]
[TR]
[TD]17[/TD]
[TD]local1[/TD]
[TD]local use 1 (local1)[/TD]
[/TR]
[TR]
[TD]18[/TD]
[TD]local2[/TD]
[TD]local use 2 (local2)[/TD]
[/TR]
[TR]
[TD]19[/TD]
[TD]local3[/TD]
[TD]local use 3 (local3)[/TD]
[/TR]
[TR]
[TD]20[/TD]
[TD]local4[/TD]
[TD]local use 4 (local4)[/TD]
[/TR]
[TR]
[TD]21[/TD]
[TD]local5[/TD]
[TD]local use 5 (local5)[/TD]
[/TR]
[TR]
[TD]22[/TD]
[TD]local6[/TD]
[TD]local use 6 (local6)[/TD]
[/TR]
[TR]
[TD]23[/TD]
[TD]local7[/TD]
[TD]local use 7 (local7)[/TD]
[/TR]
[/TABLE]

Việc sử dụng facility cho phép chúng ta kiểm soát log được dễ dàng hơn, dựa vào nguồn gốc của nó.

Severity levels: xác định một ngưỡng mà messages sẽ được logged
[TABLE="class: grid, width: 500"]
[TR]
[TD]Code[/TD]
[TD]Severity[/TD]
[TD]Keyword[/TD]
[TD]Description[/TD]
[/TR]
[TR]
[TD]0[/TD]
[TD]Emergency[/TD]
[TD]emerg (panic)[/TD]
[TD]System is unstable[/TD]
[/TR]
[TR]
[TD]1[/TD]
[TD]Alert[/TD]
[TD]alert[/TD]
[TD]Action must be taken immediately[/TD]
[/TR]
[TR]
[TD]2[/TD]
[TD]Critical[/TD]
[TD]crit[/TD]
[TD]Critical conditions[/TD]
[/TR]
[TR]
[TD]3[/TD]
[TD]Error[/TD]
[TD]err (error)[/TD]
[TD]Error conditions[/TD]
[/TR]
[TR]
[TD]4[/TD]
[TD]Warning[/TD]
[TD]warning (warn)[/TD]
[TD]Warning conditions[/TD]
[/TR]
[TR]
[TD]5[/TD]
[TD]Notice[/TD]
[TD]notice[/TD]
[TD]Normal but significant condition[/TD]
[/TR]
[TR]
[TD]6[/TD]
[TD]Informational[/TD]
[TD]info[/TD]
[TD]Informational messages[/TD]
[/TR]
[TR]
[TD]7[/TD]
[TD]Debug[/TD]
[TD]debug[/TD]
[TD]Debug-level messages[/TD]
[/TR]
[/TABLE]

Ngoài ra còn một mức đặc biệt được gọi là none, mức này sẽ disable facility đi cùng . Severity levels định nghĩa một số lượng các bản ghi chi tiết trong log file. Dấu sao
[*] có thể được sử dụng để miêu tả cho tất cả các facilities level hoặc tất cả Severity levels.

Cài đặt syslog-ng:

Yêu cầu:
· Hệ điều hành CentOS 6.x trở lên
· Kết nối internet

Cài đặt EPEL repo:
Code:
[root@myserver ~]# cd /root
[root@myserver ~]# wget [URL]http://dl.fedoraproject.org/pub/epel/6Server/i386/epel-release-6-8.noarch.rpm[/URL]
[root@myserver ~]# rpm -Uvh /root/epel-release-6-8.noarch.rpm

kiểm tra lại EPEL repo đã cài đặt thành công hay không
Code:
[root@myserver ~]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.cisp.com
 * epel: mirror.metrocast.net
 * extras: mirror.symnds.com
 * updates: mirrors.easynews.com
repo id     repo name                status
base        CentOS-6 - Base           4,802
epel         Extra Packages for Enterprise Linux 6 - i386  8,318
extras      CentOS-6 - Extras         12
updates    CentOS-6 - Updates      93
repolist: 13,225

cài đặt syslog-ng
Code:
[root@myserver ~]# yum install syslog-ng syslog-ng-libdbi
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.cisp.com
 * epel: archive.linux.duke.edu
 * extras: mirror.symnds.com
 * updates: mirrors.easynews.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package syslog-ng.i686 0:3.2.5-3.el6 will be installed
--> Processing Dependency: libnet.so.1 for package: syslog-ng-3.2.5-3.el6.i686
--> Processing Dependency: libevtlog.so.0 for package: syslog-ng-3.2.5-3.el6.i686
---> Package syslog-ng-libdbi.i686 0:3.2.5-3.el6 will be installed
--> Processing Dependency: libdbi.so.0 for package: syslog-ng-libdbi-3.2.5-3.el6.i686
--> Running transaction check
---> Package eventlog.i686 0:0.2.12-1.el6 will be installed
---> Package libdbi.i686 0:0.8.3-4.el6 will be installed
---> Package libnet.i686 0:1.1.5-1.el6 will be installed
--> Finished Dependency Resolution
 
Dependencies Resolved
 
====================================================================================================
 Package                       Arch              Version                    Repository         Size
====================================================================================================
Installing:
 syslog-ng                     i686              3.2.5-3.el6                epel              442 k
 syslog-ng-libdbi              i686              3.2.5-3.el6                epel               31 k
Installing for dependencies:
 eventlog                      i686              0.2.12-1.el6               epel               17 k
 libdbi                        i686              0.8.3-4.el6                base               39 k
 libnet                        i686              1.1.5-1.el6                epel               55 k
 
Transaction Summary
====================================================================================================
Install       5 Package(s)
 
Total download size: 583 k
Installed size: 1.7 M
Is this ok [y/N]: y

Nếu hệ thống yêu cầu import GPG key, gõ y để đồng ý
Code:
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
Importing GPG key 0x0608B895:
 Userid : EPEL (6)
 Package: epel-release-6-8.noarch (installed)
 From   : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
Is this ok [y/N]: y

Hệ thống đã cài đặt thành công syslog-ng. Nhưng chưa thể chạy được vì mặc định hệ thống đang dùng rsylog.

Cấu hình hệ thống dùng syslog-ng:
tắt rsyslog
Code:
[root@myserver ~]# chkconfig rsyslog off

Kiểm tra lại kết quả
Code:
[root@myserver ~]# chkconfig --list rsyslog
rsyslog        0:off 1:off 2:off 3:off 4:off 5:off

bật syslog-ng
Code:
[root@myserver ~]# chkconfig syslog-ng on

kiểm tra lại kết quả
Code:
[root@myserver ~]# chkconfig --list syslog-ng
syslog-ng            0:off 1:off 2:on 3:on 4:on

Stop Rsyslog
Code:
[root@myserver ~]# service rsyslog stop
Shutting down system logger:   [  OK  ]

Start Syslog-ng
Code:
[root@myserver ~]# service syslog-ng start
Starting syslog-ng:                  [  OK  ]

Cấu hình syslog-ng nhận log từ các thiết bị trong mạng:
Thêm dòng cấu hình sau vào phần cuối của file cấu hình syslog-ng /etc/syslog-ng/syslog-ng.conf:

Code:
# test log
source s_device {
        udp(ip(0.0.0.0) port(514));
        tcp(ip(0.0.0.0) port(514));
};
 
destination d_device {
        file(
                "/var/log/syslog/$HOST-$YEAR$MONTH$DAY.log"
                perm(644)
                create_dirs(yes)
        );
};
 
log { source(s_ device); destination(d_ device); };

với cấu hình trên hệ thống sẽ nhận log từ tất cả các thiết bị trong mạng với địa chỉ ip nguồn là bất kỳ, trên port 514, giao thức tcp và upd. Và sẽ đặt file log của thiết bị trong thư mục /var/log/syslog. Tên của file log sẽ được đặt dựa vào tên của máy chủ và thời gian hiện hành của hệ thống.

khởi động lại dịch vụ syslog-ng để thực hiện các thay đổi.

Code:
[root@myserver syslog-ng]# service syslog-ng restart
Stopping syslog-ng:                     [  OK  ]
Starting syslog-ng:                     [  OK  ]
 
Top