你现在所在的位置: TechTarget > CIO > 技巧 > 执行官安全策略方案 >
用户注册
QA烧考坊
IT专家论坛
会员活动
构建基于snort的入侵检测系统
【6/13/2005 8:48:7】 【】 【DRL】

  简介

  snort是一个轻量级的入侵检测系统,它具有截取网络数据报文,进行网络数据实时分析、报警,以及日志的能力。

  snort的报文截取代码是基于libpcap库的,继承了libpcap库的平台兼容性。
  它能够进行协议分析,内容搜索/匹配,能够用来检测各种攻击和探测,例如:缓冲区溢出、隐秘端口扫描、CGI攻击、SMB探测、OS指纹特征检测等等。
  snort使用一种灵活的规则语言来描述网络数据报文,因此可以对新的攻击作出快速地翻译。
  snort具有实时报警能力。可以将报警信息写到syslog、指定的文件、UNIX套接字或者使用WinPopup消息。
  snort具有良好的扩展能力。它支持插件体系,可以通过其定义的接口,很方便地加入新的功能。
  snort还能够记录网络数据,其日志文件可以是tcpdump格式,也可以是解码的ASCII格式。

  本文将介绍一个使用snort、PostgreSQL数据库、Apache、PHP、ACID和razorback搭建入侵检测系统的解决方案。

  1.安装准备

  1.1.获得snort源代码

  用户可以从snort的官方站点http://www.snort.org获得其源代码或者RPM包。使用源代码安装snort需要libpcap库,可以从ftp://ftp.ee.lbl.gov下载。如果用户使用某些插件,还可能需要其它的库,将在下面做详细介绍。

  1.2.快速安装

  安装RPM包

  rpm -ihv --nodeps snort-1.8.1-RELEASE.i386.rpm

  从源代码的快速安装

  你如果不需要一些额外的功能,可以使用快速安装,只要按照以下步骤做就可以了:

  1) 确认libpcap包已经安装完毕。
  2) ./configure
  3) make
  4) make install

  然后,你就可以使用snort了,可以参考本站的相关文章。

  1.3.configure脚本功能选项简介

  默认的功能可能无法满足你的要求,因此你可以把一些其它功能加入到你的snort二进制代码中。configure脚本提供了一些选项。通过这些选项,你可以在编译时,将一些额外的功能编译到二进制目标中。下面对这些选项做一个简要的介绍,其中一些重要的选项,例如:数据库支持、FlexResp将有专门的章节进行讨论。而一些标准的configure选项如:--prefix,此处也将不再涉及。

  --enable-smbalerts

  使SMB报警代码生效。不过,这项功能有安全隐患,需要谨慎使用。

  --enable-flexresp

  把灵活反应(Flexible Response)代码编译连接到snort二进制目标文件。它能够使snort在IP层主动断开恶意连接。这项功能需要LibNet库,可以从http://www.packetfactory.net下载其源代码。

  --with-postgresql=DIR

  提供PostgreSQL数据库支持。

  --with-libpcap-includes=DIR

  指定libpcap库头文件的位置。

  --with-libpcap-libraries=DIR

  指定libpcap静态库的位置。

  --with-mysql=DIR

  指定mysql数据库的路径。

  --with-oracle=DIR

  指定oracle数据库的位置。

  --with-openssl=DIR

  指定openssl的位置。

  --with-odbc=DIR

  提供ODBC数据库支持

  --with-oracle=DIR

  提供Oracle数据库支持

  --with-snmp

  提供SNMP协议支持,通过snortSnmp插件,snort能够向网络管理系统(Network Management System)发出snmp报警。这项功能需要ucd-snmp软件包的支持,这个包可以从http://net-snmp.sourceforge.net下载。

  --enable-idmef

  把IDMEF XML插件连接到snort二进制代码中。这个插件需要libidmef、libxml2和libntp库,可以分别从以下地址下载:

  libidmef http://www.silicondefense.com/idwg/libidmef
  libxml2(>=2.3.7) http://www.xmlsoft.org
  libntp http:/www.ntp.org

  这些库的位置由--with-libxml2-includes=DIR、--with-libxml2-libraries=DIR、--with-libntp-libraries=DIR、--with-libidmef-includes=DIR和--with-libidmef-libraries=DIR等功能选项指定。

  1.4.关于本文的几个注意事项

  本系统由snort、PostgreSQL数据库、PHP、Apacke、ACID以及其它一些辅助软件组成,所有的软件都将安装在/opt/ids/目录下。因此,在配置完成后,你需要将/opt/ids/bin加入到PATH环境变量中,把/opt/ids/lib/加入到/etc/ld.so.config文件,然后执行ldconfig -v或者LD_LIBRARY_PATH环境变量。

1 2 3 4  下一页
【责编:BabyBear】 【发表评论
至顶】 【读者反馈
免费订阅电子新闻邮件
选择你想通过邮件方式得到的新闻邮件
(提示:这里输入你的Email)
还不是会员?通过你的订阅,我们会激活你的会员资格。
 相关文章
  • 黑客利用僵尸电脑实施“蛮力”SSH攻击   (6/10/2005 17:27:24)
  • 五步锁定P2P Windows网络安全   (6/10/2005 16:9:58)
  • Win XP系统默认设置带来的7个安全问题   (6/10/2005 12:39:52)
  • 中航嘉信倡导:服务器安全   (6/10/2005 11:33:36)
  • 熊猫TruPreventTM技术智擒Mytob最新变种   (6/10/2005 11:32:32)
  • 新型企业级产品是3Com的最后机会?   (6/9/2005 17:11:39)
  • 什么是卷影拷贝服务?   (6/9/2005 16:29:0)
  • 如何在Windows服务器上恢复意外删除的文件   (6/9/2005 16:6:31)
  • 信息化对抗和网络安全的春天   (6/9/2005 11:55:5)
  • 局域网共享资源安全之另类防护法   (6/9/2005 10:8:55)