当前位置:Linux教程 - Linux资讯 - Linux实现简单而有效的IDS系统

Linux实现简单而有效的IDS系统

  其实说起IDS我想管理员朋友们一定不陌生,不过我还是想简单的说一下IDS的定义,这样更有利于大家理解后面的应用,这篇文章还是基于redhat7.3的,为什么呢?希望大家看过我的第一篇文章《浅谈Linux安全》,在建立了那种系统的基础上,我们来实现IDS吧。   IDS就是入侵监测系统的简称,其主要的作用,我个人理解就是能够收集入侵的蛛丝马迹,然后报告你,当然也不确保它的准确性,这要看软件的分析能力了,现在有很多收费和免费的IDS应用程序,其中比较强的是snort,可能大家都知道的就是Tripwire,它也是一种入侵监测系统,不过它是监视你的文件是否被修改今天我给大家介绍一种,没有太繁华的功能,简单实用,能够有效地阻止很多攻击,能够对非法的端口扫描做出反应,经过配置,极端一点的作法甚至能够将扫描你的人的端口反扫描回来,而且阻断它对你主机的所有连接。    1、理论介绍篇     言归正传,这个软件就是portsentry感知攻击的IDS应用   下载地址   FTP://194.199.20.114/linux/redhat/6.2/en/powertools/i386/i386/portsentry-0.99.1-1.i386.rpm   下载后就是安装了不用我多说   rpm –ivh portsentry-0.99.1-1.i386.rpm     先说说portsentry有什么厉害的功夫吧,他能做下面的事情   1、 丢弃所有使用route命令返回到主机的数据包   2、 自动更新/etc/hosts.deny来阻断基于xinetd的连接,简单的阻断一台主机   3、 自动使用防火墙ipchian,ipfwadm等来阻断连接,相当于添加一条厉害的规则,这个比较实用而且安全的   4、 日志的额外连接,他能将观察到的扫描记录到日志,这个功能很有用,你可以什么都不做,但是不能不没有日志的生成,这样让你有空就看看谁再搞你的宝贝服务器吧   5、 自定义的操作,可能对扫描你主机的机器做一些操作,比如反扫描,呵呵然后记录信息,比较酷吧   说了这么多好处,下面我们来在机器上实现一下吧,安装完毕后,你能够在   /usr/psionic/portsentry   下看到一些文件   ignore.csh 用于忽略的主机脚本   portsentry 执行程序   portsentry.conf 主要配置文件   portsentry.ignore 忽略的主机   portsentry.history 运行和阻断主机才会产生,记录详细的阻断信息   现在开始配置,实现我们的功能吧   vi portsentry.conf   这个文件看上去有几个章节,现在我分别介绍一下它们的配置   其实大家一看他的配置文件基本上都有个数了,配置文件写得很好,我在这里就不一一翻译了,呵呵比我E文好得多了,说几个重要配置吧   Port Configurations   定制那些端口希望被监控,如果你有特殊的端口,加入,就能被监控,注意用逗号分割。     Advanced Stealth Scan Detection Options   监控的范围,   ADVANCED_PORTS_TCP="1024"   ADVANCED_PORTS_UDP="1024"   表示监控的范围在1024之下的端口,如果你希望监控如65423这样的端口,那么将这是数字设置大些     Configuration Files   就是配置文件位置,一般不用修改     Ignore Options   忽略的端口设置     Dropping Routes   丢弃路由方案   一般用这个可以   KILL_ROUTE="/sbin/route add -host $TARGET$ reject"   其他的可以根据操作系统来定,或者根据实际来定   也可以写入一段iptalbes 的代码,后面有     TCP Wrappers   这就是我说得简单的加入hosts.deny来阻断发起扫描的主机   KILL_HOSTS_DENY="ALL: $TARGET$ : DENY"   把原来那句关闭,上面这句打开,我们用的都是redhat哦     External Command   扩展命令,可以执行很多自定义操作,比如nmap扫描你的主机,反扫描他,后面事例中给他家说说     Port Banner Section   理论上是可以给监听你服务的人一个警告,修改PORT_BANNER=这行,写点吓人的话,不过我也不知道其作用不,呵呵     设置完毕后,用portsentry –stcp来启动,这样能够防止SYN等隐蔽的扫描,你可以找个机器用nmap等扫描器扫描一下,看看日志是不是记录了?你的主机是不是被添加到/etc/hosts.deny了。     有几点需要注意的,据说实施了portsentry后一些扫描软件可能会挂起,汗~~~不过我觉得不像,但是确实能防止一点点,   第二,据说portsentry把你的网卡开为混杂模式,但是据我观察网卡并没有变为混杂模式,不过还是提醒大家,因为混杂模式可能会降低系统的反应,就要看你自己权衡了。   个人认为,服务器上实施portsentry软件,不用作出什么反应,只需要记录就行了,定期的查看一下,我觉得能做的就是去掉路由啊,或者nmap扫描入侵的主机,可以这样做,让他自动反扫描扫描你的主机   在   External command部分   加入   KILL_RUN_CMD=”/usr/bin/nmap –O $TARGET$”>> /var/log/scanIP.log   然后可以在/var/log/scanIP.log中查看这些主机的信息。你扫描他哦,呵呵   最后记得运行哦,忘记给大家说几种运行参数了   -tcp 基本简单的监听tcp   -udp 基本简单监听udp   -stcp 建议使用这个参数,可以监听带欺骗的tcp扫描,比如SYN,FIN等扫描,很强   -atcp 禁止所有portsentry.conf中指定的连接,必须手工配置合法的主机,不建议使用   -sudp 同stcp差不多,不过是udp   -adup 和atcp差不多,不过是udp
[1] [2] 下一页 

(出处:http://www.sheup.com)


上一页 [1] [2]