Linux服务器snmp协议v2/v3配置方法

2023-05-16

Snmp V2 配置方法

1、确保本机已经安装了snmp服务

[root@idc ~]# rpm -qa |grep snmp

net-snmp-libs-5.1.2-11.EL4.7

net-snmp-5.1.2-11.EL4.7

如果没有,可以使用: “yum install net-snmp” 使其自动上网下载安装。如果机器无法上网,最好使用光盘rpm包安装,一般需要安装三个文件:

vi /etc/snmp/snmpd.conf

net-snmp

lm_sensors_libs

net_snmp_libs

2、snmpd.conf文件配置vi /etc/snmp/snmpd.conf

按照如下方式修改snmpd.conf文件,修改团体名,并新增一行内容,然后保存

3、重启snmpd服务

service snmpd restart

service snmpd stop(停止)

service snmpd start(启动)

完成snmpd的配置

4、查看是否开启snmp进程

命令:ps -ef |grep 161或者ps -ef |grep snmpd

关闭防火墙

Snmp V3配置方法

CentOS7下如何配置v3版本snmpd服务

snmp v3安全级别有三种,分别为noAuthNoPriv(不认证也不加密)、authNoPriv(认证但是不加密)、authPriv(既认证又加密)

snmp v3安装

1.在centos/redhat平台下通过如下命令安装:

# yum -y install net-snmp net-snmp-devel net-snmp-utils

Snmp v3配置 【authNoPriv/authPriv

1.配置前,先使用service snmpd stop命令停止snmpd服务。不停止进行服务时行配置时,会提示“Apparently at least one snmpd demon is already running.You must stop them in order to use this command.” 。

2. 使用net-snmp-create-v3-user命令进行snmp v3配置

net-snmp-create-v3-user

Enter a SNMPv3 user name to create:

snmpuser

Enter authentication pass-phrase:

snmpv3@2020md5

Enter encryption pass-phrase:

[press return to reuse the authentication pass-phrase]

snmpv3@2020des

adding the following line to /var/lib/net-snmp/snmpd.conf:

createUser snmpuser MD5 "snmpv3@2020md5" DES snmpv3@2020des

adding the following line to /etc/snmp/snmpd.conf

rwuser snmpuser

[root@VM_Server ~]#/etc/snmp/snmpd.conf/var/lib/net-snmp/snmpd.conf

3. 启动snmpd服务

systemctl restart snmpd.service

4. snmpwalk命令验证

snmpwalk -v3 -usnmpuser -lauth -aMD5 -A"snmpv3@2020md5" -X"snmpv3@2020des" 192.168.0.121

测试oid取值:

snmpwalk -v3 -u snmpuser -a MD5 -A snmpv3@2020md5 -x DES -X snmpv3@2020des -l authPriv 192.168.0.121 .1.3.6.1.4.1.2021.4.11.0

或者用其他snmp客户端工具工具测试

net-snmp V3 怎样加一个noAuthnoPriv 级别的用户?

在/var/net-snmp/snmpd.conf中加入一行:

createUser testuser

然后在 $(PREFIX)/share/snmp/snmpd.conf中加入一行:

rouser testuser noauth

然后启动snmpd就OK了。注意:创建用户之前要先停止服务

工具测试OK

总结

snmpwalk命令分别验证3种方式

authPriv既认证又加密

snmpwalk -v3 -u snmpuser -l auth -a MD5 -A"snmpv3@2020md5" -X"snmpv3@2020des" 192.168.0.67

authNoPriv认证但是不加密

snmpwalk -v3 -u snmpuser -l authNoPriv -a MD5 -A"snmpv3@2020md5" 192.168.0.67

noAuthNoPriv不认证也不加密

snmpwalk -v3 -u testuser -l noAuthnoPriv 192.168.0.67

附:参数说明

–h:显示帮助。

–v:指定snmp的版本, 1或者2c或者3。

–c:指定连接设备SNMP密码。

–V:显示当前snmpwalk命令行版本。

–r:指定重试次数,默认为0次。

–t:指定每次请求的等待超时时间,单为秒,默认为3秒。

–l:指定安全级别:noAuthNoPriv|authNoPriv|authPriv。

–a:验证协议:MD5|SHA。只有-l指定为authNoPriv或authPriv时才需要。

–A:验证字符串。只有-l指定为authNoPriv或authPriv时才需要。

–x:加密协议:DES。只有-l指定为authPriv时才需要。

–X:加密字符串。只有-l指定为authPriv时才需要。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux服务器snmp协议v2/v3配置方法 的相关文章

  • ioctl 命令的用户权限检查

    我正在实现 char 驱动程序 Linux 并且我的驱动程序中有某些 IOCTL 命令仅需要由 ADMIN 执行 我的问题是如何在 ioctl 命令实现下检查用户权限并限制非特权用户访问 IOCTL 您可以使用bool capable in
  • 找不到包“gdk-pixbuf-2.0”

    我正在尝试在 Amazon Linux 发行版实例上构建 librsvg 我已经通过 yum 安装了大部分依赖项 其中一些在实例上启用的默认 yum 存储库中不可用 因此必须从头开始构建它们 我已经走了很远 但还停留在最后一点 跑步时sud
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • 在centos中安装sqlite3 dev和其他包

    我正在尝试使用 cpanel 在 centos 机器上安装 sqlite dev 和其他库 以便能够编译应用程序 我对 debian 比 centos 更熟悉 我知道我需要的库是 libsqlite3 dev libkrb5 dev lib
  • 如何在 Ubuntu 中创建公共 HTML 文件夹?

    简单的问题 但由于某种原因我无法在谷歌上找到确切的答案 我在 Slicehost 上安装了全新的 Ubuntu 并且想在我的主目录中为包含一堆静态 HTML 文件的简单网站创建一个公共目录 我该怎么做呢 只是打字的问题吗mkdir publ
  • 如何在linux中以编程方式获取dir的大小?

    我想通过 C 程序获取 linux 中特定目录的确切大小 我尝试使用 statfs path struct statfs 但它没有给出确切的大小 我也尝试过 stat 但它返回任何目录的大小为 4096 请建议我如何获取 dir 的确切大小
  • 如何阻止ubuntu在使用apt安装或更新软件包时弹出“Daemons using outdatedlibraries”? [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我最近新安装了 Ubuntu 22 04 LTS 我发现每次使用 apt 安装或更新软件包时 它都会询问我有关Which servic
  • 无需超级用户即可在 Linux 中打开 RAW 套接字

    我必须编写一个在 Linux 上运行的 ping 函数 语言是 C 所以 C 也可以 在网上搜索并查看源代码ping命令 事实证明我应该创建一个原始套接字 icmp sock socket AF INET SOCK RAW IPPROTO
  • GMail 421 4.7.0 稍后重试,关闭连接

    我试图找出为什么它无法使用 GMail 从我的服务器发送邮件 为此 我使用 SwiftMailer 但我可以将问题包含在以下独立代码中
  • 使用循环在 C 中管道传输两个或多个 shell 命令

    我正在尝试执行ls wc l通过 C 语言程序 而不是使用命令行 这是我当前的工作代码 int main int pfds 2 pipe pfds pid t pid fork if pid 0 The child process clos
  • 并行运行 shell 脚本

    我有一个 shell 脚本 打乱大型文本文件 600 万行和 6 列 根据第一列对文件进行排序 输出 1000 个文件 所以伪代码看起来像这样 file1 sh bin bash for i in seq 1 1000 do Generat
  • CMake 链接 glfw3 lib 错误

    我正在使用 CLion 并且正在使用 glfw3 库编写一个程序 http www glfw org docs latest http www glfw org docs latest 我安装并正确执行了库中的所有操作 我有 a 和 h 文
  • 使用 MAX_ORDER / 包含 mmzone.h

    根据https www kernel org doc Documentation networking packet mmap txt https www kernel org doc Documentation networking pa
  • 使用包管理器时如何管理 Perl 模块?

    A 最近的问题 https stackoverflow com questions 397817 unable to find perl modules in intrepid ibex ubuntu这让我开始思考 在我尝试过的大多数 Li
  • 从 Xlib 转换为 xcb

    我目前正在将我的一个应用程序从 Xlib 移植到 libxcb 但在查找有关我有时使用的 XInput2 扩展的信息时遇到了一些麻烦 libxcb 中有 XInput2 实现吗 如果是的话 在哪里可以找到文档 目前我在使用此功能时遇到问题
  • 内核的panic()函数是否完全冻结所有其他进程?

    我想确认内核的panic 功能和其他类似kernel halt and machine halt 一旦触发 保证机器完全冻结 那么 所有的内核和用户进程都被冻结了吗 是panic 可以被调度程序中断吗 中断处理程序仍然可以执行吗 用例 如果
  • 错误:“rjags”的包或命名空间加载失败

    在终端的 conda 环境之一中 我能够成功安装包 rjags 但是 当我在该环境中运行 R 并运行库 rjags 时 出现以下错误 加载所需的包 coda 错误 rjags 的包或命名空间加载失败 rjags 的 loadNamespac
  • 如何使用Android获取Linux内核的版本?

    如何在 Android 应用程序中获取 Linux 内核的版本 不是 100 确定 但我认为调用 uname r 需要 root 访问权限 无论如何 有一种不太肮脏的方法可以做到这一点 那就是 System getProperty os v
  • 检查已安装的软件包,如果没有找到则安装

    我需要检查已安装的软件包 如果未安装则安装它们 RHEL CentOS Fedora 示例 rpm qa grep glibc static glibc static 2 12 1 80 el6 3 5 i686 如何在 BASH 中进行检
  • 尽管我已在 python ctypes 中设置了信号处理程序,但并未调用它

    我尝试过使用 sigaction 和 ctypes 设置信号处理程序 我知道它可以与python中的信号模块一起使用 但我想尝试学习 当我向该进程发送 SIGTERM 时 但它没有调用我设置的处理程序 只打印 终止 为什么它不调用处理程序

随机推荐