1. 基本步骤参考
https://blog.csdn.net/qq_42939527/article/details/107485116?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link
过程中遇到问题:运行./gophish出现permission denied
解决办法:chmod 777 gophish
2. 默认的数据库为SQLite,若想要更改数据库,可更换为mysql(gophish 0.3及以后的版本支持)
官方攻略 https://docs.getgophish.com/user-guide/installation
首先要安装mysql,参考https://docs.getgophish.com/user-guide/installation
接着要创建gophish数据库,
CREATE DATABASE gophish CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
然后,在gophish安装目录下,找到config.json并修改如下两项
"db_name" : "mysql",
"db_path" : "root:@(:3306)/gophish?charset=utf8&parseTime=True&loc=UTC",
其中db_path部分的具体参数为:
username:password@(host:port)/database?charset=utf8&parseTime=True&loc=UTC
我的数据库安装到了gophish所在的同一台虚机上,所以host直接用的127.0.0.1
同时,对于mysql≥5.7版本,需要在数据库配置文件添加
(因为gophish的时间格式和这个版本的mysql不匹配):
配置文件位置:我的版本是在/etc/my.cnf,攻略提供的版本是/etc/mysql/mysql.cnf
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
PS:因为我忘记重启mysql服务了,所以上条配置没生效,在gophish后台生成campaign时候会报错 Error 1292: Incorrect datetime value: '0000-00-00' for column 'send_by_date' at row 1
https://github.com/gophish/gophish/issues/1845
这个时候,登录到mysql,先看一下sql_mode值;
SELECT @@sql_mode;
然后做修改
set GLOBAL sql_mode='%';
%指的是上一步查询的结果里去掉NO_ZERO_IN_DATE 和NO_ZERO_DATE的结果。
最后,重启gophish服务。
我把gophish放到后台了所以没法直接退出,就走的下面的流程
ps -ef|grep gophish
查到gophish对应的进程XXX
kill XXX
干掉该进程
3. 对于email opened数值不对的问题,
https://github.com/gophish/gophish/issues/1410
这个可能跟收信客户端不去下载remote images有关
4. 如果想将钓鱼页面部署在另一台服务器上
https://github.com/gophish/gophish/issues/794
根据17年的回复,因为gophish是和数据库完全绑死的,钓鱼页面得在数据库里。我理解是只能另外再部一台gophish(2),钓鱼页面在它的数据库,然后当前的gophish(1)指向(2)的那个数据库