gophish+ewomail 搭建钓鱼演练平台
字数 1639 2025-09-01 11:26:10
Gophish + EwoMail 钓鱼演练平台搭建教程
一、准备工作
1. 服务器与域名要求
-
国内服务器+国内域名:
- 必须完成域名备案
- 做好DNS反向解析
- 申请25端口解封(在云服务商控制台操作)
-
国外服务器+国外域名:
- 无需备案
- 确保VPS上25端口开放
- 建议使用CDN
2. 推荐配置
- 操作系统:Ubuntu 24
- 域名:任意可注册域名(如xxx.example.com)
- 国内注册商:阿里云、腾讯云
- 国外注册商:namesilo.com
二、DNS配置
1. 基本配置
- 将域名与VPS IP绑定
- 参考EwoMail官方DNS配置文档设置记录
- 特别注意DKIM值需要从Docker容器中获取
2. 关键DNS记录
| 类型 | 名称 | 值 |
|---|---|---|
| A | @ | 服务器IP |
| A | 服务器IP | |
| MX | @ | mail.yourdomain.com |
| TXT | @ | v=spf1 a mx ~all |
| TXT | _dmarc | v=DMARC1; p=none |
| TXT | default._domainkey | (从容器获取) |
三、Gophish搭建
1. 下载与安装
# 创建目录并下载
mkdir gophish
wget https://github.com/gophish/gophish/releases/download/v0.12.1/gophish-v0.12.1-linux-64bit.zip
unzip gophish-v0.12.1-linux-64bit.zip -d gophish
# 设置权限
cd gophish
chmod +x gophish
2. 配置文件修改
编辑config.json:
- 将管理地址改为
0.0.0.0 - 确保监听端口配置正确
3. 启动Gophish
./gophish
首次运行会显示默认账号密码,登录后应立即修改。
四、EwoMail邮件服务器搭建
1. Docker安装
docker pull bestwu/ewomail
2. 启动容器
docker run -d -h mail.yourdomain.com --restart=always \
-p 40025:25 \
-p 109:109 \
-p 110:110 \
-p 143:143 \
-p 465:465 \
-p 587:587 \
-p 993:993 \
-p 995:995 \
-p 40080:80 \
-p 48080:8080 \
-v `pwd`/mysql/:/ewomail/mysql/data/ \
-v `pwd`/vmail/:/ewomail/mail/ \
-v `pwd`/ssl/certs/:/etc/ssl/certs/ \
-v `pwd`/ssl/private/:/etc/ssl/private/ \
-v `pwd`/rainloop:/ewomail/www/rainloop/data \
-v `pwd`/ssl/dkim/:/ewomail/dkim/ \
--name ewomail bestwu/ewomail
3. DKIM密钥获取
docker exec ewomail amavisd showkeys
将输出的密钥整理后添加到DNS的DKIM记录中。
4. 访问后台
- 管理后台:
http://your-ip:48080/Center/Index/login - Webmail:
http://your-ip:40080/
五、钓鱼演练配置
1. Gophish配置步骤
-
用户与组(Users & Groups)
- 添加目标用户/组
- 支持CSV导入
-
邮件模板(Email Templates)
- 可从真实邮件复制源码
- 支持HTML编辑
- 可添加跟踪图片
-
钓鱼页面(Landing Pages)
- 克隆目标网站
- 注意:仅克隆静态页面,JS/CSS需手动调整
- 设置提交后跳转页面
-
发送配置(Sending Profiles)
- SMTP服务器:EwoMail或第三方(QQ/网易等)
- 认证信息:
- 用户名:完整邮箱地址
- 密码:SMTP授权码(第三方邮箱需单独获取)
2. 实战测试流程
- 在Gophish创建并发送钓鱼邮件
- 监控仪表盘查看点击和提交数据
- 受害者操作:
- 收到邮件
- 点击链接进入钓鱼页面
- 输入凭证后跳转至预设页面(如百度)
- 在Gophish查看收集到的凭证
六、常见问题解决
1. EwoMail登录显示"域不允许"
解决方法:
- 检查DNS解析是否正确
- 修改
/etc/hosts文件,添加:127.0.0.1 mail.yourdomain.com yourdomain.com imap.yourdomain.com smtp.yourdomain.com
2. Docker镜像拉取失败
解决方法:
- 配置Docker国内镜像源
- 确保服务器能访问国外网络
- 多次尝试或使用代理
3. CentOS系统GLIBC版本问题
建议:
- 优先使用Ubuntu系统
- 如需使用CentOS,需手动升级GLIBC
七、安全注意事项
- 仅用于合法安全测试
- 获得明确授权后方可进行钓鱼演练
- 测试完成后及时清理数据
- 遵守当地法律法规
八、扩展建议
-
钓鱼页面优化:
- 添加动态效果
- 适配移动端
- 伪造安全提示
-
邮件发送策略:
- 分批次发送
- 不同时间段发送
- 多样化发件人名称
-
数据分析:
- 统计点击率
- 分析易受攻击人群特征
- 针对性加强安全意识培训