仙人掌中的SNMP检测不到服务器

登录有问题的服务器
1.检测snmp

localhost:~ # ps -ef|grep snmp

root 55180 1 0 08:37 ? 00:00:08 /usr/sbin/snmpd -r -A -LF n /var/log/net-snmpd.log -p /var/run/snmpd.pid

root 58436 53989 0 09:44 pts/0 00:00:00 grep --color=auto snmp
2.检测端口

localhost:~ # netstat -nlup|grep 161

udp 0 0 0.0.0.0:161 0.0.0.0:* 55180/snmpd
3.查看连接

localhost:~ # netstat -anp|grep snmpd

tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN 55180/snmpd

udp 0 0 0.0.0.0:161 0.0.0.0:* 55180/snmpd
4.检测防火墙SuSEfirewall2

localhost:~ # systemctl status SuSEfirewall2

Unit SuSEfirewall2.service could not be found.
5.查看防火墙进程

localhost:~ # ps -ef |grep fire

root 55442 1 0 08:51 ? 00:00:00 /usr/bin/python3 /usr/sbin/firewalld --nofork --nopid

root 55524 55352 0 09:08 pts/0 00:00:00 grep --color=auto fire

原来使用了firewalld服务,查看策略

localhost:~ # firewall-cmd --list-all

public (active)

target: default

icmp-block-inversion: no

interfaces: eth0

sources:

services: dhcpv6-client ssh

ports: 80/tcp 22/tcp 161/tcp

protocols:

forward: no

masquerade: no

forward-ports:

source-ports:

icmp-blocks:

rich rules:

原因在于后来加的防火墙策略中端口设置错误,snmp使用UDP
6.添加防火墙策略

localhost:~ # firewall-cmd --add-port=161/udp --permanent

success
7.重启防火墙

localhost:~ # systemctl restart firewalld
8.客户端使用snmpwalk检测

root@Cnyunwei \~\]# snmpwalk -v 2c -c mygroup 192.168.10.20 可以看到可以仙人掌中服务器的snmp服务正常了。 注:如果使用SuSEfirewall2,需要修改 /etc/sysconfig/中的配置然后重新启动。 FW_SERVICES_EXT_UDP="161" systemctl restart SuSEfirewall2

相关推荐
落羽的落羽15 小时前
【C++】深入浅出“图”——最短路径算法
java·服务器·开发语言·c++·人工智能·算法·机器学习
之歆15 小时前
Linux系统管理与运维基础
linux·运维·服务器
Maynor99615 小时前
OpenClaw 第2章:环境搭建
运维·人工智能·飞书
人间打气筒(Ada)15 小时前
SQL Server 之创建和管理数据表
运维·服务器·数据库·windows·sql语句·sql server·windows server
China_Yanhy15 小时前
入职 Web3 运维日记 · 第 13 日:洗钱风云 —— 链上合规 (KYT) 与多签钱包的权力游戏
运维·web3
网云工程师手记15 小时前
防火墙安全区域划分规范与接口配置实操指南
运维·服务器·网络·安全·网络安全
猫头虎15 小时前
猫头虎AI分享:[转载]2025 年 HAMi 社区年度回顾 | 从 GPU 调度器到云原生 AI 基础设施的中流砥柱
运维·人工智能·云原生·开源·gateway·github·ai编程
Howrun77715 小时前
Linux_UDP聊天服务器
linux·服务器·udp
心本无晴.15 小时前
ClawdBot:从桌面自动化到个人AI助手的进化之路
运维·人工智能·自动化
RisunJan15 小时前
Linux命令-lsof(列出所有进程打开的所有资源)
linux·服务器