需要关注一下才可以观看。灵感来源于我想知道并且查看用户登陆交换机进行了哪些操作而已。比如我想知道你登陆了交换机做了什么配置删除还是增加配置等等全部的操作命令。再比如别的同事登陆了交换机不知道做了什么配置把网络搞出问题来了你也不知道他操作了什么所以有了这个方法你就可以快速知道了然后解决问题。最简单快捷的命令就是 display history-command all-users所以你没有其他要求的话就不用往后面看了。操作环境如图所示。因为我办公室只有一根网线到弱电井的交换机所以拿来接路由器了当然你也可以直接加个傻瓜交换机然后分别再接电脑和无线路由器。其次如果你的办公室当中有多个网口到弱电井的交换机的话也是可以的原理一样的。因为我这里的服务器是接在办公室的无线路由下的所以操作的话需要在无线路由器进行二层的端口映射才可以虽然有点难度但是非常具有挑战性。这是我Zabbix的服务器版本虚拟机创建的。因为我这里的环境有限所以说只能通过虚拟机创建zabbix的服务器了。当然如果你能够直接用物理机来安装那就是最好的了。Zabbix服务器开启SSH远程登陆这样你用软件SSH远程操作就行了的再者这样可以直接复制粘贴命令行办公室的路由器进行端口映射交换机的Syslog 协议的默认端口是 UDP 514。交换机的日志配置和交换机的型号信息。info-center source default channel 4 log level informationalinfo-center loghost source Vlanif254info-center loghost 172.18.27.18这个IP地址是你zabbix服务器的IP地址。info-center timestamp log format-date全部命令解读把交换机所有模块的、常规级别以上的日志都通过 “发送到日志服务器” 的通道发出去。发送日志时我用管理 VLANVlanif254的 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 EOFmodule(loadimudp)input(typeimudp port514)if \$fromhost-ip startswith 172.18.254. then {/var/log/zabbix/huawei_switches.logstop}EOF2 创建日志目录并设置权限mkdir -p /var/log/zabbixchown zabbix:zabbix /var/log/zabbix4 重启rsyslog服务systemctl restart rsyslogZabbix服务器查看交换机的日志信息 tail -f /var/log/zabbix/huawei_switches.log测试/验证登陆交换机zabbix服务器上查看到日志信息。在交换机上随意操作比如创建VLAN修改端口VLAN保存配置等操作在zabbix服务器上都是可以看得清清楚楚的。基本上你干了什么都是有痕迹的。我在交换机上的操作12Zabbix服务器上查看日志就知道用户干了什么操作。如图所示退出的话就是按ctrl和c就可以退出日志查看了因此测试验证全部通过你可以直接知道用户对交换机进行了那些操作了。再者你也可以通过这条命令直接知道用户在交换机上干了什么。这个是最简单方便的了。dis history-command all-users在网络运维当中的话基本上网络规模稍微大一点的都是有日志服务器的当然这也是非常有必要的。用来日志审计或者是其他用途。补充一下有没有发现前面的交换机的日志信息的时间是不对的所以还要再加一条命令才可以完美。 info-center timestamp log format-dateMay 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(loadimudp)input(typeimudp port514 TimeZoneUTC)# 2. 定义输出模板格式【转换后的北京时间】 【设备IP】 【日志内容】template(nameSW_BEIJING_LOG typestringstring%timegenerated% %fromhost-ip% %msg%\n)# 3. 匹配你的交换机网段按模板写入日志文件if $fromhost-ip startswith 172.18.254. then {action(typeomfilefile/var/log/zabbix/huawei_switches.logtemplateSW_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服务器写入交换机的日志的时间。最后你如果成功了的话 你别着急全部配置上你管理的所有交换机你要考虑到你的服务器的硬盘的容量才可以的如果你也是像我一样用虚拟机的话给的硬盘容量最好 是大一些。补充一下这条命令也是可以看到交换机的用户操作命令记录的。所以说命令多样方法多样。system-viewinfo-center source SHELL channel logbuffer log level informational###开启后用户执行的每条命令都会生成带 CMDRECORD 标识的日志记录执行用户、来源 IP、命令内容等信display logbuffer | include CMDRECORD###CMDRECORD:是指命令行操作记录