使用Snort,ACIDBASE,MySQL和Apache2在Ubuntu 9.04上安装和配置入侵检测
本教程介绍如何在Ubuntu 9.04上使用Ubuntu的Synaptic Package Manager软件包安装和配置Snort入侵检测系统(IDS),ACIDBASE(Basic Analysis and Security Engine),MySQL和Apache2。 Snort将帮助您监控网络并提醒您有关可能的威胁。 Snort将其日志文件输出到一个MySQL数据库,ACIDBASE将用于在Web浏览器中的图形界面中显示。
系统准备和软件安装
1.1安装
从http://www.ubuntu.com/getubuntu/download下载32位或64位桌面Ubuntu 9.04版本。
1.2网络与系统配置
将计算机连接到网络。 虽然不同网络配置的数量将允许系统工作,但首选网络配置如下:
- 位于DMZ(非军事区)
- NAT的静态IP地址将其IP隐藏在防火墙后面
- 连接到交换机上的监控端口。
创建名为<your_username>的新管理员,密码为<your_password> 。
1.3软件安装
安装完成后,首先要做的是安装Ubuntu推荐的所有更新。 要访问更新,请进入系统>管理>更新管理器
。 输入您的密码,然后选择检查
。 选择安装更新
。
从桌面转到系统>管理>突发包管理器
。 输入您的密码并选择搜索
。
搜索以下软件包并安装它们:
- 酸碱与所有受影响的包装
- Snort-MySQL与所有受影响的软件包
- MySql-server-5.0与所有受影响的软件包
- Libpcap0.8-dev
- libmysqlclient15-dev
- MySql-client-5.0
- 野牛
- 柔性
- Apache2
- Libapache2-mod-php5
- Php5-gd
- Php5-mysql
- Libphp-adodb
- 梨梨
- SSH
2.获得根访问权
从桌面转到应用程序>附件>终端
并键入:
$ sudo -i
$ Then your password.
3.配置Snort
配置文件snort.conf
需要修改以适应个人需要。
用文本编辑器(nano,vi,vim等)打开/etc/snort/snort.conf
。
# vim /etc/snort/snort.conf
将var HOME_NET
更改为var HOME_NET 192.168.1.0/24
(您的家庭网络可能与192.168.1.0
不同)。 如果您有多个网络进行监控,则应按如下方式输入: var HOME_NET [192.168.1.0/24,10.10.1.0/24]
。 将var EXTERNAL_NET
更改为var EXTERNAL_NET!$ HOME_NET
(这是说明除HOME_NET
之外的所有内容都是外部的)。
将var RULE_PATH ../rules
更改为var RULE_PATH / etc / snort / rules
。 向下滚动列表到#输出数据库
的部分:log,mysql,user =
,从该行前面删除#
。
示例: 输出数据库:log,mysql,user = <your_username> password = <your_password> dbname = snort host = localhost
(创建新用户时见上文)。
记下用户名,密码和dbname。 当我们设置MySQL数据库时,您将需要这些信息。 保存并退出。
4.设置snort并归档MySQL数据库
4.1 MySQL设置
登录MySQL服务器。
# mysql -u root -p
有时候没有密码设置,所以只需按Enter键即可。
如果您登录失败,请再次尝试上述命令并输入YOUR_PASSWORD
。
如果没有密码,您需要为root帐户创建密码。
注意:一旦你进入MySQL, #
现在是一个mysql>
mysql> create user <your_username>@localhost;
mysql> SET PASSWORD FOR <your_username>r@localhost=PASSWORD(‘<your_password>’);
mysql> SET PASSWORD FOR root@localhost=PASSWORD(‘<your_password>);
4.2创建Snort数据库
mysql> create database snort;
mysql> grant INSERT,SELECT on root.* to snort@localhost;
mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to <your_username>@localhost;
mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to snort;
4.3创建存档数据库
mysql> create database archive;
mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on archive.* to <your_username>@localhost;
mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on archive.* to archive;
mysql> exit
4.4在Snort和Archive数据库中创建表
我们将使用snort模式来进行snort和archive数据库的布局。
# cd /usr/share/doc/snort-mysql
# zcat create_mysql.gz | mysql –u <your_username> –h localhost –p snort
# zcat create_mysql.gz | mysql –u <your_username> –h localhost –p archive
4.5确认数据库的创建和新创建的表的存在
登录到MySQL并检查我们刚刚创建的数据库和这些数据库中的表。 如果一切都创建成功,您将在mysql数据库中看到四(4)个数据库(mysql,test,snort和archive),每个数据库中都有大约16个表。
# mysql -u root –p
mysql> show databases;
mysql> use snort;
mysql> show tables;
mysql> use archive;
mysql> show tables;
mysql> exit
4.6测试Snort
终端类型:
# snort -c /etc/snort/snort.conf
如果一切顺利,你应该看到一只猪。
结束测试命中ctrl + c
。