Ossim系统常见测试方法
Ossim系统由若干开源安全系统所组成,对于这样一个复杂系统,部署完毕后,系统到底怎么样,稳定性如何?等一系列问题,我们需要经过一些测试才能知晓。通常,对防火墙、入侵检测测试的测试和评估有着严格的测试方法和流程,下文中我仅对Ossim系统中常见的日志流量和网络数据包流量进行仿真,另外还包括Mysql的压力测试,主要目的是展示日志生成器和数据包生成器这两中开源工具的使用。
一、日志产生器
为了测试Ossim系统是否能够准确地接收并解析 syslog 消息,我们使用一个模拟syslog Server 工具 Syslog-Slogger 对系统发送 syslog 消息。Syslog-Slogger 是一个基于 java 的命令行工具,用户能够通过它的 properties 文件设置发送的目的地址、发送时间间隔、消息数量等,该工具是一个操作简单、使用方便的 syslog Server。下载地址:http://chenguang.blog.51cto.com/350944/1580937。
以下显示了 Syslog-Slogger 模拟器产生的几条 syslog 消息。
#syslogs generated 10@0 espMessage Stats
%PIX-3-211001:Memory allocation Error [1]
%PIX-5-106100:access-list acl-inside permitted udp inside/192.168.120.2<101> -> out side/192.168.150.20<137> hit-cnt 1 <first hit> [1]
%PIX-5-106100:access-list acl-inside permitted udp inside/192.168.120.3<100> ->out side/<192.168.150.21<137> hit-cnt 10 <first hit> [1]
%PIX-1-101004(Primary)Failover cable not connected (other unit) [1]
%PIX-3-105006(Primary)Link status down on interface inside [2]
%PIX-5-109012:Authen Session End:user abc,sid session_num,elapsed num seconds [1]
以上日志是由Syslog-Slogger模拟器产生的syslog消息。
二、数据包生成器
1).Hyenae
这里使用一款能自动生成各种数据包的开源工具hyenae, 它是一种高度灵活和平台独立的网络数据包发生器下载地址为:http://packetstormsecurity.com/UNIX/scanners/hyenae-0.35-2.tar.gz
它还支持一个基于Qt的前端HyenaeFE支持。它在BackTrack 4/5下可以直接编译后运行,安装比Debian Linux系统中要简单.我们利用这款工具可以模拟大大量的网络流量。如果你的单位有钱,可以购买FLUKE 和ES网络通来进行测试,用这款开源工具和fluke测试仪都可以对七层的应用进行发包测试.
2).Mysql测试
mysqlslap是MySQL自带的基准测试工具,它是用perl编写,类似Apache Bench负载产生工具,生成schema,装载数据,执行benckmark和查询数据,语法简单,容易使用。该工具可以模拟多个客户端同时并发的向服务器发出查询更新,给出了性能测试数据而且提供了多种引擎的性能比较。
①使用自动生成的脚本测试
实例一:
#mysqlslap –uroot –pXhSksvpjKj –concurrency=1000 –iterations=1 –auto-generate-sql –auto-generate-sql-load-type=mixed –auto-generate-sql-add-autoincrement –engine=myisam –number-of-queries=10 –debug-info
本次测试以1000个并发线程,测试1次,自动生成SQL测试脚本、读写更新混合测试,自增长字段,测试引擎为myisam,共运行10次查询,输出cpu资源信息显示结果如下(命令参数的含义大家可以使用mysqlslap --help来显示):
实例二:
使用系统自带的脚本测试,增加auto_increment一列、int4列和char35列,测试2种引擎myisam,innodb读的性能分别用50、200、400个客户端对服务器进行测试总共200个查询语句执行20次查询。
从显示的第一项结果看,50个并发客户端 平均每个客户端4个查询 20次查询中最少的时间是0.170秒、 最多0.124秒、平均0.263秒。
实例三:
这里我们可以使用Ossim系统中自带的sql脚本,例如
#mysqlslap –create=/usr/share/doc/ossim-mysql/contrib./plugins/sap.sql –query=/usr/share/doc/ossim-mysql/contrib/plugins/sap.sql –concurrency=50,100,200 –iterations=20 –engine=myisam,innodb –socket=/var/run/mysqld/mysqld.sock –uroot -pXhsksvpjKj
更多OSSIM内容,大家可参考《UNIX/Linux网络日志分析与流量监控》一书。