雨云服务器助你轻松搭建内网穿透,解决无公网IP问题。-X黑手网
点击查看-X黑手网
点击查看-X黑手网
GoPhish实战指南:从零开始的搭建与使用全教程

GoPhish实战指南:从零开始的搭建与使用全教程

一、GoPhish 简介

GoPhish 是一个开源的网络钓鱼工具包,专为企业和渗透测试人员设计,用于进行安全意识培训和模拟钓鱼攻击。它具有用户友好的界面,可以轻松创建和管理钓鱼活动。

使用教程

二、环境准备

1. 系统要求

  • Linux/系统

2. 下载 GoPhish

下载地址和使用体验:Gophish – Login

体验账号和密码

下载地址

# 解压下载的文件
unzip gophish.zip  

# 进入目录
cd gophish

# 修改配置文件
nano config.json

修改 config.json 文件中的以下内容:

{
    "admin_server": {
        "listen_url": "0.0.0.0:3333",
        "use_tls": false
    },
    "phish_server": {
        "listen_url": "0.0.0.0:8080",
        "use_tls": false
    }
}

2. 启动 GoPhish

chmod +x gophish
./gophish

四、基本使用

1. 登录管理界面

访问 http://<your-server-ip>:3333 

以上为一般不需要域名的方式,以下为我使用的方式

五、宝塔域名搭建方式

1. 域名解析到你的服务器,这儿不多说,要解析两个域名,一个作为后台管理域名使用,一个作为钓鱼页面域名使用

2.如图,打开go项目

image

3.如图,添加go项目,首先你的压缩包要先解压哈,然后找到压缩包里面的gophish文件,端口填3333或者你改的端口,执行命令改为./gophish,绑定你的域名

image

4.修改 config.json 文件中的以下内容:主要改成你的域名和你的端口就行

{
    "admin_server": {
        "listen_url": "127.0.0.1:3333",
        "use_tls": false,
        "csrf_key": "random_generated_key_here",
        "trusted_origins": [
            "https://xftf.xheishou.top"
        ]
    },
    "phish_server": {
        "listen_url": "0.0.0.0:8443",
        "use_tls": true,
        "cert_path": "gophish_admin.crt",
        "key_path": "gophish_admin.key"
    },
    "db_name": "sqlite3",
    "db_path": "gophish.db",
    "migrations_prefix": "db/db_",
    "contact_address": "",
    "logging": {
        "filename": "",
        "level": ""
    }
}

5.部署你的ssl

image

6.把配置文件内容改成如下:主要改域名和证书位置

# 管理后台服务器配置
server {
    listen 80;
    listen 443 ssl http2;
    server_name xftf.xheishou.top;  # 管理后台域名

    # SSL 配置(管理后台)
    ssl_certificate    /www/server/panel/vhost/cert/gophish/fullchain.pem;
    ssl_certificate_key    /www/server/panel/vhost/cert/gophish/privkey.pem;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;

    # 强制 HTTPS
    if ($scheme != "https") {
        return 301 https://$host$request_uri;
    }

    # 代理到 GoPhish 管理后台(3333 端口)
    location / {
        proxy_pass http://127.0.0.1:3333;
        proxy_set_header Host 127.0.0.1:$server_port;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header REMOTE-HOST $remote_addr;
        add_header X-Cache $upstream_cache_status;
        proxy_set_header X-Host $host:$server_port;
        proxy_set_header X-Scheme $scheme;
        proxy_connect_timeout 30s;
        proxy_read_timeout 86400s;
        proxy_send_timeout 30s;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }

    # 日志配置
    access_log  /www/wwwlogs/gophish_admin_access.log;
    error_log   /www/wwwlogs/gophish_admin_error.log;
}

# 钓鱼页面服务器配置
server {
    listen 80;
    listen 443 ssl http2;
    server_name x.xheishou.top;  # 钓鱼页面域名

    # SSL 配置(钓鱼页面)
    ssl_certificate    /www/server/panel/vhost/cert/gophish/fullchain.pem;
    ssl_certificate_key    /www/server/panel/vhost/cert/gophish/privkey.pem;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;

    # 强制 HTTPS
    if ($scheme != "https") {
        return 301 https://$host$request_uri;
    }

    # 代理到 GoPhish 钓鱼页面(8443 端口)
    location / {
        proxy_pass https://127.0.0.1:8443;  # 注意这里是 HTTPS(因为 GoPhish 的 phish_server 启用了 TLS)
        proxy_ssl_verify off;  # 跳过证书验证(因为 GoPhish 使用自签名证书)
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        # 禁用 Referer 校验(如果后端服务没有特殊要求)
        proxy_hide_header X-Frame-Options;
        proxy_hide_header Content-Security-Policy;
    }

    # 日志配置
    access_log  /www/wwwlogs/gophish_phish_access.log;
    error_log   /www/wwwlogs/gophish_phish_error.log;
}

image

7.把以下文件的内容的证书换成你的:这是钓鱼页面的域名证书

image

8.至此启动项目,访问你的后台管理域名即可

image

常见问题解决

1.解决服务器使用gophish无法发送邮件的办法

这里的原因是有些服务器厂商限制了25端口的开放,也就无法使用25端口来使用smtp来进行发送邮件,阿里云和腾讯云都是去申请使用25端口,这里我的方法去使用465端口来进行发送邮件。

具体实现为:这里的HOST使用邮件服务器加:465就能发送成功了。

image

2.域名访问配置要点

  1. 域名购买与指向
    • 购买一个与目标组织相似的域名(用于钓鱼)
    • 将域名A记录指向你的Gophish服务器IP(用于后台管理)
    • 还可以搭建与目标相似的邮件发送服务
© 版权声明
THE END
喜欢就支持一下吧
点赞11赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容