在Linux服务器上如何开启安全的SNMP代理
在各种Linux分发版中,大多数都已经默认集成了snmpd,比如在suse10中,你可以这样开启snmpd:
suse10:~ # /etc/init.d/snmpd start
如果没有默认安装,你要做的就是自己来编译snmpd,按照下边的步骤,非常简单。
编译和安装
对于Linux平台,我们推荐使用Net-SNMP,它实现了标准的SNMP协议,并且包括了代理程序以及各种SNMP工具。
http://net-snmp.sourceforge.net/
首先需要下载Net-SNMP的源代码,选择当前最新的版本5.4.2.1,地址如下:
http://sourceforge.net/projects/net-snmp/files/net-snmp/5.4.2.1/
接下来对下载的源代码包进行解压缩,如下
./configure –prefix=/usr/local/snmp –with-openssl=/usr/ –with-mib-modules=ucd-snmp/diskiomakemake installsuse10:~ # tar xzvf net-snmp-5.4.2.1.tar.gz
然后通过configure来生成编译规则,如下:
suse10:~ # cd net-snmp-5.4.2.1
suse10:~ # ./configure —-prefix=/usr/local/snmp —-with-openssl=/usr/ ––with-mib-modules=ucd-snmp/diskio
注意这里的—-with-mib-modules=ucd-snmp/diskio选项,它可以让服务器支持磁盘I/O监控。
接下来,开始编译和安装
suse10:~ # make
suse10:~ # make install
到现在为止,我们已经有了可以运行的SNMP代理程序,它位于/usr/local/snmp/sbin/snmpd,在启动它之前,我们还要进行一些必要的设置。
设置安全的验证方式
将SNMP代理程序暴露给网络上的所有主机是很危险的,为了防止其它主机访问你的SNMP代理程序,我们需要在SNMP代理程序上加入身份验证机制。SNMP支持不同的验证机制,这取决于不同的SNMP协议版本,目前支持v2c和v3两个版本,其中v2c版本的验证机制比较简单,它基于明文密码和授权IP来进行身份验证,而v3版本则通过用户名和密码的加密传输来实现身份验证,我们建议使用v3,当然,只要按照以下的介绍进行配置,不论是v2c版本还是v3版本,都可以保证一定的安全性,你可以根据情况来选择。
注意一点,SNMP协议版本和SNMP代理程序版本是两回事,刚才说的v2c和v3是指SNMP协议的版本,而Net-SNMP是用来实现SNMP协议的程序套件,目前它的最新版本是刚才提到的5.4.2.1。
v2c
相关文档:
参见:http://www.ibm.com/developerworks/cn/linux/l-proc.html
使用 /proc 文件系统来访问 Linux 内核的内容
这个虚拟文件系统在内核空间和用户空间之间打开了一个通信窗口
文档选项
<tr
valign="top"><td width="8"><img alt="" height="1" width="8& ......
下面的文件的使用方法是:将下面的文件保存在linux内核源码目录中,文件的名称是.config,然后make menuconfig,在出现
的配置界面中选择Load Configuratio选项,然后可以在这个基础上修改自己的kernel。下面的配置是基于s3c2410,支持yaffs2
文件系统。我看了一下编译出来的uImage大概在800k左右,呵呵么这是本人第一次成 ......
一、头文件
gcc 在编译时寻找所需要的头文件 :
※搜寻会从-I开始
※然后找gcc的环境变量 C_INCLUDE_PATH,CPLUS_INCLUDE_PATH,OBJC_INCLUDE_PATH
※再找内定目录
/usr/include
/usr/local/include
/usr/lib/gcc-lib/i386-linux/2.95.2/include
/usr/lib/gcc-lib/i386-l ......
【转】Linux内核裁剪的具体步骤
在menuconfig中配置:
详细介绍内核配置选项及删改情况
第一部分:全部删除
Code maturity level options ---> 代码成熟等级选项
[]Prompt for development and/or incomplete code/drivers 默认情况下是选择的,这将会在 ......
什么时候需要创建线程池呢?简单的说,如果一个应用需要频繁的创建和销毁线程,而任务执行的时间又非常短,这样线程创建和销毁的带来的开销就不容忽视,这时也是线程池该出场的机会了。如果线程创建和销毁时间相比任务执行时间可以忽略不计,则没有必要使用线程池了。
下面是 ......