相关知识 - 入侵检测系统(IDS)

  入侵检测系统(intrusion detection system,简称“IDS”)是一种对网络传输进行即时监视,在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。

  它与其他网络安全设备的不同之处便在于,IDS 是一种积极主动的安全防护技术。

IDS 的分类

  IDS 是计算机或网络的监视系统,它通过实时监视系统,一旦发现异常情况就发出警告。

  根据信息来源的不同分为:

    基于主机的 IDS

    基于网络的 IDS

  根据检测方法又可分为:

    异常入侵检测

    滥用入侵检测

IDS 与防火墙的区别

  不同于防火墙,IDS 入侵检测系统是一个监听设备,没有跨接在任何链路上,无须网络流量流经它便可以工作。因此,对 IDS 的部署,唯一的要求是:IDS 应当挂接在所有所关注流量都必须流经的链路上。

实验

系统:  Windows Server 2003  IP:  10.1.1.90/24

软件:  snort

安装 LAMP 环境并安装 snort 软件包

  使用 putty 登录 Linux 主机,在主机执行:

1 apt-get install mysql-server libapache2-mod-php5 php5-mysql libphp-adodb    # 安装 LAMP 环境
2 apt-get install snort-mysql    # 安装 snort 软件包
3 mysql -u root -p123456 # 登录 mysql

创建 snortdb 数据库

  登录 mysql 后即进入了 mysql 界面,在此输入:

1 create database snortdb;    # 创建一个数据库并命名为 snortdb
2 grant create, insert, select, update on snortdb.* to snort@localhost;
3 set password for snort@localhost=password('snortpassword');    # 创建一个数据库用户,用户名为 snort,密码为 snortpassword

  Ctrl + C 退出 mysql 界面,接着在终端输入:

1 cd /usr/share/doc/snort-mysql/
2 zcat create_mysql.gz | mysql snortdb -u snort -psnortpassword
3 rm /etc/snort/db-pending-config

  以将 snort-mysql 自带的软件包中附带的 sql 文件,导入到数据库。

 配置 snort

  使用 vi 打开并修改 /etc/snort/snort.conf 至如下效果

   

对ids分批次处理逻辑java ids可以分为_对ids分批次处理逻辑java

  

对ids分批次处理逻辑java ids可以分为_对ids分批次处理逻辑java_02

  检测snort.conf配置文件是否正常:

1 snort -c /etc/snort/snort.conf

对ids分批次处理逻辑java ids可以分为_对ids分批次处理逻辑java_03

  成功,按Ctrl+C退出,启动snort:

1 service snort start

安装、配置基本分析与安全引擎(BASE)

  安装acidbase软件包:

1 apt-get update    // 更新源列表
2 apt-get install acidbase

  重新创建snort用户:

1 mysql -u root -p123456
2     grant create, insert, select, update on snortdb.* to snort@localhost;
3     set password for snort@localhost=password('snortpassword');

对ids分批次处理逻辑java ids可以分为_ci_04

  配置Apache文件:

1 cp -r /usr/share/acidbase/ /var/www/    // 将 acidbase 的安装目录复制到 /var/www 目录中
2 vi /etc/apache2/sites-available/default    //修改 apache 配置如下图

对ids分批次处理逻辑java ids可以分为_mysql_05

  在文件底部 </VirtualHost> 一行之前加入 acidbase 相关内容

1 service apache2 restart  // 配置好了后,需要重启 apache2
2 vi /etc/php5/apache2/php.ini  // 修改 php.in i文件

 

对ids分批次处理逻辑java ids可以分为_对ids分批次处理逻辑java_06

 

1 chmod 777 -R /var/www/*  // 将acidbase目录的权限设置为777

  配置BASE:

1 mv /etc/acidbase/base_conf.php /etc/acidbase/base_conf.php-orig  // 将现有的配置文件改名,否则无法使用 web 界面配置 base。
2 rm /var/www/acidbase/base_conf.php

  此时已可以通过浏览器打开 http://10.1.1.106/acidbase/

对ids分批次处理逻辑java ids可以分为_对ids分批次处理逻辑java_07

  选择简体中文,查找并配置 ADODB 的路径为 “/usr/share/php/adodb”,提交,开始配置数据库

  输入数据库信息,Pick a Database type:MySQL,Database Name:snortdb,Database Host:127.0.0.1,Database User Name:snort,Database Password:snortpassword,提交,开始配置用户名密码。

  完成后,开始创建数据库中 BASE 用到的表,若出现下图所示信息则说明创建成功:

对ids分批次处理逻辑java ids可以分为_对ids分批次处理逻辑java_08

使用基本安全分析引擎查看入侵日志

  使用 nmap 对 ids 主机进行端口扫描,之后刷新浏览器的 BASE 页面即可看到“端口扫描通信”栏出现了侦测信息。