相关知识 - 入侵检测系统(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 至如下效果
检测snort.conf配置文件是否正常:
1 snort -c /etc/snort/snort.conf
成功,按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');
配置Apache文件:
1 cp -r /usr/share/acidbase/ /var/www/ // 将 acidbase 的安装目录复制到 /var/www 目录中
2 vi /etc/apache2/sites-available/default //修改 apache 配置如下图
在文件底部 </VirtualHost> 一行之前加入 acidbase 相关内容
1 service apache2 restart // 配置好了后,需要重启 apache2
2 vi /etc/php5/apache2/php.ini // 修改 php.in i文件
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/
选择简体中文,查找并配置 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 用到的表,若出现下图所示信息则说明创建成功:
使用基本安全分析引擎查看入侵日志
使用 nmap 对 ids 主机进行端口扫描,之后刷新浏览器的 BASE 页面即可看到“端口扫描通信”栏出现了侦测信息。