设为首页 收藏本站
查看: 1625|回复: 0

[经验分享] 配置Linux的Syslog服务来记录Cisco路由器的日志(基本配置) .

[复制链接]

尚未签到

发表于 2018-7-20 13:26:11 | 显示全部楼层 |阅读模式
  拓扑:

  路由器的配置:
  interface Ethernet0/0
  ip address 192.168.1.2 255.255.255.0
  !
  logging 192.168.1.1
  logging facility local0          //配置日志存储的facility ,默认是local7,可以修改为其他,但推荐保存为local开头的facility里
  logging trap debugging      //配置要发送到日志服务器的日志优先级,默认发送到日志服务器的优先级为Info
  Linux服务器配置:
  1、在/var/log目录下新建Cisco.log文件
  2、在/etc/syslog.conf
  增加:
  # Cisco syslog messages
  local0.* /var/log/Cisco.log                   //配置local0优先级记录的位置
  3、在/etc/sysconfig/syslog文件
  修改:
  SYSLOGD_OPTIONS="-r -x -m 0"       //配置服务器接收来自外部的log日志消息
  4、重启Syslog服务,使新的配置生效:
  [root@localhost /]#service syslog restart
  注意:

  • Ubantu7.1的syslog文件为/etc/default/syslogd
  • Syslog服务名为sysklogd,重启Syslog服务的命令为:service sysklogd restart
附(转):配置linux syslog日志服务器
  目前,linux依旧使用syslogd作为日志监控进程,而在主流的linux发行版中依旧使用sysklog这个比较老的日志服务器套件。
一、配置文件
  默认的日志服务器就是sysklogd套件:
  主要的配置文件有两个:
/etc/sysconfig/syslog      定义syslog服务启动时可加入的参数
/etc/syslog.conf              这个是syslog服务的主要配置文件,根据定义的规则导向日志信息。
二、设置主配置文件
  /etc/syslog.conf根据如下的格式定义规则:
  facility.level action
  设备.优先级 动作
  facility.level 字段也被称为seletor(选择条件),选择条件和动作之间用空格或tab分割开。
  #号开头的是注释,空白行会自动跳过。
1、facility
  facility定义日志消息的范围,其可使用的key有:
  auth -由 pam_wdb 报告的认证活动。
  authriv -包括特权信息如用户名在内的认证活动
  cron -与 cron 和 at 有关的计划任务信息。
  daemon -与 inetd 守护进程有关的后台进程信息。
  kern -内核信息,首先通过 klogd 传递。
  lr -与打印服务有关的信息。
  mail -与电子邮件有关的信息
  mark - syslog内部功能用于生成时间戳
  news -来自新闻服务器的信息
  syslog -由 syslog 生成的信息
  user -由用户程序生成的信息
  uuc -由 uuc 生成的信息
  local0-local7 -与自定义程序使用
  * 通配符代表除了 mark 以外的所有功能
除mark为内部使用外,还有security为一个旧的key定义,等同于auth,已经不再建议使用。
2、level级别
  level定义消息的紧急程度。按严重程度由高到低顺序排列为:
  emerg -该系统不可用,等同anic                                                     (severity=0)
  alert -需要立即被修改的条件                                                           (severity=1)
  crit -阻止某些工具或子系统功能实现的错误条件                              (severity=2)
  err -阻止工具或某些子系统部分功能实现的错误条件,等同error     (severity=3)
  warning -预警信息,等同warn                                                         (severity=4)
  notice -具有重要性的普通条件                                                         (severity=5)
  info -提供信息的消息                                                                       (severity=6)
  debug -不包含函数条件或问题的其他信息                                       (severity=7)
  none -没有重要级,通常用于排错
  * 所有级别,除了none
其中,anic、error、warn均为旧的标识符,不再建议使用。
  在定义level级别的时候,需要注意两点:

  • 优先级是由应用程序在编程的时候已经决定的,除非修改源码再编译,否则不能改变消息的优先级
  • 低的优先级包含高优先级,例如,为某个应用程序定义info的日志导向,则涵盖notice、warning、err、crit、alert、emerg等消息。(除非使用=号定义)
3、selector选择条件

  • 通过小数点符号“.”把facility和level连接在一起则成为selector(选择条件)。
  • 可以使用分号“;”同时定义多个选择条件。
  • 也支持三个修饰符:
  * - 所有日志信息
  = - 等于,即仅包含本优先级的日志信息
  ! - 不等于,本优先级日志信息除外
4、action动作
  由前面选择条件定义的日志信息,可执行下面的动作:
  file-指定日志文件的绝对路径
  terminal 或 rint -发送到串行或并行设备标志符,例如/dev/ttyS2
  @host -远程的日志服务器
  username -发送信息本机的指定用户信息窗口中,但该用户必须已经登陆到系统中
  named ie -发送到预先使用 mkfifo 命令来创建的 FIFO 文件的绝对路径
  注意:

  • 不能通过“|/var/xxx.sh”方式导向日志到其他脚本中处理
5、举例
  *.info;mail.none;news.none;authriv.none;cron.none                        /var/log/messages
  #把除邮件、新闻组、授权信息、计划任务等外的所有通知性消息都写入messages文件中。
  mail,news.=info                        /var/adm/info
  #把邮件、新闻组中仅通知性消息写入info文件,其他信息不写入。
  mail.*;mail.!=info                        /var/adm/mail
  #把邮件的除通知性消息外都写入mail文件中。
  mail.=info                        /dev/tty12
  #仅把邮件的通知性消息发送到tty12终端设备
  *.alert                        root,joey
  #如果root和joey用户已经登陆到系统,则把所有紧急信息通知他们
  *.*                        @finlandia
  #把所有信息都导向到finlandia主机(通过/etc/hosts或dns解析其IP地址)
  注意:每条消息均会经过所有规则的,并不是唯一匹配的。
  也就是说,假设mail.=info信息通过上面范例中定义的规则,/var/adm/info、/var/adm/mail、/dev/tty12,甚至finalandia主机都会收到相同的信息。这样看上去比较烦琐,但可以带来的好处就是保证了信息的完整性,可供不同地方进行分析。
6、测试
  部分情况下,上述规的实际执行结果和定义的预想结果可能会有出入。这时,可使用logger程序辅助测试:
  # logger - user.notice 'Hello World!'
  日志显示:
  Nov 12 13:40:04 dc5test root: Hello World!
  其表示意思如下:
  第一列:日志产生时间
  第二列:产生此日志的主机名称
  第三列:产生此日志的应用程序或用户名称
  第四列:日志信息
7、自定义日志级别
  正如前面所说的,应用程序的日志级别是由应用程序所决定的。部分应用程序可通过配置,定义其日志级别。
  例如,/etc/ssh/sshd_config文件中就有:
  #SyslogFacility AUTH
  SyslogFacility AUTHPRIV
  #LogLevel INFO
  把sshd的日志定义在authriv.info级别。配合syslog.conf中的:
  authriv.* /var/log/secure
  则日志文件被写入/var/log/secure文件中。
  ◎我们修改为:
  SyslogFacility local0
  配合在syslog.conf中增加:
  local0.* /var/log/sshd.log
  保存后,重新启动sshd或syslog服务,则以后sshd服务的所有日志都会单独的放到sshd.log文件中了。
三、设置服务参数
  默认情况下,syslog进程是不能接受其他日志服务器发过来的消息的。而通过修改其启动参数,可实现日志的大集中功能。
  修改/etc/sysconfig/syslog文件:
  -r : 打开接受外来日志消息的功能,其监控514 UDP端口;
  -x : 关闭自动解析对方日志服务器的FQDN信息,这能避免DNS不完整所带来的麻烦;
  -m : 修改syslog的内部mark消息写入间隔时间(0为关闭),例如240为每隔240分钟写入一次“--MARK--”信息;
  -h : 默认情况下,syslog不会发送从远端接受过来的消息到其他主机,而使用该选项,则把该开关打开,所有接受到的信息都可根据syslog.conf中定义的@主机转发过去。
  通过man syslogd可获得更详细的帮助,而具体到实际配置文件为:
  SYSLOGD_OPTIONS="-r-x-m 0"
  保存后,重启服务即可:# service syslog restart
  此时,客户机只要通过修改syslog.conf,定义动作为@主机或IP,即可发送日志信息到本服务器中。
  (在构建集中的日志服务器时,请务必配合nt时间服务,以保证信息的有效性,避免不必要的麻烦)
  另外,/etc/sysconfig/syslog配置文件中,还定义有klogd服务的启动参数:
  KLOGD_OPTIONS="-x"
  详细帮助,请参考man 8 klogd或man klogd。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-539246-1-1.html 上篇帖子: Cisco 配置微软CA服务器+SCEP 下篇帖子: 用Cisco DM***构建高扩展的网络(二)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表