Linux下IDS的配置<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
前年写过《IDS与IPS功能分析》一文,受到广大读者关注,现将近期有关IDS配置的文章和大家分享.
Internet上的服务器一般都会被安置在防火墙的DMZ(Demilitarized Zone)区,受到防火墙的保护.这在一定程度可以防止具有已知非法特征的危险连接和恶意攻击,但是却防止不了合法用户的非法访问.什么时候会出现合法用户的非法访问呢?举例说明,比如,合法用户的机器被他人控制,成为了黑客的攻击跳板,或者是合法用户想做一些别有用心的探测等.除此之外,有些攻击者还会用端口扫描程序扫描服务器的所有端口,以收集有用的信息(比如,哪些端口是打开的?哪些是关闭的? ).服务器端口被扫描往往是入侵的前奏.防火墙的脚本大都是基于规则的静态表示,对于网络上动态的探测就显得有点束手无策.因此,现在正在形成一个新的安全学科领域,称为“入侵检测”.
一、入侵检测工具简介
入侵检测工具主要是用来检测已经发生的和正在进行的攻击,有些工具甚至可以和防火墙实现“联动”,采取一定的措施来阻止这些攻击.
目前入侵检测技术采取的措施主要分为主动和被动两种.主动方式会通过网络监测器监听网络通信,一旦察觉到可疑的活动(比如特定数据包的流入),就会采取相应的措施.当网络上有瞬间的攻击及大流量非法数据发生时,主动方式允许系统在攻击者发动攻击的第一时间内做出反应,把攻击者狙击在外.被动方式是通过事后分析日志记录,当注意到有可疑活动时,系统才会采取相应的措施.
主流的入侵检测工具软件有CHKWTMP、TCPLogd、Shadow、Snon、MoM 等.其中,MoM 比较复杂,功能也很强劲,支持分布式的入侵检测.本文重点介绍简单实用的PortSentry.PortSentry是入侵检测工具中配置最简单、效果最直接的工具之一.PortSentry是Abacus工程的一个组成部分.Abacus工程的目标是建立一个基于主机的网络入侵检测系统,可以从http://www.psonic.com的到关于Abacus工程更为详细的信息.它可以实时检测几乎所有类型的网络扫描,并对扫描行为做出反应.一旦发现可疑的行为,PortSentry可以采取如下一些特定措施来加强防范:
◆ 给出虚假的路由信息,把所有的信息流都重定向到一个不存在的主机;
◆ 自动将对服务器进行端口扫描的主机加到TCP-Wrappers的/etc/hosts.deny文件中去;
◆ 利用Netfilter机制,用包过滤程序,比如iptables和ipchain等,把所有非法数据包(来自对服务器进行端口扫描的主机)都过滤掉;
◆ 通过syslog()函数给出一个目志消息,甚至可以返回给扫描者一段警告信息.
二、PortSentry的安装配置
下面详细介绍PortSentry工具的安装和配置方法.
1.安装添加到/etc/host.deny文件中.这样既切断了与非法主机之间的通信,又在服务器上还保留了其犯罪的证据和时间记录,让它无处遁形,不可能再有进一步的非法行为. |