有自己的服务器,自然少不了对服务器的监控,特别是Vpser们,怕VPS线路抽风影响客户的访问。国内外很多网站监控类的网站,不过不太适合英文水平较低的站长。不过国内的监控宝( http://www.jiankongbao.com)也蛮不错,相信绝大部分的站长都认识它。 网站监控有多种,如针对单项的:HTTP、FTP、Ping等,如果要监控服务器的CPU、内存、硬盘等信息,就需要安装SNMP,监控宝提供了项“服务器性能监控”就是利用SNMP获取服务器信息。但是监控宝推荐的Net-Snmp对于部分小白们来说比较难上手,所以这里不按照监控宝的说明配置。(注意:如果需要Diskio即磁盘I/O监控,可能要重新编译SNMP)
以下由OpenVZ的VPS作为演示:
CentOS自带了SNMP,只不过默认没有开启服务。
0、检查是否有SNMP服务,若没有,请先安装- service snmpd status #检查是否有SNMP服务
- yum install -y net-snmp #若没有则安装
复制代码 1、先编辑Snmp的配置文件,设置安全的验证方式2、验证方式有两种,v2c和v3,推荐后者。
(1)v2c验证方式添加比较简单,在snmpd.conf中添加以下内容- rocommunity kwxgd 60.195.252.107
- rocommunity kwxgd 60.195.252.110
复制代码以上代码解释:
rocommunity 表示一个只读的访问权限
kwxgd表示v2c的帐号
后面的IP表示授权访问IP(以上三组为监控宝监控点的IP,意味着只有监控宝才能访问您CentOS的SNMP)
以上配置中只有“kwxgd”是需要进行修改的,在监控宝上添加被监控的服务器时需要提供这个字符串。
(2)添加v3验证方式
LinuxVPS学习者建议您使用v3这种最新的验证方式。早期的Linux发行版中默认的SNMP可能不支持v3,需要自己手工编译其它支持v3的SNMP(如Net-SNMP 5以上版本,CentOS 5.5测试通过。)
同样,在snmpd.conf中添加以下内容 - rouser kwxgd auth
- createUser kwxgd MD5 mypassword
复制代码第一行“rouser”用于设定只读帐号的类型,“kwxgd”设定用户名,“auth”指明连接时需要验证。
第二行的意思是创建一个名为“kwxgd”的用户,密码为“mypassword”,并用MD5进行加密传输。
注意,创建用户的密码要8个字节以上,否则设置会失败。而且一旦snmpd启动后,出于安全考虑,以上两行配置会被snmpd自动删除,但它会将这些配置以密文的形式记录在其它文件中,重启snmpd不需要再次重复添加以上内容,除非你希望创建新的用户(或覆盖帐户,如修改帐户密码密码)。
3、设置完毕,开关SNMP
(1)开启SNMP
在SSH输入以下指令即可运行: (2)关闭SNMP
在SSH输入以下指令即可关闭: (3)重启SNMP
在SSH输入以下指令即可重启:
4、成功开启后,在监控宝中进行设置(以v3为例)
(1)进入监控宝“服务器性能监控”
(2)添加服务器(如图)
以上图片解释:
IP为您服务器的IP。SNMP默认端口为161
Security Name(安全帐户)为您之前在snmpd.conf添加的帐户名。
Pass Phrase(通行短语)为您在snmpd.conf设置的密码(需要8个字符以上,否则无法连接)。
Auth Protocol(验证协议)为之前在snmpd.conf设置的MD5。
(3)添加成功后监控宝提示(图)
(4)回到“服务器性能监控”,选择刚添加的服务器,选择“SNMP性能监控”,并添加监控项目。(图)
(5)添加监控项目(图),选择您要监控的项目。
上图,由于测试服务器用的是OpenVZ的VPS,OpenVZ不支持Diskio模块,所以磁盘I/O无法监控(手动编译的Diskio也无效),为此请不要勾选。
(7)成功添加项目后即可使用,但需要等待监控宝服务器获取信息。(估计5-10分钟即可)
监控宝内“服务器性能监控”添加完毕。
5、设置SNMP开机自动启动
成功配置完毕,建议将SNMP设置为开机自动启动(或取消)。
(1)设置开机自动启动,在SSH中输入以下命令(2)关闭开机自动启动,在SSH中输入以下命令6、增强的SNMP安全性
(2011年11月8日更新) 网络上无聊的人很多,为了确保安全,建议在Iptables加上以下规则 在SSH中执行以下命令 - iptables -A INPUT -p udp -s 60.195.252.107 --dport 161 -j ACCEPT
- iptables -A INPUT -p udp -s 60.195.252.110 --dport 161 -j ACCEPT
复制代码 以上命令执行完毕后,执行以下命令将规则写入到iptables配置文件中,下次开机时依然生效。以上做的目的,就是只让指定的监控服务器(IP)才能与您的SNMP服务建立连接。
官方测试工具:http://www.jiankongbao.com/labs/snmp
修改snmp默认的udp端口161为1611,防止vps服务器提供商扫描提醒
http://bbs.itzmx.com/thread-9113-1-1.html
(出处: http://bbs.itzmx.com/)
|