net-snmp源码VS2013编译添加加密支持(OpenSSL)(在VS里配置编译OpenSSL)

net-snmp源码VS2013编译添加加密支持(OpenSSL)

snmp v3 协议使用了基于用户的安全模型,具备认证和加密两个模块。html

认证使用的算法是通常的消息摘要算法,例如MD5/SHA等。这一部分在net-snmp的源码中已经有相关的实现,无需再使用外部库来支持它。算法

加密使用的算法通常能够是DES/AES等。这一部分在net-snmp的源码中没有想关的实现,须要使用外部加密算法库(OpenSSL)来支持。安全

一、安装或编译OpenSSL

要使得编译出来的net-snmp支持加密,首先咱们须要OpenSSL库的相关文件(头文件的库文件)。这能够采用OpenSSL的源码来编译的方式,也能够直接下载已经编译好文件来使用便可。加密

若是是本身编译,网上有不少相关的文章了,参考着来作就是。这不是本文的重点,这里就不写了。3d

最快速的方式就是网上下载一个现成的来用就是了。这里我下载的是这个http://ftp.pconline.com.cn/30fde0ee26ae331abcca7f901515b536/pub/download/201010/Win32OpenSSL-1_0_1g.exehtm

下载以后直接双击安装便可。blog

下图是我这里安装后的位置,红框中的是将要用到的两个文件夹。get

 

 

二、在net-snmp工程中设置相关属性

2.一、设置包含目录和库目录

在libsnmp和snmpd项目中添加包含目录和库目录。(你也能够把全部项目的都加上,我这里只用到这两个项目)其中libsnmp这个项目必须加上,不然不支持加密。源码

2.二、设置预处理器定义

这里要添加一个宏定义NETSNMP_USE_OPENSSL。能够修改<net-snmp/net-snmp-config.h>文件,可是这种作法会致使要全部的项目都必须设置头文件和库文件的目录,因此不是很好。这里咱们只须要libsnmp和snmpd这两个项目支持便可,因此只须要设置这两个项目的属性。it

三、编译。编写配置文件

编译这里就不说了,之后写一篇文章来专门讲讲使用VS2013编译net-snmp 5.7。

使用的时候必须使用制订了SNMPv3验证方式相关参数的配置文件才可。

具体的能够见这篇文章

http://www.cnblogs.com/oloroso/p/4844907.html

 

http://www.cnblogs.com/oloroso/p/5001672.html

相关文章
相关标签/搜索