折腾我三天必须记录一下。。
配置snort我参考的教程https://blog.51cto.com/chenguang/6047342
操作系统我用的是win7,在实验中卡在第六步,浏览器打开呼呼报错。
我的snort版本是acid-0.9.6b23,php版本是5.6.26,AppServ版本是8.5.0。
浏览器访问 http://localhost:8080/acid/acid_db_setup.php报图示错误
我换了很多版本的acid都这样,老版本有session_register() 函数被弃用,新版本就是图示的fatal错误。
gpt:因为在 PHP 5.4 及以上版本中,不再支持在函数调用时使用引用传递(call-time pass-by-reference)。这意味着不能在函数调用时使用 & 符号来指示参数是按引用传递的。
打开文件把报错位置的&删去即可,可以用notepad++处理。大概要改三四个文件。
不过我一开始换了很多acid版本,也改过别的inc,都放在资源里了,有的可以自取,没有的可以自行肝一下。
修改完成后访问http://localhost:8080/acid/acid_db_setup.php,终于轻舟已过万重山。。
点击“Create ACID AG”按钮,让系统自动在mysql中建立 acid 运行必需的数据库
但是浏览器没有反应,点击右上角maintenance发现有报错,没想到将登太行雪满山。。
解决办法:
手动导入数据库。
mysql -u root -p //进入数据库,输入密码
use snort //进入该数据库,后再执行下面的的命令
source c:\AppServ\www\acid\create_acid_tbls_mysql.sql;
数据库建立成功,很是感动。
点进Goto the Main page to use the application.报错。
还是建立的表不够,有缺失。
终于我在github找到大佬rammar18发布的ids/create_mysql,可以建立更全的支持acid运行的数据库。
GitHub - rammar18/ids: solved ids Database ERROR:Table 'snort.iphdr' doesn't exist
code下来后,解压,注意将create_mysql加上后缀名.sql
在mysql里运行下列命令导入资源
use snort
source C:\AppServ\www\acid\create_mysql.sql
然后点进main page成功。
然后点进main page成功。
老师给的教程里有个create_mysql,当时不知道是什么,现在醒悟其实就是这个,但是acid给创建的表太少,所以导致报错。
ACID(Analysis Console for Intrusion Database)是入侵数据库分析控制台,它是一个基于 PHP的分析引擎,能够搜索和处理不同 IDS、防火墙、网络监视工具所生成的网络安全事件数据库,其功能包括用户搜索界面、包浏览、警报处理和图表统计等。需要ADODB(Active Data Obiects Data Base,是一种 PHP存取数据库的中间件)和JpGraph(一个面向对象的图形构建 PHP 库)组件提供支撑。
至此实在是非常高兴啊,哈哈哈。