请求协助编写适用于Mac M1的Evilginx2 Dockerfile
Evilginx2 Dockerfile 构建指南(适配Mac M1/arm64)
完整Dockerfile示例
# 编译阶段:用Go官方镜像提供编译环境 FROM golang:1.21-bookworm AS builder WORKDIR /app # 安装编译依赖 RUN apt-get update && apt-get install -y git make # 克隆Evilginx2仓库(如果用本地修改后的代码,替换成COPY . .即可) RUN git clone https://github.com/kgretzky/evilginx2.git . # 编译二进制文件 RUN make # 运行阶段:用轻量Debian镜像减小镜像体积 FROM debian:bookworm-slim # 安装运行依赖(ca-certificates用于证书验证) RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/* WORKDIR /app # 从编译阶段复制编译好的二进制文件 COPY --from=builder /app/evilginx2 . # 复制默认phishlets COPY --from=builder /app/phishlets ./phishlets # 复制配置模板 COPY --from=builder /app/config.json.dist ./config.json # 暴露Evilginx2所需端口:HTTP(80)、HTTPS(443)、DNS(53 TCP/UDP) EXPOSE 80/tcp EXPOSE 443/tcp EXPOSE 53/tcp EXPOSE 53/udp # 启动Evilginx2 CMD ["./evilginx2", "-p", "./phishlets", "-c", "./config.json"]
构建与运行说明
构建镜像
在Dockerfile所在目录执行:docker build -t evilginx2-arm64 .若遇平台兼容问题,指定平台参数:
docker build --platform linux/arm64/v8 -t evilginx2-arm64 .运行容器
Evilginx2需要特权模式修改网络配置,执行:docker run -d --name evilginx2 --privileged \ -p 80:80 -p 443:443 -p 53:53/tcp -p 53:53/udp \ evilginx2-arm64添加自定义phishlets
在Dockerfile所在目录创建phishlets文件夹,放入你的自定义文件,然后在Dockerfile运行阶段添加一行(放在默认phishlets复制命令之后,确保覆盖默认内容):COPY phishlets ./phishlets
Mac M1适配注意事项
- Docker Desktop默认已支持arm64架构,无需额外开启Rosetta。
- 若编译时出现依赖缺失,可在编译阶段的
apt-get install命令中补充对应的包(比如libpcap-dev,根据报错信息调整)。
内容的提问来源于stack exchange,提问作者Bartosz Cieszewski
相关产品推荐
相关产品推荐

