Zabbix之华为交换机的日志记录信息操作详细教程

需要关注一下,才可以观看。

灵感来源于:我想知道并且查看用户登陆交换机进行了哪些操作而已。比如我想知道你登陆了交换机做了什么配置,删除还是增加配置等等全部的操作命令。再比如别的同事登陆了交换机不知道做了什么配置,把网络搞出问题来了,你也不知道他操作了什么,所以有了这个方法你就可以快速知道了,然后解决问题。

最简单快捷的命令就是 display history-command all-users 所以你没有其他要求的话就不用往后面看了。

操作环境,如图所示。因为我办公室只有一根网线到弱电井的交换机,所以拿来接路由器了,当然你也可以直接加个傻瓜交换机然后分别再接电脑和无线路由器。其次如果你的办公室当中有多个网口到弱电井的交换机的话,也是可以的,原理一样的。因为我这里的服务器是接在办公室的无线路

由下的,所以操作的话,需要在无线路由器进行二层的端口映射才可以,虽然有点难度,但是非常具有挑战性。

这是我Zabbix的服务器版本,虚拟机创建的。

因为我这里的环境有限,所以说只能通过虚拟机创建zabbix的服务器了。当然如果你能够直接用物理机来安装那就是最好的了。Zabbix服务器开启SSH远程登陆,这样你用软件SSH远程操作就行了的,再者这样可以直接复制粘贴命令行

办公室的路由器进行端口映射,交换机的Syslog 协议的默认端口是 UDP 514。

交换机的日志配置和交换机的型号信息。

info-center source default channel 4 log level informational

info-center loghost source Vlanif254

info-center loghost 172.18.27.18 这个IP地址是你zabbix服务器的IP地址。

info-center timestamp log format-date

全部命令解读:

把交换机所有模块的、常规级别以上的日志,都通过 "发送到日志服务器" 的通道发出去。

发送日志时,我用管理 VLAN(Vlanif254)的 IP 地址作为 "发件人地址",这样日志服务器能知道是那个交换机发的。

把日志发给 IP 地址为 172.18.27.18 的服务器

设置交换机日志的时间戳格式。 后面有说明!!!

注意: 华为交换机最多支持配置 8 个不同的 Loghost 可以同时向多个服务器发送日志 添加另外一个服务器的话就再填写那个服务器的IP地址就行了的。所以如果你原本的交换机上有配置了的话,你直接添加上去你的服务器的IP地址就行了,不用删除别人配置的。

Zabbix服务器安装 网络工具包

yum install -y net-tools nmap-ncat tcpdump nc --version #验证安装成功

代码的话,你们直接复制粘贴的话可能是会报错的,因为格式不一样的。所以你复制或者是截图给AI让他给你生成就可以直接复制使用了的。

1 创建rsyslog配置文件

cat > /etc/rsyslog.d/huawei_switch.conf << EOF

module(load="imudp")

input(type="imudp" port="514")

if \$fromhost-ip startswith "172.18.254." then {

/var/log/zabbix/huawei_switches.log

stop

}

EOF

2 创建日志目录并设置权限

mkdir -p /var/log/zabbix

chown zabbix:zabbix /var/log/zabbix

4 重启rsyslog服务

systemctl restart rsyslog

Zabbix服务器查看交换机的日志信息 tail -f /var/log/zabbix/huawei_switches.log

测试/验证

登陆交换机

zabbix服务器上查看到日志信息。

在交换机上随意操作,比如创建VLAN,修改端口VLAN,保存配置,等操作,在zabbix服务器上都是可以看得清清楚楚的。基本上你干了什么都是有痕迹的。

我在交换机上的操作

1

2

Zabbix服务器上查看日志就知道用户干了什么操作。

如图所示

退出的话,就是按ctrl和c就可以退出日志查看了

因此测试验证全部通过,你可以直接知道用户对交换机进行了那些操作了。

再者你也可以通过这条命令直接知道用户在交换机上干了什么。这个是最简单方便的了。

dis history-command all-users

在网络运维当中的话,基本上网络规模稍微大一点的都是有日志服务器的,当然这也是非常有必要的。用来日志审计或者是其他用途。

补充一下,有没有发现前面的交换机的日志信息的时间是不对的?所以还要再加一条命令才可以完美。 info-center timestamp log format-date

May 25 17:40:21 Zabbix 服务器写入日志的本地时间 May=五月

2026-5-25 09:40:21 交换机发送的原始 Syslog 时间戳(UTC 时间)

原因如图所示

再挣扎一下

vi /etc/rsyslog.d/huawei_switch.conf

代码如下:

1. 加载UDP模块,监听514端口,声明收到的日志是UTC时间

module(load="imudp")

input(type="imudp" port="514" TimeZone="UTC")

2. 定义输出模板,格式:【转换后的北京时间】 【设备IP】 【日志内容】

template(name="SW_BEIJING_LOG" type="string"

string="%timegenerated% %fromhost-ip% %msg%\n"

)

3. 匹配你的交换机网段,按模板写入日志文件

if $fromhost-ip startswith "172.18.254." then {

action(

type="omfile"

file="/var/log/zabbix/huawei_switches.log"

template="SW_BEIJING_LOG"

)

stop

}

如果你的交换机的管理网段不是172.18.254.0/24的话,那么你就改代码当中的#3里面的IP地址就行了的。

重启 rsyslog服务 systemctl restart rsyslog

清空历史日志,只看新的 echo "" > /var/log/zabbix/huawei_switches.log

服务器查看日志:

tail -f /var/log/zabbix/huawei_switches.log

交换机上的时间跟服务器上的日志时间是一致的,所以只能达到这种的效果了。但是这里的日志的日期是交换机上的,所以如果你的交换机的日期不对的话,所以日志的日期也会跟着不对的。所以要配置NTP时间同步才可以。介意的话你就用前面的方法就行了,不用改了。可以看到交换机上的时间和zabbix服务器写入交换机的日志的时间。

最后你如果成功了的话, 你别着急全部配置上你管理的所有交换机,你要考虑到你的服务器的硬盘的容量才可以的,如果你也是像我一样用虚拟机的话,给的硬盘容量最好 是大一些。

相关推荐
stolentime1 小时前
FreeDomain 本地开发环境快速搭建指南
运维·服务器·网络
向量引擎1 小时前
从零起步,如何打造专属向量引擎 API 中转工作流?
java·服务器·前端
z200509302 小时前
【Linux学习】Linux中的进程程序替换
linux·服务器·学习
ytdbc2 小时前
OSPF综合实验
网络
kaisun643 小时前
Docker 构建网络问题排查
网络·docker·eureka
lihao lihao4 小时前
软硬链接
linux·运维·服务器
TOWE technology4 小时前
智能安防监控系统如何做好防雷?——视频信号SPD综合应用方案解析
运维·服务器·防雷产品·信号保护·信号防雷·spd
雪度娃娃4 小时前
存储器层次结构——磁盘硬盘存储
服务器·网络·数据库·计算机组成原理
YUANQIANG20244 小时前
通信领域进行蒙特卡洛仿真的思路和步骤
网络