Ubuntu20.04安装SNMP服务

在线安装snmp

1.安装snmp服务

sudo apt-get install update
sudo apt-get install snmp snmpd snmp-mibs-downloader

在这里插入图片描述

2.重启SNMP服务

sudo /etc/init.d/snmpd restart

在这里插入图片描述

3.查看snmp配置

sudo grep -Ev '^$|^#' /etc/snmp/snmpd.conf 

在这里插入图片描述

离线安装SNMP (重要)

我的需求是:我在内网的容器中缺少某个包,我在外网有相同的环境,此时我需要使用外网相同环境下载所需包和依赖,然后导入内网进行离线安装。

1.下载SNMP离线包

首先上传SNMP依赖包到Ubuntu系统里面

sudo apt-get --download-only -o=dir::cache=/path/to/download/directory install <package-name>
#/path/to/download/directory表示包的存储地址

存储路径:/data2023/snmp/
依赖包:snmp snmpd snmp-mibs-downloader

sudo apt-get --download-only -o=dir::cache=/data2023/snmp/ install snmp snmpd snmp-mibs-downloader

2.安装snmp deb文件
然后将包导入不联网的环境后,进入deb所在文件夹,使用如下命令安装
cd snmp/archives

dpkg -i --force-depends *.deb

–force-depends选项将会忽略依赖关系的错误,并继续安装。

修改配置文件(重要)

1.检查snmpwalk工具

snmpwalk -h

2.修改snmp配置文件

编辑配置文件snmpd.conf

sudo vim /etc/snmp/snmpd.conf

注释:agentaddress 127.0.0.1,[::1]
使用 agentAddress udp:161,udp6:[::1]:161

#  Listen for connections on all interfaces (both IPv4 *and* IPv6)
agentAddress udp:161,udp6:[::1]:161

在这里插入图片描述

修改view视图 和 团体号,public@123是团体号

view   systemonly  included   .1

rocommunity  public@123 default -V systemonly
rocommunity6 public@123 default -V systemonly

在这里插入图片描述

#查看状态
sudo /etc/init.d/snmpd status  

# 启动snmp
sudo /etc/init.d/snmpd start

# 重启snmp
sudo /etc/init.d/snmpd restart

在这里插入图片描述

systemctl命令

# 开机自启动
sudo systemctl enable snmpd

# 查看状态
sudo systemctl status snmpd

3.本地测试snmp

snmpwalk -v2c -c public@123 127.0.0.1

在这里插入图片描述

sudo netstat -antup | grep 161

在这里插入图片描述

<think>好的,我现在需要帮助用户了解如何在Ubuntu上离线安装SNMP。首先,我得回想一下SNMP是什么以及它的作用。SNMP是简单网络管理协议,用于监控和管理网络设备。离线安装意味着用户无法直接从网络下载包,所以需要处理依赖关系。 首先,用户需要获取SNMP安装包及其所有依赖项。通常在线安装的话,用apt-get install snmp就行,但离线情况下,必须手动下载deb包。用户可能需要另一台有网络的Ubuntu机器,使用apt download命令获取snmp包以及依赖的包,比如libsnmp-base、libsnmp40等。这里要注意系统版本和架构是否一致,否则包可能不兼容。 接下来,用户需要将下载的deb包传输到目标离线机器,可能用U盘或者内部网络。然后,使用dpkg -i命令安装这些包。不过,安装顺序可能会有依赖问题,可能需要按照特定顺序安装,或者使用dpkg -R来批量安装目录下的所有包,但如果有循环依赖可能需要手动处理。 另外,安装完成后需要配置SNMP。用户可能需要编辑/etc/snmp/snmpd.conf文件,设置社区名、权限等。然后重启snmpd服务,用systemctl restart snmpd,并确保服务开机启动。最后,测试SNMP是否正常工作,可以用snmpwalk命令查询本地代理。 在思考过程中,我需要确保步骤清晰,避免遗漏关键点,比如依赖项的处理和配置文件的修改。同时,提醒用户注意版本匹配和权限问题。可能遇到的问题包括依赖缺失、配置错误导致服务无法启动,或者防火墙阻止访问。需要给出相应的解决建议,比如检查日志、验证配置语法、关闭防火墙测试等。 总结下来,步骤大致是:准备离线环境下载包,传输到目标机器,安装所有依赖,配置SNMP,启动服务并测试。同时,需要强调安全设置,比如修改默认社区名,限制访问IP等,避免安全风险。</think>在Ubuntu系统中离线安装SNMP(Simple Network Management Protocol)需要以下步骤,分为准备依赖包、传输安装包和配置服务三个阶段: --- ### **一、准备工作:下载离线包** 在另一台联网的Ubuntu机器上操作(需与目标系统版本相同): ```bash # 创建存放依赖包的目录 mkdir snmp-offline cd snmp-offline # 下载snmp及其依赖包(需root权限) sudo apt-get download snmp snmpd libsnmp40 libsnmp-base ``` --- ### **二、将安装包传输到离线机器** 1. 将 `snmp-offline` 文件夹通过U盘、内部网络共享等方式复制到离线Ubuntu机器 2. 在离线机器上进入该目录: ```bash cd /path/to/snmp-offline ``` --- ### **三、安装所有依赖包** ```bash # 批量安装目录下所有.deb文件 sudo dpkg -i *.deb # 若提示依赖问题,可尝试强制安装(慎用) sudo dpkg -i --force-all *.deb ``` --- ### **四、配置SNMP服务** 1. 修改配置文件: ```bash sudo nano /etc/snmp/snmpd.conf ``` 2. 找到以下行并修改(示例配置): ```bash # 设置只读社区名(建议修改默认值) rocommunity public 127.0.0.1 # 允许远程访问(可选) agentAddress udp:161,udp6:[::1]:161 # 添加系统信息监控 view systemonly included .1.3.6.1.2.1.1 ``` --- ### **五、启动服务并验证** 1. 启动SNMP服务: ```bash sudo systemctl restart snmpd sudo systemctl enable snmpd ``` 2. 测试本地查询: ```bash snmpwalk -v 2c -c public localhost .1.3.6.1.2.1.1.1 ``` --- ### **六、常见问题处理** - **依赖缺失**:在联网机器上通过 `apt-cache depends snmp` 查看完整依赖树 - **服务启动失败**:检查日志 `journalctl -u snmpd` - **防火墙拦截**:开放UDP 161端口: ```bash sudo ufw allow 161/udp ``` --- ### **安全建议** 1. 将 `public` 替换为自定义社区名 2. 通过 `agentAddress` 限制监听IP 3. 使用 `rocommunity`/`rwcommunity` 限制访问范围 > 通过以上步骤即可完成离线环境下的SNMP安装及基础配置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会飞的土拨鼠呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值