㈠ java怎么解析syslog服务器的日志
设置定时任务 定时到其他机器去取 比如 ftp 登陆后 get 或者其他机器主动 put到syslog主机就可以了
㈡ 在windows上怎么用syslog服务器获取rsyslog日志
rsyslog 权限源;
默认
[root@dr-mysql01 zjzc_log]# ls -ltr zj-frontend0*-access*27
-rw------- 1 root root 322 Sep 27 07:55 zj-frontend02-access.2016-09-27
600
$FileOwner elk
$FileGroup elk
$FileCreateMode 0755
$DirCreateMode 0755
$Umask 0022
修改后:
[root@dr-mysql01 zjzc_log]# ls -ltr zj-frontend0*-access*27
-rwxr-xr-x 1 elk elk 10558 Sep 27 07:58 zj-frontend02-access.2016-09-27
㈢ 如何向syslog服务器发送日志
您好,很高兴为您解答。
参考一下:http://wenku..com/link?url=OsDiB-_Gmk2cGkEs6bsKQZ2E_
如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】
希望我的回答对您有所帮助,望采纳!
~ O(∩_∩)O~
㈣ 如何使用syslog向服务器协议
Syslog是一种工业标准的协议,可用来记录设备的日志。
Ubuntu下安装syslog apt-get install inetutils-syslogd
这里面的三个函数openlog, syslog, closelog是一套系统日志写入接口。另外那个vsyslog和syslog功能一样,只是参数格式不同。
通常,syslog守护进程读取三种格式的记录消息。此守护进程在启动时读一个配置文件。一般来说,其文件名为/etc/syslog.conf,该文件决定了不同种类的消息应送向何处。例如,紧急消息可被送向系统管理员(若已登录),并在控制台上显示,而警告消息则可记录到一个文件中。该机制提供了 syslog函数,其调用格式如下
#include <syslog.h>
void openlog (char*ident,int option ,int facility);
void syslog(int priority,char*format,……)
void closelog();
调用openlog是可选择的。如果不调用openlog,则在第一次调用syslog时,自动调用openlog。调用closelog也是可选择的,它只是关闭被用于与syslog守护进程通信的描述符。调用openlog 使我们可以指定一个ident,以后, 此ident 将被加至每则记录消息中。ident 一般是程序的名称(例如 ,cron ,ine 等)
程序的用法示例代码如下:
#include <syslog.h>
int main(int argc, char **argv)
{
openlog("MyMsgMARK", LOG_CONS | LOG_PID, 0);
syslog(LOG_DEBUG,
"This is a syslog test message generated by program '%s'\n",
argv[0]);
closelog();
return 0;
}
编译生成可执行程序后,运行一次程序将向/var/log /message文件添加一行信息如下:
Feb 12 08:48:38 localhost MyMsgMARK[7085]: This is a syslog test message generated by program './a.out'
syslog函数及参数
syslog函数用于把日志消息发给系统程序syslogd去记录,此函数原型是:
void syslog(int priority, const char *format, ...);
第一个参数是消息的紧急级别,第二个参数是消息的格式,之后是格式对应的参数。就是printf函数一样使用。
如果我们的程序要使用系统日志功能,只需要在程序启动时使用openlog函数来连接 syslogd程序,后面随时用syslog函数写日志就行了。
下面介绍在RedHat和ubuntu中如何配置它:
Ubuntu和红帽常使用它,并且通过文件/etc/rsyslog.conf进行管理。文件中包含许多指定的特殊系统日志:有的是控制台方面的,有的是文件方面或其它主机的。
首先,我们需要载入合适的TCP和UDP插件以支持接收系统日志。把下面的代码添加到rsyslog.conf的头部:
$modload imtcp
$modload imudp
$InputTCPServerRun 10514
$UDPServerRun 514
载入的这两个模块能支持监听TCP和UDP的端口,并且指定哪个端口来接受事件,在这种情况下,使用TCP的10514端口和UDP的514端口。你需要确认一下本地防火墙(在你的主机和中央系统日志服务器之间的防火墙)
下面我们需要指定一些规则来告诉rSyslog在哪放输入事件。如果你不添加任何规则,输入事件将按照本地的规则进行处理,并且与本地主机的事件交织在一起。我们需要在上面添加节之后和本地处理系统日志之前来正确的指定这个规则,例如:
if $fromhost-ip isequal '192.168.0.2' then /var/log/192.168.0.2.log
& ~
这里我们说的每一个来自于192.168.0.2的系统日志都应该保存在/var/log/192.168.0.2.log文件中。&~这个符号是非常重要的,因为它告诉rSyslog将停止处理消息。如果你把它忘写了,消息将越过下一个规则,并且继续处理。在这一规则中还有其他的变量。例如:
if $fromhost-ip startswith '192.168.' then /var/log/192.168.log
& ~
这里我们用192.168.*替代了以这个为开始的所有IP地址,写入到/var/log/192.168.log文件中。你还可以看到一些其它的过滤。
你将需要重启这个rsyslog服务来激活我们所做的新的配置:
$ sudo service rsyslog restart
现在,对于发送方的主机,我们还需要对文件rsyslog.conf进行一些更改,在文件的头部,添加下面这行:
*.* @@192.168.0.1:10514
这是发送的所有事件,来自于所有源代码和所有重要级别(用*.*),通过TCP协议传给IP地址为192.168.0.1的10514端口。你可是用你所在环境的地址来替换这个IP地址。要启用此配置,你将需要重启主机上的rSyslog。
你可以通过SSL/TLS更进一步地发送你的系统日志。如果你在互联网上或其它网络间传输系统日志,这也没什么坏处,你可能会发现这个的简单说明。
现在,如果给你的配置管理系统(如果不使用这个,你可以试一试Puppet或Cfengine工具)添加这个配置,然后,您可以用适当的系统日志来有效地配置每台主机,以确保你的日志将被发送到中央系统日志服务器。
㈤ 如何搭建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
#chkconfig 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的用户
㈥ 如何在windows服务器中使用syslog功能
无论是Unix、Linux、FreeBSD、Ubuntu,还是路由器、交换机,都会产生大量的日志,而这些,一般会以syslog的形式存在。在RFC 3164中定义了syslog是一种日志协议,syslog数据包的大小为1024字节,包含Facility, Severity, Hostname, Timestamp和Message信息。syslog服务器默认使用UDP 514号端口。简单的说,syslog可以告诉管理员:谁(Facility),什么时间(Timestamp),什么地方(Hostname)做了什么事情(Message),以及这个事情的重要性(Severity)。
Syslog中的Facility就是谁,它可以是操作系统的内核,邮件服务,Web服务器,打印机等等。RFC 3164 定义用数字来表示不同的Facility,其中16-18可为自定义的(比如Cisco就用local4发送PIX防火墙的syslog,用local7发送3000VPN集中器的syslog),具体如下:
Integer Facility
0 Kernel messages
1 User-level messages
2 Mail system
3 System daemons
4 Security/authorization messages
5 Messages generated internally by Syslogd
6 Line printer subsystem
7 Network news subsystem
8 UUCP subsystem
9 Clock daemon
10 Security/authorization messages
11 FTP daemon
12 NTP subsystem
13 Log audit
14 Log alert
15 Clock daemon
16 Local use 0 (local0)
17 Local use 1 (local1)
18 Local use 2 (local2)
19 Local use 3 (local3)
20 Local use 4 (local4)
21 Local use 5 (local5)
22 Local use 6 (local6)
23 Local use 7 (local7)
Syslog中的Severity表示事情的重要性,具体如下。
Integer Severity
0 Emergency: System is unusable.
1 Alert: Action must be taken immediately.
2 Critical: Critical conditions.
3 Error: Error conditions.
4 Warning: Warning conditions.
5 Notice: Normal but significant condition.
6 Informational: Informational messages.
7 Debug: Debug-level messages.
Windows有自己的日志协议,称为Event Log。为什么不建立一台中心Syslog服务器来接受所有的Windows,Linux,网络设备等等发送来的日志呢?这样你可以轻松地在一台日志服务器上管理所有的日志。
Windows操作系统本身是可以产生很多日志的,如每次插拔U盘、服务的重启等,都会产生日志,这些信息会记录在操作系统中,如果我们想集中管理,怎么办?Windows操作系统本身并不支持把日志发送到SYSLOG服务器去,但是我们就没办法了?
Evtsys是用C写的程序,提供发送Windows日志到syslog服务器的一种方式。它支持Windows Vista和Server 2008,并且编译后支持32和64位环境。它被设计用于高负载的服务器,Evtsys快速、轻量、高效率。并可以作为Windows服务存在。
http://code.google.com/p/eventlog-to-syslog/ 查看并获取最新更新。值得称道的是,程序仅仅有几十KB大小!
下载Evtsys后,将其复制到系统目录,XP下是Windows\system32目录。然后在CMD下执行:
evtsys.exe -i -h 192.168.1.101 -p 514
这个是标准格式,亦可精简为:
evtsys -i -h 192.168.1.101
参数说明:
i是安装成Window服务;
h是syslog服务器地址;
p是syslog服务器的接收端口。
默认下,端口可以省略,默认是514.
启动Evtsys服务,命令是:
net start evtsys
查看Windows的“服务”,发现在原本Event Log服务下面增加了一个“Eventlog to Syslog”,并且已经启动.
打开windows组策略编辑器 (开始->运行 输入 gpedit.msc)
在windows设置-> 安全设置 -> 本地策略 ->审核策略 中,打开你需要记录的windows日志。evtsys会实时的判断是否有新的windows日志产生,然后把新产生的日志转换成syslogd可识别的格式,通过UDP 3072端口发送给syslogd服务器。
另外一个工具是SNARE,SNARE for Windows是一款让你很容易的把Windows(NT/2000/XP/2003等,亦支持64位系统)事件日志实时转发到SYSLOG服务器的程序,并且无论是32位还是64位系统,只有一个安装包,也可以配置静默安装模式,当然这个需要您自己去看文档了。
SNARE支持安全日志、应用日志、系统日志,同时支持DNS、文件复制服务、活动目录(Active Directory)日志等。
下载: http://sourceforge.net/projects/snare/files/Snare%20for%20Windows/
配置: 下载下来的文件是SnareForWindows-4.x.x.x-MultiArch.exe这样的,基本上只需要Next就可以安装完毕。然后开始菜单中InterSect Alliance下面有三个子项:
Disable Remote Access to Snare for Windows:禁止Snare的远程管理
Restore Remote Access to Snare for Windows:恢复Snare的远程管理
Snare for Windows:程序配置界面,选择后在浏览器打开http://localhost:6161/地址,然后选择左侧菜单的Network Configuration选项
Free WhatsUp Syslog Server – 免费 Syslog Server 何处寻? 在这里!!
Syslog daemon for Windows Eventlog
㈦ 如何使用postman对syslog协议接口测试
postman仅支持http协议,不支持这个协议,可以考虑使用jmeter。jmeter支持的协议多,也可以自己扩展。
㈧ linux下如何发送syslog到相应的服务器
修改syslog对应的配置文件 /etc/syslog.conf 或者 /etc/rsyslog.conf
可以根据syslog配置文件模板内部的提示,修改日志指向外部服务器。
启动syslog服务进程。
㈨ 路由器上的“Syslog服务器”是干什么的,有什么用处
日志服务器。
日志就是记录我们做过的一些操作。
比如你敲入接口UP 或DOWN的命令,就会出现一条日志。提示接口打开或关闭。
我们一般用LOGGING SYN来同步命令和日志。
㈩ 如何将Linux主机设置成syslog服务器
鸟哥在书中介绍了这样的一种环境。 办公室内有10台Linux主机,每一台负责一个网络服务。为了无需登录每台主机去查看登录文件,需要设置一台syslog服务器,其他主机的登录文件都发给它。这样做的话,只需要登录到syslog服务器上就能查看所有主机的登录文件。 RedHat上的设置方法,鸟哥已经介绍了。 【服务器端】step 1:查看服务器是否开启了UDP 514端口 grep '514' /etc/services step 2:修改syslogd的启动设置文件/etc/sysconfig/syslog 将SYSLOGD_OPTIONS="-m 0"修改成SYSLOGD_OPTIONS="-m 0 -r" step 3:重启syslogd服务 /etc/init.d/syslog restart 重启后,你会发现UDP 514端口已经打开。 Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
udp 0 0 0.0.0.0:514 0.0.0.0:* 5628/syslogd 【客户端】step 1:在/etc/syslog.conf中,添加下行。 user.* @192.168.0.Y # syslog服务器的IP地址 在Ubuntu中配置syslogd服务器的方法类似。 step 1:查看服务器是否开启了UDP 514端口,有下面一行说明端口514被打开,没有需要加入 # grep '514' /etc/services 184:shell 514/tcp cmd # no passwords used
185:syslog 514/udp step 2: 修改/etc/init.d/sysklogd,将SYSLOGD=""修改成SYSLOGD=" -r" step 3: 修改/etc/default/syslogd,将SYSLOGD=""修改成SYSLOGD=" -r" step 4: 重启服务 /etc/init.d/sysklogd restart step 5: 验证 在/var/log/messages中找到 May 1 23:31:59 flagonxia-desktop syslogd 1.5.0#5ubuntu3: restart (remote reception) # netstat -tlunp 得到syslogd服务正在监听端口514 udp 0 0 0.0.0.0:514 0.0.0.0:* 3912/syslogd step 6: 假设syslog服务器的IP地址:192.168.1.25,在其他主机上的/etc/syslog.conf中加入 *.* @192.168.1.25 注:/etc/syslog.conf文件的解析日志文件按/etc/syslog.conf 配置文件中的描述进行组织。下图是/etc/syslog.conf 文件的内容:[root@localhost ~]# cat /etc/syslog.conf
# Log all kernel messages to the console.
# Logging much else clutters up the screen.
#kern.* /dev/console
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none /var/log/messages
# The authpriv file has restricted access.
authpriv.* /var/log/secure
# Log all the mail messages in one place.
mail.* -/var/log/maillog
# Log cron stuff
cron.* /var/log/cron
# Everybody gets emergency messages
*.emerg *# Save news errors of level crit and higher in a special file.
uucp,news.crit /var/log/spooler
# Save boot messages also to boot.log
local7.* /var/log/boot.log
syslog.conf 行的基本语法是: [ 消息类型][ 处理方案] 注意:中间的分隔符必须是Tab 字符!消息类型是由" 消息来源" 和" 紧急程度" 构成,中间用点号连接。例如上图中,news.crit 表示来自news 的“ 关键” 状况。在这里,news是消息来源,crit 代表关键状况。通配符* 可以代表一切消息来源。 说明:第一条语句*.info ,将info 级以上(notice,warning,err,crit,alert 与emerg )的所有消息发送到相应日志文件。日志文件类别(按重要程度分类)日志文件可以分成八大类,下面按重要性从大到下列出:emerg emergency ,紧急alert 警报crit critical ,关键errerror ,错误warning 警告notice 通知info 信息debug 调试简单列一下消息来源auth 认证系统,如login 或su ,即询问用户名和口令cron 系统执行定时任务时发出的信息daemon 某些系统的守护程序的 syslog ,如由in.ftpd 产生的log
kern 内核的信息lpr 打印机的信息mail 处理邮件的守护进程发出的信息mark 定时发送消息的时标程序news 新闻组的守护进程的信息user 本地用户的应用程序的信息uucp uucp 子系统的信息* 表示所有可能的信息来源处理方案" 处理方案" 选项可以对日志进行处理。可以把它存入硬盘,转发到另一台机器或显示在管理员的终端上。处理方案一览:文件名 写入某个文件,要注意绝对路径。 @ 主机名 转发给另外一台主机的syslogd 程序。@IP 地址 同上,只是用IP 地址标识而已。/dev/console 发送到本地机器屏幕上。* 发送到所有用户的终端上。 | 程序 通过管道转发给某个程序。例如:kern.emerg /dev/console( 一旦发生内核的紧急状况,立刻把信息显示在控制台上) 说明: 如果想修改syslogd 的记录文件,首先你必须杀掉syslogd 进程,在修改完毕后再启动syslogd 。攻击者进入系统后通常立刻修改系统日志,因此作为网管你应该用一台机器专门处理日志信息,其他机器的日志自动转发到它上面,这样日志信息一旦产生就立刻被转移,这样就可以正确记录攻击者的行为。