syslog-ng服务器介绍和搭建过程.md
1. 概述
Syslog常被称为系统日志或系统记录,是一种用来在互联网协定(TCP/IP)的网络中传递记录档讯息的标准。
Syslog主要记录路由器、交换机和防火墙等网络设备和Linux及unix服务器启动及运行的过程中产生的信息。
Linux系统都自带syslog服务端,RHEL 5系统上默认自带了syslog,RHEL 6系统升级为rsyslog,但功能都不是很强大,因此就有了syslog-ng。syslog-ng (syslog-Next generation) 是syslog的升级版,syslog-ng有两个版本,作为syslog的下一代。产品,功能是可想而知,肯定比syslog的功能强大的多,如高性能、可靠的传输、支持多平台、高可靠性、强大的日志过滤及排序、事件标签和关联性等等。
syslog-ng其官方网站是https://syslog-ng.org/
2. syslog-ng服务搭建
2.1 syslog-ng服务安装
在CentOS中我们通过yum可以直接安装
#@install epel first
yum install syslog-ng syslog-ng-libdbi -y
2.2 syslog-ng服务配置
syslog-ng的配置文件是/etc/syslog-ng/syslog-ng.conf
@version:3.2
# syslog-ng configuration file.
#global options
options {
flush_lines (0);
time_reopen (10);
log_fifo_size (1000);
long_hostnames (off);
use_dns (no);
use_fqdn (no);
create_dirs(yes);
keep_hostname (yes);
perm (0640);
dir_perm (0750);
group (root);
dir_group (root);
};
#source
source s_localhost {
file ("/proc/kmsg" program_override("kernel: "));
unix-stream ("/dev/log");
internal();
};
source s_network {
udp(ip(172.1.10.31) port(514));
tcp(ip(172.1.10.31) port(514) max-connections(333));
};
#filter
filter mail_filter { not facility(mail); };
#destination
destination d_localhost {
file ("/data/syslog-ng/$YEAR.$MONTH.$DAY/localhost/$FACILITY.log");
};
destination d_network {
file ("/data/syslog-ng/$YEAR.$MONTH.$DAY/$SOURCEIP/$FACILITY.log");
};
#logging action
log { source(s_localhost);
destination(d_localhost);
};
log { source(s_network);
filter (mail_filter);
destination(d_network);
};
注意TIPS
$SOURCEIP是源IP,不要使用$HOST,防止客户端主机名重复
create_dirs(yes)打开,否则不能自动创建目录
注意关闭rsyslog后在开启syslog-ng
由于Linux系统的mail日志较大,这里进行了过滤
3. 客户端配置
3.1 Linux配置
Linux只需要在/etc/rsyslog.conf加入以下语句,重启rsyslog服务
*.* @172.1.10.31
3.2 网络设备配置
网络设备指定syslog服务器IP地址即可,以cisco为例
logging trap warnings
!logging facility local7
logging host 172.1.10.31
4. 服务器端检查
配置完客户端后,可以在syslog-ng目录中看到自动生成的目录和文件
[root@TV-IT-SYSLOG-01 ~]#tree /data/syslog-ng/2016.07.21/
/data/syslog-ng/2016.07.21/
├── 172.1.10.22
│ ├── authpriv.log
│ ├── cron.log
│ └── local6.log
├── 172.16.201.20
│ └── local7.log
├── 172.16.201.21
│ └── local7.log
├── 172.16.201.51
│ └── local7.log
└── localhost
├── cron.log
└── syslog.log
5 directories, 8 files
[root@TV-IT-SYSLOG-01 ~]#
转载请注明:IPCPU-网络之路 » syslog-ng服务器介绍和搭建过程