如何将 kiwi syslog serverdaemon 的日志发送到mysql数据库

【收藏】Kiwi&Syslog&Daemon&――cisco
【娱乐休闲】
【生活服务】
【电脑网络】
【文体教育】
【行业部门】
文章浏览→→→【收藏】Kiwi&Syslog&Daemon&――cisco【收藏】Kiwi&Syslog&Daemon&――cisco
软件名称:Kiwi Syslog Daemon (freeware version)版本7.1.4For use on Windows 95/98/ME/NT4/2000/XP/2003下载:[url][/url]分标准版和服务版,标准版是交互式操作,服务版可以安装成服务,当下次启动可以自己默默在后台运行。kiwi自由版可以免费使用,但功能有限,不过基本的需求已经可以解决了。如果需要用完全功能的需要注册,每个licence$99&&庞大的网路中日志服务器很重要,假如主机被入侵,删除所有的系统日志,多冤枉,而日志服务器可以把所有的入侵记录如实记载,hacker再这样如入无人之地的时候可要小心。还有些设备自身的存储介质原因不可能记录海量的数据,也必须把日志转存到日志服务器上来。如果担心日志在传输中被sniffer,可以安装另外一个软件Kiwi Secure Tunnel,这样传输的日志被加密。安装过程和一般软件无异, 监听端口 默认的是tcp1468 udp514 snmp162,可以根据需要调整。我从另外的机器安装标准版后,telnet ip地址 端口 然后输入任何字符,发现均被记录,当时我就想如果把这个行为作为一个登陆脚本就可以记录服务器是否无故被重启和关机。当我仔细再看kiwi的设置才发现我的想法有点弱智,kiwi的功能非常齐全和实用。当接受到日志后会激发它的行为,默认是显示,支持的行为丰富,有:icq消息 脚本 转存其他主机 播放声音发送邮件 转存为nt事件日志,为应用日志&& 运行一个外部程序转存到ODBC(支持oracle mysql mssqlaccess)等。如果日志服务器的本地磁盘不够可以选择停止接受日志并发声音和邮件报警。支持的设备有:ciscoRouterciscoPIXcisco交换机UNIX主机3COM dlink的网络设备netscreen防火墙 Symantec防火墙和VPNFREESCO的路由器和防火墙Intertex ADSL路由HP JetDriect printer朗讯路由(太多了,我发现只要支持snmp协议和有syslog选项的设备基本都支持,当然大部分设备我没有去试验过)日志定义:DEBUG:Info useful to developers for debugging the app, not useful duringoperationsINFORMATIONAL:Normal operational messages - may be harvested for reporting,measuring throughput, etc -no action requiredNOTICE:Events that are unusual but not error conditions - might besummarized in an email todevelopers or admins to spot potential problems - no immediateaction requiredWARNING:Warning messages - not an error, but indication that an error willoccur if action is not taken,e.g. file system 85% full - each item must be resolved within agiven timeERROR:Non-urgent failures - these should be relayed to each item must beresolved within a given timeALERT:Should be corrected immediately - notify staff who can fix theproblem - example is loss ofbackup ISP connectionCRITICAL:Should be corrected immediately, but indicates failure in a primarysystem - fix CRITICALproblems before ALERT - example is loss of primary ISPconnectionEMERGENCY:A "panic" condition - notify all tech staff on call? (earthquake?tornado?) - affects multipleapps/servers/sites...-----------------------------------------------下面给两个设备配置实例:一 netscreen防火墙日志配置实例(我在ns500上亲自操作过):netscreen的flash memory只保存4096条日志,但在网络访问量大的时候根本没用,最多一两天就被后面的日志给冲掉,而且当防火墙重新启动不能保存日志。web操作步骤:1 用admin用户登陆web界面2 选择Configuration-&;ReportSettings-&;Syslog3 点击'Enable Syslog'4 假如你要把所有的传输日志全部记录,最好还要选择'Include Traffic Log'5 输入日志服务器的地址和端口(udp端口514)这个是一个叫Kevin Branch的友好提示:所有的Netscreen policies(permit/deny/tunnel)最好全部有log的默认选项,这样可以全部如实录并传送到日志服务(假如netscreen设置允许会话没有被指定拒绝)“Log Packets Terminated to Self"选项与访问netscreen的会话无关,但最好还是记录所有的会话给netscreen自己保存,否则哪怕仅仅是管理防火墙,也会显示来自Internet的消息。命令行操作步骤:1&& set syslog config ip_addresssecurity_facility2&& local_facility3 set syslog enable4 set syslog traffic5 set log module system level level destination syslog提示:当用set syslog config命令需要你定义一个安全facility(不知道怎么翻译,我理解为安全级别),你可以用set syslog命令提示选项来看 security_facility 和 local_facility。必须输入被设置的每个消息的安全层,选项如下:级别是从高到低&& emergency (紧急事件)alert &&&&&& (警报)critical &&&& (危机)error &&&&&&&&& (错误)warning &&&& (预告警)notification &&&(通知)information && (信息)二 cisco router日志配置实例:首先telnet或者用console连接到目标路由器并进入enable模式。在命令行下输入下面的命令:Config termLogging onLogging Facility Local7&&'注释:这个facility可以自己定义的Logging IP Address '注释:填写安装了Kiwi Syslog Daemon的ip地址或者主机名End&日志服务器集中负责日期的收集、分析、报告和日志安全管理,能够有效的协助系统管理人员和网络管理人员进行系统管理维护、故障定位,发现安全风险。通过日志收集代理程序收集各种平台和产品的操作系统日志、数据库日志、网络设备日志,转换成统一的格式后进行集中存储和风险,并利用预先设置的警告规则向管理员发出警告。用户可以方便的查询并生成报表、报告。安全管理员定期审阅日志,可以全面的了解网络安全形势,针对有问题的特定系统和机器采取相应措施,并将处理情况反馈领导和用户,形成一个良性循环的机制。为了便于配置各类产品的SYSLOG服务,现就网络、安全等提出参考配置。UNIX系统仅支持接受SYSLOG,下边的UNIX配置是配置SYSLOG服务将其他设备日志记录到UNIX主机的配置。2. 网络设备2.1. CISCO路由器device(config)#logging ondevice(config)#logging a.b.c.d //日志服务器的IP地址device(config)#logging facility local1 //facility标识, RFC3164规定的本地设备标识为 local0 - local7device(config)#logging trap errors //日志记录级别,可用"?"查看详细内容device(config)#logging source-interface e0 //日志发出用的源IP地址device(config)#service timestamps log datetime localtimeshow-timezone //日志记录的时间戳设置,将时间标记以MMM DDHH:MM:SS的格式添加,可根据需要具体配置device#sh logging //检验2.2. CISCO交换机IOS命令行交换机的配置:(同Cisco路由器配置一样)device(config)#logging ondevice(config)#logging a.b.c.d //日志服务器的IP地址device(config)#logging facility local1 //facility标识, RFC3164规定的本地设备标识为 local0 - local7device(config)#logging trap errors //日志记录级别,可用"?"查看详细内容device(config)#logging source-interface e0 //日志发出用的源IP地址device(config)#service timestamps log datetime localtimeshow-timezone //日志记录的时间戳设置,将时间标记以MMM DDHH:MM:SS的格式添加,可根据需要具体配置device#sh logging //检验SET命令行交换机的配置:Console& (enable) set logging server enableConsole& (enable) set logging server a.b.c.dConsole& (enable) set logging server facilitylocal5Console& (enable) set logging server severity52.3. 华为交换机Quidway(config)# logging on //开启日志系统Quidway(config)# set logging host 202.38.1.10 language English//将IP地址为202.38.1.10的主机用作日志主机,设置严重等级阈值为informational,输出语言为英文Quidway(config)# set source rstp channel 5 log levelinformationalQuidway(config)# set source ip channel 4 log levelinformational2.4. 华为路由器Quidway(config)# logging on //开启日志系统Quidway(config)# logging host a.b.c.d English//将IP地址为a.b.c.d的主机用作日志主机设置严重等级阈值为informational 输出语言为英文模式Quidway(config)#logging host&& {local | ip-address }{ emergencies | alerts | critical | errors |warningsnotifications | informational | debugging}//允许向日志主机输出带优先级的日志信息3. UNIX操作系统3.1. HP-UXBefore you can send system log messages to a UNIX syslog server,you must configure the syslog daemon on the UNIX server.Make sure that your syslogd is started with -r argument. -r, thisoption will enable the facility to receive message from the networkusing an Internet domain socket with the syslog services. Thedefault setting is not enabled.Step 1 Add a line such as the following to the file/etc/syslog.conf:user.debug /var/log/myfile.log--------------------------------------------------------------------------------Note There must be five tab characters between user.debug and/var/log/myfile.log. Refer to entries in the /etc/syslog.conf filefor further examples.--------------------------------------------------------------------------------Step 2 Create the log file by entering these commands at the UNIXshell prompt:$ touch /var/log/myfile.log$ chmod 666 /var/log/myfile.logStep 3 Make sure the syslog daemon reads the new changes byentering this command:$ kill -HUP Qcat /etc/syslog.pid3.2. IBM AIX跟HP和SUN的类似。3.3. SUN Solaris配置示例是在SunOS 4.0 上完成的在其它厂商的Unix 操作系统上的配置操作基本与之相同部分命令细节上的差异请参考各自的命令手册。(1) 以root 超级用户的身份执行以下命令# mkdir /var/log/Quidway# touch /var/log/Quidway/config# touch /var/log/Quidway/security(2) 以root 的身份编辑文件/etc/syslog.conf 加入以下选择/动作组合selector/action pairs# Quidway configuration messagesLocal4.crit /var/log/Quidway/config说明:在编辑/etc/syslog.conf 时应注意以下问题:注释只允许独立成行并以字符#开头,选择/动作组合之间必须以一个制表符分隔而不能输入空格,在文件名之后不得有多余的空格。(3) 当建立了日志文件config 和security 且/etc/syslog.conf文件被修改了之后应通过执行以下命令给系统守护进程Syslogd 一个HUP 信号来使Syslogd重新读取它的配置文件/etc/syslog.conf# ps -ae | grep syslogd147# kill -HUP 147进行以上操作之后路由器就可以在相应的日志文件中记录信息了。说明:综合配置Facility 设备名称Severity 严重等级阈值Filter 过滤器,及syslog.conf文件可以进行相当细致的分类从而达到信息筛选的目的。4. Linux操作系统用vi命令编辑 /etc/sysconfig/syslog,把 SYSLOGD_OPTIONS="-m 0" 修改为SYSLOGD_OPTIONS="-r -m 0" 然后重新启动syslog 进程 /etc/rc.d/init.d/syslogrestartvi 编辑/etc/rc.conf中添加syslogd_enable="yes"5. 安全设备5.1. CISCO PIX防火墙pix(config)#logging onpix(config)#logging host in_if_name a.b.c.dpix(config)#logging message level levelid5.2. Netscreen防火墙set syslog config a.b.c.d auth/sec local0set syslog vpnset syslog enable5.3. 天融信防火墙天融信“网络卫士”系列防火墙都配有专门的日志服务器和审计软件,这里所描述的防火墙日志是指通过防火墙查看日志,日志的内容是暂存在防火墙上的。日志所包含的内容没有专门的日志服务器所提供的内容详细,但也能供用户对通过防火墙的信息及对防火墙的操作做一个大致的了解,同时能为用户查找攻击者提供重要的信息。所属分类:→&&&&作者:新浪博客&&&&时间: 0:00:00
All Right Reservedtrackbacks-0
这几天需要通过syslog-ng接受多台远程主机程序的日志,并按一定格式写入数据库。假如远程主机过来的数据是
&data1&,&data2&,&data3&
需要把data1,data2,data3分别存储到数据库log下的table表的a,b,c字段中。只需要通过以下三步
1、修改/etc/syslog-ng/syslog-ng.conf,添加
source s_remote {
#按需要填写
destination d_mysql{
program("/usr/bin/mysql -uroot -p log & /var/log/mysql.pipe");
pipe("/var/log/mysql.pipe"
template("INSERT INTO table(a, b, c)
VALUES($MSGONLY);\n") template-escape(no));
source(s_remote);
# filter();
destination(d_mysql);
2、建立mysql.pipe文件按
#mkfifo /var/log/mysql.pipe
3、重新启动syslog-ng
service syslog-ng restart
PS:由于远程服务器过来的log数据太多,过一段时间就会发现很多记录收到了但没有进入mysql数据库,重启syslog-ng就又可以写数据。最终只能通过把数据写入文本,再用程序读取文本把数据写入数据库。
阅读(...) 评论()怎么搭建Linux syslog服务器抓思科交换机的日志?
求具体步骤!
按投票排序
利用Rsyslog保存Cisco 交换机日志文件
我现在正在摸索中
kiwi这个windows平台下的我就觉得够用了
已有帐号?
无法登录?
社交帐号登录LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构。基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案。
LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的日志并保存到服务端该目录下,一种是读取后保存到日志服务器数据库中,推荐使用后者。
LogAnalyzer 采用php开发,所以日志服务器需要php的运行环境,本文采用LAMP。
二、系统环境
Rsyslog Server OS:CentOS 6.5
Rsyslog Server IP:192.168.1.107
Rsyslog 版本:rsyslog-5.8.10-8.el6.i686
LogAnalyzer 版本:LogAnalyzer 3.6.5 (v3-stable)
LAMP 版本:httpd-2.2.15-30.el6.centos.i686 + mysql-5.1.73-3.el6_5.i686 + php-5.3.3-27.el6_5.i686
防火墙已关闭/iptables: Firewall is not running.
SELINUX=disabled
Rsyslog Client OS:RHEL 6.4
Rsyslog Client IP:192.168.1.108
三、安装并设置LAMP环境
3.1 安装LAMP环境
# yum -y install httpd mysql* php*
3.2 启动服务并加入开机启动
启动Apache
# /etc/init.d/httpd start
# chkconfig httpd on
启动数据库
# /etc/init.d/mysqld start
# chkconfig mysqld on
3.3 设置MySQL root 密码
# mysqladmin -uroot password 'abc123'
3.4 测试php运行环境
# cd /var/www/html/
[root@TS html]# cat & index.php &&EOF & &?php
& phpinfo();
打开浏览器访问:
LAMP环境配置完毕。
四、检查并安装服务器端软件
4.1 检查是否安装了rsyslog软件
# rpm -qa|grep rsyslog&&& //默认系统都安装了该软件
4.2 安装rsyslog 连接MySQL数据库的模块
# yum install rsyslog-mysql &y
rsyslog-mysql 为rsyslog 将日志传送到MySQL 数据库的一个模块,这里必须安装。
五、配置服务器端
5.1 导入rsyslog-mysql 数据库文件
# cd /usr/share/doc/rsyslog-mysql-5.8.10/
# mysql -uroot -pabc123 & createDB.sql
查看做了哪些操作
# mysql -uroot &p
导入数据库操作创建了Syslog 库并在该库中创建了两张空表SystemEvents 和SystemEventsProperties。
5.2 创建rsyslog 用户在mysql下的相关权限
# mysql -uroot &p
mysql& grant all on Syslog.* to
identified by '123456';
mysql& exit
5.3 配置服务端支持rsyslog-mysql 模块,并开启UDP服务端口获取网内其他LINUX系统日志
# vi /etc/rsyslog.conf
$ModLoad ommysql
*.* :ommysql:localhost,Syslog,rsyslog,123456
在 #### MODULES #### 下添加上面两行。
说明:localhost 表示本地主机,Syslog 为数据库名,rsyslog 为数据库的用户,123456为该用户密码。
5.4 开启相关日志模块
# vi /etc/rsyslog.conf
$ModLoad immark&&& #immark是模块名,支持日志标记
$ModLoad imudp&&& #imupd是模块名,支持udp协议
$UDPServerRun 514&&& #允许514端口接收使用UDP和TCP协议转发过来的日志
5.5 重启rsyslog 服务
# /etc/init.d/rsyslog restart
六、配置客户端
6.1 检查rsyslog 是否安装
# rpm -qa|grep rsyslog
6.2 配置rsyslog 客户端发送本地日志到服务端
# vi /etc/rsyslog.conf
*.* @192.168.1.107
行尾新增上面这行内容,即客户端将本地日志发送到服务器。
6.3 重启rsyslog 服务
# /etc/init.d/rsyslog restart
6.4 编辑/etc/bashrc,将客户端执行的所有命令写入系统日志/var/log/messages中。
# vi /etc/bashrc
在文件尾部增加一行
export PROMPT_COMMAND='{ msg=$(history 1 | { echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'
设置其生效
# source /etc/bashrc
客户端配置完毕。
七、测试Rsyslog Server是否可以正常接受Client端日志
Client 端测试:
Server 端侦测:
说明接收正常,包括你重启机器的一些Log都可以查看到。
八、安装LogAnalyzer
# tar zxf loganalyzer-3.6.5.tar.gz
# cd loganalyzer-3.6.5
# mkdir -p /var/www/html/loganalyzer
# rsync -a src/* /var/www/html/loganalyzer/
九、在浏览器安装向导中安装LogAnalyzer
9.1 打开浏览器访问:
提示没有配置文件,点击 here 利用向导生成。
9.2 第一步,测试系统环境
点击 &Next&,进入第二步。
提示错误:缺少config.php 文件,并且权限要设置为666,可以使用contrib目录下的configure.sh 脚本生成。
查看configure.sh 文件内容
需要在/var/www/html/loganalyzer/ 下创建config.php 文件,并设置其权限为666。
# touch /var/www/html/loganalyzer/config.php
# chmod 666 /var/www/html/loganalyzer/config.php
做完上面的操作之后,执行 ReCheck 操作,config.php 文件可写,点击 Next 进入下一步。
9.3 第三步,基础配置
在User Database Options 中,填入上面设置的参数,然后点击 Next.
9.4 第四步,创建表
点击 Next 开始创建表。
9.5 第五步,检查SQL结果
9.6 第六步,创建管理用户
9.7 第七步,创建第一个系统日志source.
9.8 第八步,完成
LogAnalyzer 首页
点击任何一条记录,查看详情。
查看Statistics
在Admin Center 里可以进行一些系统设置。
Rsyslog + LogAnalyzer 日志服务器部署完毕。
David Camp
技术交流,请加QQ群:系统运维技术分享Ⅳ:
给我写信:mchina_
我们永远相信,分享是一种美德 |&We Believe, Great People Share Knowledge...
阅读(...) 评论()

我要回帖

更多关于 kiwi syslog server 的文章

 

随机推荐