用户
搜索
  • TA的每日心情
    开心
    2017-10-9 15:27
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]偶尔看看

    SRC部落

    Rank: 7Rank: 7Rank: 7

    43

    主题

    56

    帖子

    2149

    魔法币
    收听
    0
    粉丝
    1
    注册时间
    2016-8-31

    i春秋认证SRC部落

    发表于 2017-6-7 15:52:10 54234
    本帖最后由 唯品会SRC 于 2017-6-7 16:09 编辑

    使用RSYSLOG中继和转发日志
    需求背景
    日志流转示意图
    技术原理
    配置实现
    高级参数
    日志分类存储
    根据日志类型和优先级设定发送目标
    对日志字段或内容进行过滤判断
    更多日志发送目标
    其它
    参考资料


    c4925651418d5c011c399b4e94e24e0e.jpg 需求背景
    5bdefad62c38b80917da2cbe651b4398.jpg 公司运维团队已经完成了针对分布在各个分支机构的交换机、路由器和防火墙的 syslog 日志的收集。安全基于 ISO27001和等级保护建设的需求,也希望收集此类设备的日志进行安全审计。
    虽然主流的网络和安全设备都支持同时向多个syslog 目标服务器发送日志——双发或多发;但是,为降低链路带宽占用,安全和运维就日志收集方式进行了技术讨论。最终决定放弃双发方式,而是对运维收到的日志进行转发。该方案的优点是:运维团队不需要对1000多台既有设备做任何配置变更;同时,链路上只存在一路日志收集,带宽能够得到保障。运维的日志还可以转发给多个目标,如安全、监控中心等。
    据了解,目前运维使用了 RSYSLOG 作为日志收集和存储的服务端。幸运的是RSYSLOG 支持日志中继转发这一高级功能。


    c4925651418d5c011c399b4e94e24e0e.jpg 日志流转示意图
    5bdefad62c38b80917da2cbe651b4398.jpg
    下图展现的就是本次日志收集和转发的逻辑:
    8e1ffdf499191f1187287e4f53d225d7.jpg
    关键是运维同事需要如何配置RSYSLOG才能实现转发日志给安全团队,让我们来了解下原理。


    c4925651418d5c011c399b4e94e24e0e.jpg 技术原理
    5bdefad62c38b80917da2cbe651b4398.jpg
    ”RSYSLOG is the rocket-fast system for log processing“,有什么问题请访问网站:http://www.rsyslog.com/
    按照 rsyslog.com 的说法:RSYSLOG提供高性能,极好的安全功能和模块化设计。 RSYSLOG已然从一个常规的系统日志发展成了瑞士军刀,能够接受来自各种来源的输入,也能转换和输出到各种目标系统。
    在特定处理场景下,RSYSLOG可以每秒向本地目标设备发送超过一百万条消息(基于2013年12月的第7版)。 即使发送到远程目标系统并加以更精细的处理,其性能通常被认为是“令人惊叹”的。
    来看看支持多线程、UDP、TCP、SSL、TLS、RELP、过滤器、配置输出等特点的企业级日志中继服务器 RSYSLOG 吧!
    c0e154e30f696638c53960f017fc05c9.jpg


    c4925651418d5c011c399b4e94e24e0e.jpg 配置实现
    5bdefad62c38b80917da2cbe651b4398.jpg
    要实现文章首节提出的日志转发需求,通过以下步骤可以实现。
    首先,配置/etc/rsyslog.conf文件,加载 UDP/TCP 的syslog接收模块,并设置监听端口。
    f0a6f84fd3f0279a45f287074742b2d4.jpg
    注意,如果你要需要 rsyslog 监听UDP 514端口,还需要设置 SELinux,否则该端口无法使用。
    第二步,配置日志中继转发的目标。此处举例,将日志以 syslog 方式转发到安全团队的 Logstash 日志收集代理服务器192.168.21.2。
    8fccbe9b12c5637fd1160de6deaff160.jpg
    最后,执行命令service rsyslog restart重启 rsyslog 服务,静待日志从远程设备发到 rsyslog 再中继转发到安全日志收集代理!


    c4925651418d5c011c399b4e94e24e0e.jpg 高级参数
    5bdefad62c38b80917da2cbe651b4398.jpg
    下面将介绍RSYSLOG的一些高级参数,你将看到高级参数数如何满足定制化需求的。


    c4925651418d5c011c399b4e94e24e0e.jpg 日志分类存储
    5bdefad62c38b80917da2cbe651b4398.jpg
    以下配置参数,可实现不同交换机设备IP 的日志转储到不同的日志文件。这是目前运维团队正在使用的配置。
    bfffc7c8fcf0de0d51589b09592040e9.jpg


    c4925651418d5c011c399b4e94e24e0e.jpg 根据日志类型和优先级设定发送目标
    5bdefad62c38b80917da2cbe651b4398.jpg
    除此之外,针对特定日志类型,我们还希望能转发安全日志收集代理,请参看如下配置:
    7541a87d4893bfca3de23b0de11a0ee3.jpg
    template 参数相关配置项,请参考:http://www.rsyslog.com/tag/template/


    c4925651418d5c011c399b4e94e24e0e.jpg 对日志字段或内容进行过滤判断
    5bdefad62c38b80917da2cbe651b4398.jpg
    对本机日志进行过滤
    e1b71607c9848241d6ea52db606063f1.jpg
    817058b02746d968242e12b2b99e1bad.jpg


    c4925651418d5c011c399b4e94e24e0e.jpg 更多日志发送目标
    5bdefad62c38b80917da2cbe651b4398.jpg
    日志转发到 Kafka
    208ebf130ceeb0c5d51538fc9f682ff4.jpg
    日志转发到 MySQL
    8600d68c8ec24cbd42e7dae2bb99aa91.jpg


    c4925651418d5c011c399b4e94e24e0e.jpg 其它
    5bdefad62c38b80917da2cbe651b4398.jpg
    不对特定的日志做处理。
    4d9bbe6df91032fb1ce7ee261b0a5f1e.jpg


    c4925651418d5c011c399b4e94e24e0e.jpg 参考资料
    5bdefad62c38b80917da2cbe651b4398.jpg
    RSYSLOG 的条件过滤
    请参考:http://www.rsyslog.com/doc/v8-stable/configuration/filters.html
    基于传统的severity 和 facility的过滤
    基于属性值的过滤器
    基于表达式的过滤器
    BSD-style风格过滤器(不向上兼容)
    RSYSLOG配置过程中可用的变量或属性参数:
    http://www.rsyslog.com/doc/v8-stable/configuration/properties.html
    rawmsg
    msg
    hostname
    source
    fromhost
    fromhost-ip
    syslogtag
    programname
    syslogfacility
    syslogfacility-text
    syslogseverity-text
    syslogseverity
    timestamp
    一定要参考的一篇文章
    《日志收集之rsyslog to kafka》




    精彩原创文章投稿有惊喜!
    580d9bd882d57e4c305d473cecea6d51.jpg 欢迎投稿!
    VSRC欢迎精品原创类文章投稿,优秀文章一旦采纳发布,将有好礼相送(至少为500元唯品卡)我们为您准备的丰富奖品包括但不仅限于:MacbookAir、VSRC定制雨伞,VSRC定制水杯以及VSRC精美靠枕!(活动最终解释权归VSRC所有)


    我们聆听您宝贵建议

    不知道,大家都喜欢阅读哪些类型的信息安全文章?
    不知道,大家都希望我们更新关于哪些主题的干货?
    现在起,只要您有任何想法或建议,欢迎直接回复本公众号留言!
    精彩留言互动的热心用户,将有机会获得VSRC赠送的精美奖品一份!

    同时,我们也会根据大家反馈的建议,选取热门话题,进行原创发布!




    点击阅读原文进入《唯品会信息安全培训体系》

    谢谢分享
    使用道具 举报 回复
    发表于 2017-6-8 08:33:48
    感谢楼主分享,刚刚好这这个问题我研究了一个星期都没实验成功。有以下的疑问:

    1.iptables默认会拦截514端口嘛?
    2.如何知道linux或者路由器已经发送了日志?
    个人博客:www.H0u5er.com
    使用道具 举报 回复
    发表于 2017-6-8 11:02:04
    Howe 发表于 2017-6-8 08:33
    感谢楼主分享,刚刚好这这个问题我研究了一个星期都没实验成功。有以下的疑问:

    1.iptables默认会拦截514 ...

    1.iptables 如果没有启动,就不会拦截。如果启动了,需要配置规则。
    使用道具 举报 回复
    发表于 2017-6-8 11:02:20
    Howe 发表于 2017-6-8 08:33
    感谢楼主分享,刚刚好这这个问题我研究了一个星期都没实验成功。有以下的疑问:

    1.iptables默认会拦截514 ...

    2.判断网络设备是否传递了日志,可以在 rsyslog 服务上抓包,如 tcpdump 或 iftop
    使用道具 举报 回复
    发表于 2017-6-9 21:23:47
    66666666666666
    使用道具 举报 回复
    发新帖
    您需要登录后才可以回帖 登录 | 立即注册