当前位置:Linux教程 - Linux - 入侵检测包PortSentry

入侵检测包PortSentry



        
    辛巴达
    by Sinbad

    黑客进入一个比较坚固的系统的过程大致如下:

    入侵企图 -> 防火墙 -> PortSentry -> LIDS -> LogCheck -> 系统内部数据

    防火墙后的第一层软件包是PortSentry,它可以监听来自机器外部的连接。该软件包使用起来很方便,而且很有效果,可以到http://www.psionic.com/abacus/portsentry/ 下载。

    PortSentry运行以后,将监听TCP/IP的活动连接。黑客入侵系统以前,通常先对该主机进行端口扫描,以获得足够的系统信息。PortSentry能够记录下扫描者的IP地址,并且可以自动修改系统配置文件,以拒绝来自该IP的进一步访问,确保系统的安全。

    PortSentry的安装很简单。对Red Hat Linux而言,有RPM包可以下载,其他的Linux可以去download源码,编译安装。默认的安装目录是/usr/local/psionic/portsentry,然后编辑系统的启动文件/etc/rc.d/rc.local,加上以下内容:
    #Start PortSentry
    /usr/local/psionic/portsentry/portsentry -tcp
    /usr/local/psionic/portsentry/portsentry -udp
    /usr/local/psionic/portsentry/portsentry -atcp
    /usr/local/psionic/portsentry/portsentry -audp
    /usr/local/psionic/portsentry/portsentry -stcp
    /usr/local/psionic/portsentry/portsentry -sudp

    这样,每次系统启动后,PosrtSentry就自动运行了。-tcp参数表示PortSentry运行在TCP模式,会纪录下对143端口(IMAP2)、111端口(portmap)或23端口(TELNET)等
    等的扫描。你可以编辑portsentry.conf文件的TCP_PORTS行,重新定义你需要监听端口。与之类似,UDP模式监听的端口号在UDP_PORTS行。

    如果遇到扫描,PortSentry将根据portsentry.conf文件中定义的一些动作做出处理。最常用的有两个。一个是KILL_ROUTER,把其中一行的注释去掉(默认没有激活,你只需去掉一个注释),改为
    KILL_ROUTE="/sbin/route add -host $TARGET$ gw 127.0.0.1"
    这样,入侵者的IP将被加入本地的路由过滤表,他再也无法访问你的机器了,呵呵。

    还有一行是修改/etc/hosts.deny的,适合屏蔽对TCP Wrappers控制的服务的访问:
    KILL_HOSTS_DENY="ALL: $TARGET$"
    这样,只要有人一扫描你的机器,PortSentry就作纪录,他的IP对你来说就没有威胁了。:)

    另一个文件portsentry.ignore,里面列出portsentry将忽略其扫描动作的IP,一般都是内部子网的机器。


    发布人:netbull 来自:Sinbad网络安全