各位老铁们好,相信很多人对syslog日志服务器都不是特别的了解,因此呢,今天就来为大家分享下关于syslog日志服务器以及如何搭建syslog日志服务器的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
一、如何在windows服务器中使用syslog功能
方法/步骤:
1.首先根据自己的windows系统的版本(32/64位),在网上相应的版本。我的系统为64位版本,因此64位版本;
2.然后将后的软件内的两个文件evtsys.dll和evtsys.exe,拷贝到系统内c:\windows\system32目录下;
3.这一步找到命令提示符,右击选择以管理员身份运行。详细操作如下图所示;
4.在操作窗口内,首先输入cdc:\windows\system32命令进入c:\windows\system32目录下,然后执行命令evtsys–i–h 192.168.2.104。下面详细介绍evtsys命令参数意思。
-i表示安装成系统服务
-h指定log服务器的IP
如要设置端口,在IP后加上自己要设置的端口就可以了。ip与端口之间要有空格隔开。默认不写端口为514端口。
执行完以上命令后,evtsys已经安装成功,且已经成功注册到服务列表。
5.在开始->运行输入 gpedit.msc。进入windows本地组策略编辑器,在该窗口内,选择Windows设置->安全设置。打开你需要记录的windows日志。evtsys会实时的判断是否有新的windows日志产生,然后把新产生的日志转换成syslogd可识别的格式,通过UDP 514端口发送给syslogd服务器;
6.启动服务。在以管理员身份运行的命令提示符窗口内,执行命令: start evtsys即可启动服务。接下来进行测试是否发送成功;
7.打开syslogwatcher进行相应的设置,设置端口为514端口,接受字符码为:UTF-8码。然后listen。进行监听514端口。查看是否有windows日志发出。
为测试效果明显,可以重启安装evtsys的机器。(本次安装syslogwatcher与evtsys不在同一台机器,便于测试)。
如重启安装evtsys的机器仍未看到日志。则通过以下几点进行排除。
1.确认接收日志端的系统防火墙已经关闭。
2.确认安装evtsys的机器,是否已经启动该服务,如未启动,在服务列表启动。
二、syslog方式发送日志时缺省所用的协议和端口号是哪个
UDP514。
Syslog使用的端口号是UDP514,当使用Syslog方式发送日志时,需要指定Syslog服务器的IP和端口号,如果未指定端口号,则使用默认值,如果使用的是TCP协议,则需要指定TCP的端口号。
Syslog常被称为系统日志或系统记录,是一种用来在互联网协议(TCP/IP)的网上中传递记录档消息的标准。
三、日志采集方式 SNMP TRAP 和 Syslog 的区别
文本方式
在统一安全管理系统中以文本方式采集日志数据主要是指邮件或FTP方式。邮件
方式是指在安全设备内设定*或通知条件,当符合条件的事件发生时,相关情况被一一记录下来,然后在某一时间由安全设备或系统主动地将这些日志信息以邮件
形式发给邮件接受者,属于被动采集日志数据方式。其中的日志信息通常是以文本方式传送,传送的信息量相对少且需专业人员才能看懂。而FTP方式必须事先开
发特定的采集程序进行日志数据采集,每次连接都是完整整个日志文本文件,网络传输数据量可能非常大,属于主动采集日志数据方式。
随着网络高速的发展,网络内部以百兆、千兆甚至万兆互联,即使采取功能强大的计算机来处理日志数据包的采集工作,相对来说以上两种方式速度和效率也是不尽人意。因此,文本方式只能在采集日志数据范围小、速度比较慢的网络中使用,一般在网络安全管理中不被主要采用。
SNMP
trap方式
建立在简单网络管理协议SNMP上的网络管理,SNMP
TRAP是基于SNMP MIB的,因为SNMP MIB
是定义了这个设备都有哪些信息可以被收集,哪些trap的触发条件可以被定义,只有符合TRAP触发条件的事件才被发送出去。人们通常使用 SNMP
Trap
机制进行日志数据采集。生成Trap消息的事件(如系统重启)由Trap代理内部定义,而不是通用格式定义。由于Trap机制是基于事件驱动的,代理只有在监听到故障时才通知管理系统,非故障信息不会通知给管理系统。对于该方式的日志数据采集只能在SNMP下进行,生成的消息格式单独定义,对于不支持
SNMP设备通用*不是很强。
网络设备的部分故障日志信息,如环境、SNMP访问失效等信息由SNMP
Trap进行报告,通过对 SNMP数据报文中 Trap
字段值的解释就可以获得一条网络设备的重要信息,由此可见管理进程必须能够全面正确地解释网络上各种设备所发送的Trap数据,这样才能完成对网络设备的
信息监控和数据采集。
但是由于网络结构和网络技术的多样*,以及不同厂商管理其网络设备的手段不同,要求网络管理系统不但对公有
Trap能够正确解释,更要对不同厂商网络设备的私有部分非常了解,这样才能正确解析不同厂商网络设备所发送的私有
Trap,这也需要跟厂商紧密合作,进行联合技术开发,从而保证对私有 Trap
完整正确的解析和应用。此原因导致该种方式面对不同厂商的产品采集日志数据方式需单独进行编程处理,且要全面解释所有日志信息才能有效地采集到日志数据。
由此可见,该采集在日常日志数据采集中通用*不强。
syslog方式
已成为工业标准协议的系统日志
(syslog)协议是在加里佛尼亚大学伯克立软件分布研究中心(BSD)的TCP/IP
系统实施中开发的,目前,可用它记录设备的日志。在路由器、*机、服务器等网络设备中,syslog记录着系统中的任何事件,管理者可以通过查看系统记
录,随时掌握系统状况。它能够接收远程系统的日志记录,在一个日志中按时间顺序处理包含多个系统的记录,并以文件形式存盘。同时不需要连接多个系统,就可
以在一个位置查看所有的记录。syslog使用UDP作为传输协议,通过目的端口514(也可以是其他定义的端口号),将所有安全设备的日志管理配置发送
到安装了syslog软件系统的日志服务器,syslog日志服务器自动接收日志数据并写到日志文件中。
另外,选用以syslog方式采集日志数据非常方便,且具有下述原因:
第一,Syslog
协议广泛应用在编程上,许多日志函数都已采纳
syslog协议,syslog用于许多保护措施中。可以通过它记录任何事件。通过系统调用记录用户自行开发的应用程序的运行状况。研究和开发一些系统程
序是日志系统的重点之一,例如网络设备日志功能将网络应用程序的重要行为向 syslog
接口呼叫并记录为日志,大部分内部系统工具(如邮件和打印系统)都是如此生成信息的,许多新增的程序(如tcpwrers和SSH)也是如此工作
的。通过syslogd(负责大部分系统事
件的守护进程),将系统事件可以写到一个文件或设备中,或给用户发送一个信息。它能记录本地事件或通过网络记录到远端设备上的事件。
第二,当今网络设备普遍支持syslog协议。几乎所有的网络设备都可以通过syslog协议,将日志信息以用户数据报协议(UDP)方式传送
到远端服务器,远端接收日志服务器必须通过syslogd监听UDP端口514,并根据
syslog.conf配置文件中的配置处理本机,接收访问系统的日志信息,把指定的事件写入特定文件中,供后台数据库管理和响应之用。意味着可以让任何
事件都登录到一台或多台服务器上,以备后台数据库用off-line(离线)方法分析远端设备的事件。
第三,Syslog
协议和进程的最基本原则就是简单,在协议的发送者和接收者之间不要求严格的相互协调。事实上,syslog信息的传递可以在接收器没有被配置甚至没有接收器的情况下开始。反之,在没有清晰配置或定义的情况下,接收器也可以接收到信息。
四、路由器上的“Syslog服务器”是干什么的,有什么用处
是用来作日志服务器使的。很多大型的网站都把系统的日志文件保存在单独的服务器上面,这些服务器不提供、浏览,只是在后台默默的保存其他服务器的日志信息。
启用这个功能以后,本地路由会把当前主机A当做一台日志服务器来使用,如果其他机器开启了远程日志存储功能,那么其他机器中各种日志信息会通过路由保存到主机A上来,而不是保存在本机。
五、如何搭建syslog日志服务器
首先我们知道日志是什么,日志毫无疑问就跟我们写日记一样记录我们每天做的一些事情,那么日志对于一台服务器而言是至关重要的,比如说我们搭建服务的时候,服务起不来也没提示错误信息,那么这个时候就可以查看日志来排错了,还记录了服务器的运行情况已经*记录等等...,那么我们知道一台服务器的日志默认是存放在本地的对于linux而言日志一般存放于/var/log/目录下,比如说某系统管理员管理着几十甚至上百台服务器的时候,默认日志放在每台服务器的本地,当我们每天要去看日志的时候一台一台的看日志是不是要郁闷死了.没关系在linux系统上提供了一个syslogd这样的一个服务为我们提供日志服务器,他可以将多台主机和网络设备等等的日志存到日志服务器上,这样就大大减少了管理员的工作量,下面将在一台默认装有rhel5.x的系统上搭建一台日志服务器.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
系统环境:默认安装有rhel5.8的系统
主机角色 IP
server1日志服务器 10.0.0.1
server2 10.0.0.2
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
实际上日志服务器的配置非常之简单几条命令就搞定了
一.配置日志服务器为网络中其他主机及其网络设备等等提供日志存储服务,也就是配置server1
1.在server1上编辑/etc/sysconfig/syslog文件修改如下
#vim/etc/sysconfig/syslog##只修改SYSLOGD_OPTINOS这项,如下
SYSLOGD_OPTIONS="-m 0-r"
2.重新启动syslog
#service syslog restart
3.配置防火墙,syslog传送日志的端口是UDP的514端口防火墙在默认的情况下是阻止所有的,这里就把防火墙关闭了,防火墙的配置就不介绍了
#service iptables stop
#cconfig iptables off
ok!到这里服务器的配置基本就结束了.
二.配置server2让其将日志发送到日志服务器上去,我们知道windows跟*机路由器都是有日志产生的,它们的日志也是可以存储到日志服务器上去的,这里就只介绍linux主机的
1.配置server2上的/etc/syslog.conf定义日志的类型以及日志的级别和日志存放的位置,这里就只简单的介绍下大体的配置思路,
#vim/etc/syslog.conf
*.*@10.0.0.1
上面的配置表示所有的日志类型.所有的日志的级别的日志都将存放在10.0.0.1这台日志服务器上
2,重启syslog
#service syslog restart
三.验证
1.在server2上建一个redhat的用户,然后到server1上的/var/log/secure文件或者/var/log/messages文件查看日志
#cat/var/log/secure
Jun 8 00:58:05 10.0.0.2 useradd[15463]: new group: name=redhat, GID=500
Jun 8 00:58:05 10.0.0.2 useradd[15463]: new user: name=redhat, UID=500, GID=500, home=/home/redhat, shell=/bin/bash
可以看到10.0.0.2这台主机new了一个redhat的用户