SNMP是管理网络设备的一种标准协议,它通过管理信息库(MIB)来获取设备的状态信息,并可以通过简单网络管理协议(SNMP)将这些信息传递给监控系统。在Linux系统中,SNMP代理程序是需要启动的,以便监控系统可以获取相关信息。本文将介绍linux snmp自启动的实现方法。
成都创新互联专注于宜兴网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供宜兴营销型网站建设,宜兴网站制作、宜兴网页设计、宜兴网站官网定制、成都小程序开发服务,打造宜兴网络公司原创品牌,更为您提供宜兴网站排名全网营销落地服务。
SNMP代理程序
在Linux系统中,SNMP代理程序一般是使用Net-SNMP软件包提供的。通过如下命令可以安装Net-SNMP软件包:
“`
sudo apt-get install snmpd
“`
安装完成后,SNMP代理程序会默认启动,可以通过如下命令确认是否启动:
“`
sudo service snmpd status
“`
如果SNMP代理程序没有启动,可以使用如下命令启动:
“`
sudo service snmpd start
“`
SNMP代理程序的配置文件位于/etc/snmp/snmpd.conf。在该文件中可以配置SNMP代理程序的行为、安全策略等内容。需要注意的是,修改配置文件后需要重启SNMP代理程序才能生效。
自启动脚本
为了实现Linux SNMP代理程序的自启动,我们需要编写一个自启动脚本并将其保存在/etc/init.d/目录下。下面是一个示例脚本:
“`
#!/bin/sh
### BEGIN INIT INFO
# Provides: snmpd
# Required-Start: $local_fs $network $syslog
# Required-Stop: $local_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: SNMP daemon
# Description: SNMP (Simple Network Management Protocol) daemon
### END INIT INFO
PATH=/in:/usr/in:/bin:/usr/bin
NAME=snmpd
DAEMON=/usr/in/$NAME
DESC=”SNMP daemon”
test -x $DAEMON || exit 0
set -e
case “$1” in
start)
echo -n “Starting $DESC: $NAME”
start-stop-daemon –start –quiet –exec $DAEMON
echo “.”
;;
stop)
echo -n “Stopping $DESC: $NAME”
start-stop-daemon –stop –quiet –exec $DAEMON
echo “.”
;;
reload)
echo -n “Reloading $DESC configuration…”
start-stop-daemon –stop –signal HUP –quiet –exec $DAEMON
echo “done.”
;;
restart)
echo -n “Restarting $DESC: $NAME”
$0 stop
sleep 1
$0 start
echo “.”
;;
*)
echo “Usage: $0 {start|stop|restart|reload}” >&2
exit 1
;;
esac
exit 0
“`
上述脚本实现了SNMP代理程序的启动、停止、重新加载等操作,并可以自动适配不同的启动方式。需要特别注意的是,脚本中的控制信息需要符合Linux系统的标准,例如提供了服务的名称、启动方式等信息。
将脚本保存在/etc/init.d/目录下,并设置为可执行:
“`
sudo chmod +x /etc/init.d/snmpd
“`
更新启动脚本:
“`
sudo update-rc.d snmpd defaults
“`
至此,Linux SNMP代理程序的自启动已经实现了。每次系统启动时,系统都会自动启动SNMP代理程序,并且保证其符合系统标准。
结语
本文介绍了Linux SNMP自启动的实现方法,包括SNMP代理程序和自启动脚本的配置。这个方法不仅适用于SNMP代理程序,也适用于其他类似的服务程序。需要提醒的是,由于每个Linux系统的差异较大,所以配置过程可能存在一定的变化。
相关问题拓展阅读:
现在还有人用红旗吗?很多都没支持了,以下介绍下在Linux下安装snmp:
下载源码:
选择一个SNMP版本,比如5.7.1,下载地址如下:
解压文件:tar xzvf net-snmp-5.7.1.tar.gz
进入文件夹进行配置安装:cd net-snmp-5.7.1
net-snmp-5.7.1目录下的configure是可执行文件,如果想指定程序包的安装路径,那么首先建立相应的文件夹来存放安装信息,可以写成./configure –-prefix=/指定的路径名。参数–prefix用来告诉系统安装信息存放的路径,如果没有指定路径,直接执行./configure,那么程序包都会安装在系统默认的目录下,通常为:/usr/local下
执行命令”./configure –prefix=/usr/local/snmp –with-mib-modules=’ucd-snmp/diskio ip-mib/ipv4InterfaceTable'”,注意,以上的–with-mib-modules=ucd-snmp/diskio选项,可以让服务器支持磁盘I/O监控
4.回车出现下面问题,可以直接回车而不用回答,系统会采用默认信息,其中日志文件默认安装在/var/log/snmpd.log.数据存贮目录默认存放在/var/net-snmp下
1)default version of-snmp-version(3):
)System Contact Information (@@no.where)(配置该设备的联系信息枝羡):
3)System Location (Unknown)(该系统设备的地理位置):
4)Location to write logfile (日志文件位置):
5)Location to Write persistent(数据存储目录):
5.执行编译和安装:make && make install
6.配置snmpd.conf
使用”ls”命令查看/usr/local/snmp目录下是否存在etc目录,如果不存在etc目录,就创建一个
查看结果显示不存在etc目录,在/usr/local/snmp目录下创建一个etc目录,创建etc目录命令”mkdir /usr/local/snmp/etc”
6.找到SNMP源码目录(net-snmp-5.7.1)下EXAMPLE.conf文件
复制EXAMPLE.conf文件到到好散/usr/local/snmp/etc目录,并重命名为snmpd.conf:”cp EXAMPLE.conf /usr/local/snmp/etc/snmpd.conf”
7.使用vi编辑器打开snmpd.conf文件:”vi /usr/local/snmp/etc/snmpd.conf”,编辑snmpd.conf文件中的内容
8.找到【AGENT BEHAVIOUR】,允许网络访问
9.修改如下:添加”agentAddress udp:161″配置项
10. 找到【ACTIVE MONITORING】选择协议
11. 找到【ACCESS CONTROL】设置权限
12. 找到【rocommunity public default -V systemonly】,把 -V systemonly去掉,这是设置访问权限的,去掉后能访问全部
13.保存snmpd.conf后退出
14.启动:
由于友搭氏我们刚才修改SNMP的snmpd.conf文件,所以在启动snmp服务之前,先使用命令”ps aux | grep snmp | grep -v grep |awk ‘{print $2}’| xargs kill”关闭snmp的相关服务
15.使用”netstat -an |grep 161″查看snmp的服务是否启动
16.启动snmp服务:”/usr/local/snmp/in/snmpd -c /usr/local/snmp/etc/snmpd.conf”
17.测试:
获取本机的系统名字,使用命令:”snmpget -v 2c -c public localhost sysName.0″或者”snmpget -v 2c -c public 本机的ip地址 sysName.0″或者”snmpget -v 2c -c public 本机的ip地址 .1.3.6.1.2.1.1.5.0″进行测试
执行以下的几个命令都可以获取到本机的系统名字:
snmpget -v 2c -c public localhost sysName.0
snmpget -v 2c -c public 127.0.0.1 sysName.0
snmpget -v 2c -c public 192.168.1.229 sysName.0
snmpget -v 2c -c public localhost .1.3.6.1.2.1.1.5.0
snmpget -v 2c -c public 127.0.0.1 .1.3.6.1.2.1.1.5.0
snmpget -v 2c -c public 192.168.1.229 .1.3.6.1.2.1.1.5.0
能够正常返回系统的名字就说明SNMP安装配置成功了。也可以使用命令”snmpget –version”查看当前的安装版本号来验证是否安装成功,如果安装成功,则显示当前的安装版本号
18.完成snmpd的配置并且SNMP测试通过之后,要确保Linux的iptables防火墙对外开放了udp 161端口的访问权限,可以使用”iptables –L –n”查看当前iptables规则
19.用”iptables -I INPUT -p udp –dport 161 -j ACCEPT”命令添加UDP 161端口到iptables防火墙中,然后执行”iptables save”命令保存防火墙的更改
20.在window系统下使用Snmputil.exe工具测试对Linux下的SNMP访问,测试Linux的UDP 161端口是否对外开
21.”snmputil get 192.168.1.229 public .1.3.6.1.2.1.1.5.0″命令返回192.168.1.229这台Linux服务器的名字,可以看到,Linux服务器的名称已经正常返回输出到命令行窗口了。
关于linux snmp自启动的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
创新互联网络推广网站建设,网站设计,网站建设公司,网站制作,网页设计,1500元定制网站优化全包,先排名后付费,已为上千家服务,联系电话:13518219792
网页名称:LinuxSNMP自启动实现方法(linuxsnmp自启动)
文章路径:http://www.gawzjz.com/qtweb/news15/162165.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联