cisco 日志服务器设置总结

来源:互联网 发布:java简易局域网聊天 编辑:程序博客网 时间:2024/05/17 22:25

配置总结:
Unix上配置日志接收:

路由器的一些重要信息可以通过syslog机制在内部网络的UNIX主机上作日志。日志功能可通过在路由器上设定日志主机的IP地址并在相应的UNIX主机上作一些必要的设置来实现。在路由器运行过程中路由器会向日志主机发送Cisco路由器日志。日志包括链路建立失败信息包过滤日志信息等等。通过登录到日志主机系统管理员可以了解日志事件对日志进行分析。日志可以帮助管理员进行故障定位、故障排除还可以帮助管理员对网络安全进行管理。

1、在路由器上的配置,loghost loghost-ip-address 设置日志主机,show loghost  查看日志主机,no loghost 取消日志主机。例:使路由器向IP地址为202.38.160.1的UNIX工作站发送Cisco路由器日志信息Quidway(config)#loghost 202.38.160.1。

2、在UNIX主机上的配置下面的配置示例是在SunOS 4.0上完成的在其它厂商的UNIX操作系统上的配置操作基本与之相同。

第一步、以超级用户(root)的身份执行以下命令:

#mkdir /var/log/Quidway
#touch /var/log/Quidway/config
#touch /var/log/Quidway/security

第二步、以超级用户(root) 的身份编辑文件/etc/syslog.conf加入以下选择/动作组合(selector/action pairs)。

# Quidway configuration messages
local4.crit  /var/log/Quidway/config
# Quidway security messages
local5.notice /var/log/Quidway/security

注在编辑/etc/syslog.conf时应注意以下问题,注释只允许独立成行并以字符#开头。选择/动作组合之间必须以一个制表符分隔而不能输入空格。在文件名之后不得有多余的空格。

第三步、当Cisco路由器日志文件config和security建立且/etc/syslog.conf文件被修改了之后应通过执行以下命令给系统守护进程syslogd一个HUP信号来使syslogd重新读取它的配置文件/etc/syslog.conf。#ps -ae | grep syslogd147#kill -HUP 147。

进行以上操作之后路由器就可以在相应的Cisco路由器日志文件中记录信息了。 更多请看Cisco与华为技术网(Vlan9.com)路由器配置、交换机与路由器密码恢复、路由故障处理专题或进入论坛讨论。

Linux上配置日志接收:

        vi /etc/sysconfig/syslog
  把
  SYSLOGD_OPTIONS="-m 0"
  修改为
  SYSLOGD_OPTIONS="-r -m 0" //-r 从远端主机写入 -m 0 sables 'MARK' messages
  vi /etc/syslog.conf
  加入下列内容
  把设备号为local4(PIX的默认设备号)的所有的日志记录到 /var/log/router.log中
  #Save pix messages all to router.log
  local4.* /var/log/router.log
  把设备号为local5(在S8016中用info-center loghost host-ip-addr facility local-number指定)的所有的日志记录到 /var/log/router.log中
  #Save S8016 messages all to S8016.log
  local5.* /var/log/S8016.log

  生成空的日志文件
  touch /var/log/router.log
  touch /var/log/S8016.log

  然后重启syslog,就ok了
  /etc/rc.d/init.d/syslog restart
  别忘了设置防火墙规则,仅允许你的设备发送到udp/514(默认的UDP端口为514,默认的tcp端口为146

  为了避免日志过大,配置日志轮循(man logrotate 查看详细的帮助信息)
  vi /etc/logrotate.conf
  增加下列内容
  # system-specific logs may be also be configured here.
  /var/log/router.log (
   rotate 2
  }

  /var/log/S8016.log {
   weekly //每周轮循
   rotate 4 //轮循4次
  }

  配置crontab进行日志备份,如按照日期进行备份.

  如网络设备很多,可把同类的设备配置为相同的设备号
  例:more switch.log | grep X.X.X.X //查看某一设备的日志

  审核和记录系统的事件是非常重要的。如果仅仅把系统事件作为日志记录下来,而不去查看,还是无济于事。可用webadmin管理和查看日志,用logchek 自动地检查日志文件,把正常的日志信息剔除掉,把一些有问题的日志保留下来,然后把这些信息 email 给系统管理员。(稍后补充)

  网络设备配置
  PIX的配置
  logging on //打开日志
  logging host [if_name] ip_address [protocol/port] //指定日志主机
  例:logging host log 133.3.3.2
  logging trap level //指定日志消息的级别 (0:紧急(Emergencies) 1:告警(Alerts) 2:严重的(Critical) 3:错误(Errors) 4:警告(Warnings) 5:通知(Notifications) 6:信息(Informational) 7:调试(Debugging))
  logging trap 7 //把调试信息设置为Debug级,记录FTP命令和WWW的URL
  另外可用logging facility命令更改设备号,PIX默认为local4(20)
  Huawei S8016的配置( VRP(R) Software, Version 3.10(NSSA), RELEASE 5331)
  Huawei S8016 新命令行设置日志服务器
  info-center enable //打开信息中心
  inf-center loghost host-ip-addr channel 2 facility local-number
  设置日志主机的IP地址
  info-center logging host host-ip-addr
  设置日志主机的信息通道
  info-center host host-ip-addr channel {channel-number|channel-name}
  设置日志主机记录工具
  set logging host host-ip-addr facility local-number
  取消向日志主机输出信息
  undo info-center loghost host-ip-addr

  huwei S3026配置(VRP (tm) Software, Version 3.10)
  logging on
  set logging host 133.3.3.2 channel 2 language chinese facility local1
 
  Cisco 7505的配置
  logging 133.3.3.2
  logging on
  logging trap 6
  logging facility local0




配置日志信息的发送选项

日志信息通常是指Cisco IOS中,系统所产生的报警信息。其中每一条信息都分配了一个警告的级别,并携带一些说明问题或时间严重性的描述信息。默认情况下,Cisco IOS只发送日志信息到Console接口;但是日志信息发送到Console接口有时候并不方便我们储存,管理,分析日志信息,更多情况下我们选择将日志发送至路由器缓存、Cisco路由器日志服务器或者是SNMP管理终端上去。

在Cisco IOS中,日志的消息将会以如下的方式被发送到日志存储区域:%LINK-5-CHANGED: Interface Ethemet0/0, changed state to administratively down,如果为日志信息启用了时间戳和序号等附加选项,则日志信息的显示如下:000011: Feb 03 14:03:13.011:%SYS-5-CONFIGJ: Configured from console by console,Cisco IOS规定,Cisco路由器日志信息分为7个级别,每个级别都和一个严重等级相关联,级别0为最高,级别7为最低。使用logging命令后的参数,可以设置所记录的日志等级。

1. 为线路显示日志记录信息

在为线路配置显示日志信息的时候,我们需要完成两个任务:1.打开日志记录功能。2.控制日志信息在线路上的显示。默认情况下,日志信息记录只在Cisco IOS设备的Console线路上打开,希望在别的线路或者存储区域上记录日志信息,必须配置相应的属性:使用logging on命令,可以为打开日志信息并可设置将日志信息记录到其他已配置的存储区域,如Cisco路由器日志服务器和Cisco IOS设备内部缓存。

在将日志信息记录到除Console线路外的其他位置之前,必须执行该命令;同时如果要将日志信息指定存放到其他位置,可以使用logging命令的其他参数,这将会在以后的内容中做简要的介绍。如果不执行本条命令,则Cisco IOS只将日志信息记录发送至Console线路。路由器也同时允许将日志信息发送到VTY线路上,默认情况下,Cisco IOS设备是不会将日志信息发送到VTY线路上的,如果需要将日志信息发送到VTY线路,可以使用logging monitor命令将日志记录在VTY线路。

应该注意的是如果使用了本条命令,同样要求使用logging on命令打开日志记录功能。在配置路由器时,我们经常会遇到正在输入命令的时候,Cisco IOS设备将日志信息显示在正在输入的命令行中,虽然这些Cisco路由器日志消息和我们输入命令无关,但是也会为我们造成麻烦,此时我们可以通过输入logging synchronous命令将日志信息的输出、debug信息的输出同步到路由器的线路上,使之对我们输入命令不产生影响。

2. 将日志信息存储到其他存储区域

之前介绍的将日志信息发送到线路这种方式存在一个弊端,如果我们没有看到连接线路的屏幕输出,消息滚过屏幕并超出了终端软件的历史缓存,那么我们将无法在看到那些丢失的消息。为了避免这个问题,我们经常会将日志信息发送到别的存储区域,包括设备内部缓存,系统日志服务器,SNMP管理终端。

1) 将日志信息保存到log服务器

如果想将日志信息发送到设备的内部缓存中,则使用如下的命令:hostname(config)#logging buffered [buffer_size | security_level],本命令有两个参数,第一个参数是设置缓冲区的大小,范围是4096-4294967295字节。本命令第二个参数指出应该记录级别几的日志信息。通常为方便管理和处理会将网络环境内所有设备的日志集中发送到Cisco路由器日志服务器或SNMP管理终端,发送到日志服务器所使用的命令语法如下:

hostname(config)#logging on
hostname(config)#logging host {ip_address | host_name}
hostname(config)#logging trap security_level
hostname(config)#logging source-interface interface_type interface_#
hostname(config)#logging origin-id {hostname | ip | string string}
hostname(config)#logging facility facility_type

logging on命令允许将日志记录到非控制台目的地,logging host命令指定系统日志服务器的IP地址、主机名或者主机的域名。如果指定多个日志服务器的地址,设备则会多次发送日志信息到所有的日志服务器。logging trap命令指定要发送到系统日志服务器的日志消息级别。这些参数请参照之前介绍的相关内容。路由器用来到达系统Cisco路由器日志服务器的接口IP地址作为日志信息的源IP地址。当路由器的多个接口都可以到达日志服务器时,那么日志信息的源IP地址则有可能会不同。

Cisco IOS路由器支持将路由器的身份信息添加到系统日志信息的功能,这样可以基于每台设备在日志服务器上搜寻或者分离信息。该功能通过logging origin-id命令实现。身份信息可以选择hostname(使用hostname命令配置的路由器名称),ip地址(发送日志信息的接口IP地址信息),string(用来定义路由器身份信息的字符串)。logging facility命令定义在运行在UNIX的日志信息服务器上所使用的功能,日志信息则保存在该UNIX服务器上。还可以把日志信息发送到SNMP管理终端。所使用的命令如下:hostname(config)#snmp-server enable trap syslog,然后使用三个命令控制将日志信息发送到SNMP管理终端:

eg:
  logging on

        logging 133.3.3.2

  logging trap 7 //指定日志消息的级别 (0:紧急(Emergencies) 1:告警(Alerts) 2:严重的(Critical) 3:错误(Errors) 4:警告(Warnings) 5:通知(Notifications) 6:信息(Informational) 7:调试(Debugging))

        logging facility localx
       
        "X"交换机一般配置成5,路由器一般配置为4

  logging source-interface e0 //日志发出用的源ip地址

  service timestamps log datetime localtime //日志记录的时间戳设置,可根据需要具体配置

2) 将日志信息发送到SNMP管理终端

hostname(config)#logging on
hostname(config)#logging history security_level
hostname(config)#logging history size number

前面已经讨论了第一条命令。第二条命令是制定哪些严重级别的日志消息应该被发送到SNMP管理终端。严重级别可以查看之前的介绍。而默认情况下,至少一条最新的系统Cisco路由器日志消息被保存在历史表中(默认是一条信息),可以使用logging history size命令修改这个值。

eg:
  通过下面的设置来配置发送log信息到SNMP服务器上。

  第一步

  snmp-server enable traps

  第二步:设置log级别:

  logging history severity_level (1-7)

  第三步:关闭syslog捕获用下面的命令:

  no snmp-server enable traps

在PIX上启用LOG服务,并将其发送到LOG服务器上.

  一、启动log服务

  第一步:启动log logging on

  注:By default, the logging level is set to 3 (error).

  默认log的级别为3(error)

  第二步:设置log级别 logging trap severity_level (1-7)

  第三步:检查log设置 show logging

  二、测试log输出

  通过下面几个步骤测试log信息输出:

  第一步:log信息发送到console口。

  logging console 7

  quit

这个测试会产生下面的syslog信息

  111005: nobody End configuration: OK

  这个信息显示已经退出configureation mode.”111005”是该信息标识号。“nobody”指出你是通过console口登录PIX的。

  第二步:停止输送log信息到console

  no logging console 7

  quit

  三、发送syslog信息到缓存

  第一步:保存显示的信息

  logging buffered severity_level (1-7)

  第二步:查看console口上的信息

  show logging

  第三步:清除缓存中的信息以便接收查看新的信息

  clear logging

  第四步:停止发送log信息到缓存

  no logging buffered

  新的信息到列表的尾部。

  四、把log信息发送到一个telnet会话

  第一步:在PIX的内部配置一个host允许telnet到PIX

  a. 输入下面的命令:

  telnet ip_address [subnet_mask] [if_name]

  For example, if a host has the IP address 192.168.1.2, the command is:

  telnet 192.168.1.2 255.255.255.255

  b.设置一个telnet会话的空闲时间,默认为5分钟,建议值15分钟。

  telnet timeout 15

  第二步:启动一个telnet会话

  第三步:进入configuration模式

  enable

  (Enter your password at the prompt)

  configure terminal

  第四步:开始log设置

  logging monitor severity_level (1-7)

  第五步:发送log信息到该tetlnet会话

  terminal monitor

  该命令功能只发送log信息到当前telnet会话。“Logging monitor”设置所有的telnet会话参数,执行该命令后,log信息发送到每一个单独的telnet会话。

第六步:使用像ping,web访问等应用触发产生syslog信息发送到telnet 会话窗口。

  第八步:

  terminal no monitor

  no logging monitor

  五、发送syslog 信息到Syslog服务器

  使用TCP或者UCP协议发送syslog信息到一台主机,该主机必须运行一个syslog程序。有在UNIX和Windeow系统下的第三方软件。

  参考Cisco PIX防火墙和VPN的配置手册来配置syslog。可以设置log信息的发送方式,如:Email、发送到一个文件,发送到一个工作站。

  安照下面的步聚配置防火墙发送log信息到一台Syslog服务器。

  第一步:指定一台主机接收log信息

  logging host [interface] ip_address [tcp[/port] | udp[/port]] [format emblem]

  For example:

  logging host dmz1 192.168.1.5

  可以指定多台服务器来接收log信息,这样当一台服务器不在线的时候其它的服务器仍可以接收信息。

  第二步:设置log级别。

  logging trap severity_level (1-7)

  第三步:如果想在信息中包含设备的ID使用如下命令

  logging device-id {hostname | ipaddress if_name | string text}

  包含特定设备的ID(设备的名字,和特定接口的IP或者一个字串)

  六、把log信息发送到SNMP管理机

  做下面的配置工作:

  第一步:设置SNMP管理机的IP地址

  snmp-server host [if_name] ip_addr

  第二步:设备其它SNMP服务器的设置,也是必需的

  snmp-server location text

  snmp-server contact text

  snmp-server community key

  参考PIX防火墙命令解释可以获得更多的信息。


概念总结:

日志对于网络安全来说非常重要,他记录了系统每天发生的各种各样的事情,你可以通过他来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹。

Cisco是目前使用比较广泛的一种路由器,在许多行业系统中有非常普遍的应用。以下是在日常工作中积累的一些对Cisco路由器日志设置方面的经验,这些实例都在实际应用中调试通过并投入使用,我们可以利用路由器日志快速定位及排除故障。

路由器是各种信息传输的枢纽,被广泛用于企事业单位的网络建设中,承担着局域网之间及局域网与广域网之问连接的重任。

一、什么是路由器日志

路由器的一些重要信息可以通过syslog机制在内部网络的Unix主机上作日志。在路由器运行过程中,路由器会向日志主机发送包括链路建立失败信息、包过滤信息等等日志信息,通过登录到日志主机,网络管理员可以了解日志事件,对日志文件进行分析,可以帮助管理员进行故障定位、故障排除和网络安全管理。

二、路由器日志记录存放的位置

sysloqd提供下列方法供您记录系统发生的事件:

(1)指定的远端主机

如果你不将系统信息记录在本地机器上,你可以写下网络中另一个主机的名称,然后在主机名称前面加上"@"符号(例如(@)ccunix1.variox.int,但被你指定的主机上必须要有sysloqd)。这可以防止由于硬盘错误等情况使日志文件丢失。

(2)一般文件

这是最普遍的方式。你可以指定好文件路径与文件名称,但是必须以目录符号"/"开始,系统才会知道这是一个文件。例如/var/adm/maillog表示要记录到/var/adm下面一个称为maillog的文件。如果之前没有这个文件,系统会自动产生一个。

(3)指定的终端机或其他设备

你也可以将系统记录写到一个终端机或是设备上。若将系统记录写到终端机,则目前正在使用该终端机的使用者就会直接在屏幕上看到系统信息(例如/dev /conso旧或是/dev/tty1,你可以拿一个屏幕专门来显示系统信息)。若将系统记录写到打印机(例如/dev/!p0)。,则你会有一长条印满系统记录的纸,这样网络入侵者就不能修改日志来隐藏入侵痕迹。

以上就是syslog各项记录程度及记录方式的写法,可以依照自己的需求记录下自己所需要的内容。但是这些记录都是一直追加上去的,除非将文件自行删除掉,否则这些文件就会越来越大。Syslog设备是一个网络攻击者的显着目标,通过修改日志来隐藏入侵痕迹,因此我们要特别注意。最好养成每周(或更短的时间)定期检查一次记录文件的习惯,并将过期的记录文件依照流水号或是日期备份,以后查阅时也比较容易。千万不要记录下*.*,这样无论什么都被记录下来,结果会导致文件太大,要找资料时根本无法马上找出来。有人在记录网络日志时,连谁去ping他的主机都要记录,这样不仅降低系统效率而且增加了磁盘用量。

三、什么程度才记录日志

如你要系统去记录info等级的事件,则notice、err、warning、Crit、alert、emerg等在info等级以上的也会被一并记录下来。把上面所写的1、2项以小数点组合起来就是完整的"要记录哪些东西"的写法。例如mail.info表示关于电子邮件传送系统的一般性信息。auth.emerg就是关于系统安全方面相当严重的信息。Ipr.none表示不要记录关于打印机的信息(通常用在有多个纪录条件时组合使用)。另外有三种特殊的符号可供应用:

 惊叹号(!):表示不要记录目前这一等级及其上的等级。

等号(=):表示只记录目前这一等级,其上的等级不要记录。例如上面的例子,平常写下info等级时,也会把位于info等级上面的notice.err.warning、crit、alert、emerg等其他等级也记录下来。但若你写=info则就只有记录info这一等级了。

星号(*):代表某一细项中所有项目。例如mail.*表示只要有关mail的,不管什么程度都要记录下来。而*.info会把所有程度为infn的事件给记录下来。

四、syslog设备

syslog设备,它是标准Unix,的跟踪记录机制,syslog可以记录本地的一些事件或通过网络记录另外一个主机上的事件,然后将这些信息写到一个文件或设备中,或给用户发送一个信息。syslog机制主要依据两个重要的文件:/etc/syslogd(守护进程)和/etc /syslog.conf配置文件,syslogd的控制是由/etc/syslog.conf来做的。syslog.conf文件指明syslogd程序记录日志的行为,该程序在启动时查询syslog.conf配置文件。该文件由不同程序或消息分类的单个条目组成,每个占一行。对每类消息提供一个选择域和一个动作域。这些域由tab隔开(注意:只能用tab键来分隔,不能用空格键),其中选择域指明消息的类型和优先级;动作域指明sysloqd接收到一个与选择标准相匹配的消息时所执行的动作。每个选项是由设备和优先级组成。也就是说第一栏写"在什么情况下"及"什么程度"。然后用TAB键跳到下一栏继续写"符合条件以后要做什么"。当指明一个优先级时,syslogd将记录二个拥有相同或更高优先级的消息。每行的行动域指明当选择域选择了一个给定消息后应该把他发送到哪儿。

第一栏包含了何种情况与程度,中间用小数点分隔。详细的设定方式如下:

auth 关于系统安全与使用者认证;

cron关于系统自动排序执行(CronTable);

daemon 关于背景执行程序;

ken 关于系统核心;

Ipr 关于打印机;

mai1 关于电子邮件;

news 关于新闻讨论区;

syslog 关于系统记录本身;

user 关于使用者;

uucp关于UNIX互拷(UUCP)。