无可救药的牛 发表于 2021-3-12 10:51
  
果然是高手在民间,楼主帖子写的不错,很有参考价值,还想看更多精彩分享,期待楼主下一篇好帖!
伊利丹·怒风 发表于 2021-3-12 11:39
  
感谢楼主无私分享 学习学习
七罪 发表于 2021-3-12 14:05
  
楼主分享的案例很实用,具有典型性,希望有更多这样的干货供我们学习参考,非常感谢!
新手780102 发表于 2021-3-20 20:20
  
楼主的文章图文并茂,清晰易懂
新手517842 发表于 2021-3-26 11:04
  

感谢楼主无私分享 学习学习
新手486484 发表于 2021-7-6 00:04
  
感谢楼主无私分享,学习学习              
玉米 发表于 2021-7-6 00:10
  
感谢楼主无私分享,学习学习              
一个无趣的人 发表于 2021-9-21 13:46
  
楼主分析的很详细,不错的实战经验,小白用户一看就懂,非常好的技术干货帖,顶一个!
吴尔奇 发表于 2023-2-9 09:18
  
每日一个小知识,感谢分享!
#原创分享#防火墙无法配置发送到多个syslog服务器的解决方案
  

Byte 59587人觉得有帮助

{{ttag.title}}
本帖最后由 Byte 于 2021-2-25 17:19 编辑

1. 环境说明
1.1 需求说明
由于新增一套态势感知系统,需要将防火墙的日志发送到态势感知之中,然后又需要将日志保存在之前搭建的syslog日志服务器中。但是防火墙设置syslog服务器的时候无法设置多个syslog服务器,这样就没办法把一份日志发送到2个设备中了。

为了满足这个需求,我们需要搭建一个rsyslog,通过配置rsyslog,使得成为一台日志中继的服务器,防火墙发送日志到这个rsyslog中继服务器,然后再通过这台服务器发送到2个设备中。
此方法适用于某公司各种syslog日志服务器只能填写单个的产品

1.2环境说明(IP以虚构IP做演示)
  • rsyslog日志中继服务器操作系统:Centos7
  • rsyslog日志中继服务器IP:5.5.5.5
  • NGAF-01 IP:3.3.3.3   版本7.5.1
  • 第三方日志平台IP:1.1.1.1
  • 第三方态势感知IP:2.2.2.2




1.3 拓扑
                                                    |----------》第三方日志平台
NGAF01---------》rsyslog------  |                                               
                                                    |----------》第三方态势感知
                                                                        
2. 安装rsyslog
  1. cd /etc/yum.repos.d/
  2. wget http://rpms.adiscon.com/v8-stable-nightly/rsyslog-nightly.repo
  3. yum install rsyslog
复制代码

具体安装参考官网

3. 配置Rsyslog中继

3.1 配置接收日志方式(日志输入方式)
编辑/etc/rsyslog.conf,配置日志接收的方式,根据自身需求删掉对应的#号。
这边是用udp 514端口进行日志接收。
如果要用udp非514端口,记得要关掉selinux。
  1. #使用udp进行日志接收
  2. # Provides UDP syslog reception
  3. $ModLoad imudp
  4. $UDPServerRun 514

  5. #使用tcp进行日志接收
  6. # Provides TCP syslog reception
  7. #$ModLoad imtcp
  8. #$InputTCPServerRun 514
复制代码


3.2 配置日志转发方式(日志输出方式)
编辑/etc/rsyslog.conf,在文件末尾添加如下内容
  1. #发送所有日志到1.1.1.1的udp 514端口
  2. *.* @1.1.1.1:514
  3. #发送所有日志到2.2.2.2的tcp 514端口
  4. *.* @@2.2.2.2:514
复制代码

PS:如果要按源设备的IP进行区分的话可以按照下面的方式修改
  1. #收到3.3.3.3设备发送过来的日志 转发到1.1.1.1的514端口
  2. :fromhost-ip, isequal,"3.3.3.3"  @1.1.1.1:514
  3. #收到4.4.4.4设备发送过来的日志 转发到2.2.2.2的514端口
  4. :fromhost-ip, isequal,"4.4.4.4"  @2.2.2.2:514
复制代码

4. 设置rsyslog自启与放行端口

上面配置修改配置文件后,重启rsyslog且设置服务开机自启
  1. systemctl restart rsyslog
  2. systemctl enable rsyslog
复制代码

放行udp 514端口,当然你也可以把防火墙都关了
  1. firewall-cmd --zone=public --add-port=514/udp --permanent
  2. firewall-cmd --reload
复制代码

5. NGAF 配置syslog

根据自己的需求在NAAF里面把日志传送到syslog里面

image-20210222225322660.png

6.其他

6.1 NGAF syslog修改主机名称
在配置转发后,对端接收到的日志发送IP就是我这台日志中继的IP不是防火墙的IP地址。且日志内容主机名写的是localhost,不是防火墙配置的设备名称。这样对端的话比较不好区分源日志是谁发出来的。

通过咨询泉州办的技术,通过修改底层脚本,把原本的localhost修改为具体的设备名称。这样日志发送过去后,就可以通过日志内容去判断具体是哪台设备发送的日志了。

image-20210225164335287.png



image-20210225164144025.png
(修改前的日志内容)
image-20210225164658564.png
(修改后的日志内容)
6.2  保存日志到rsyslog
如果想转发日志且又要保存日志到这台rsyslog服务器的时候。我们可以编辑配置文件/etc/rsyslog.conf 新增配置
  1. #所有所有日志保存到/var/log/主机IP/主机IP-年-月-日.log
  2. #%fromhost-ip%:为发送日志过来的IP
  3. *.*   "/var/log/%fromhost-ip%/%fromhost-ip%_%$YEAR%-%$MONTH%-%$DAY%.log"
复制代码

7.总结

整个过程简单点说就是。

日志输入方式:通过udp或TCP 514端口输入,

日志输出方式:文件(6.2保存日志到文件),或者其他syslog服务器(3.2转发日志)。

当然在输出之前也可以对日志内容做一些判断或者过滤后再进行输出。具体可以参考官方文档:https://www.rsyslog.com/doc/v8-stable/configuration/filters.html

打赏鼓励作者,期待更多好文!

打赏
9人已打赏

发表新帖
热门标签
全部标签>
每日一问
技术盲盒
技术笔记
干货满满
功能体验
GIF动图学习
新版本体验
标准化排查
信服课堂视频
2023技术争霸赛专题
产品连连看
自助服务平台操作指引
秒懂零信任
技术咨询
安装部署配置
技术晨报
深信服技术支持平台
答题榜单公布
卧龙计划
答题自测
通用技术
排障笔记本
畅聊IT
网络基础知识
社区帮助指南
专家问答
技术圆桌
在线直播
MVP
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
纪元平台
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

396
135
63

发帖

粉丝

关注

本版达人

新手61940...

本周建议达人

BGP网络

本周分享达人

BGP网络

本周提问达人