Cross-platform scripts to deploy GoPhish phishing simulation platform.
# 1. Clone and run installer
git clone https://github.com/Rangizingo/gophish-installer.git
cd gophish-installer
chmod +x install-gophish.sh
./install-gophish.sh
# 2. Save the admin password shown at the end
# 3. When prompted for Cloudflare Tunnel, say "y" and enter your subdomain
# 4. Install tkinter for the GUI
sudo apt install python3-tk
# 5. Start tunnel and GUI (when ready for campaigns)
cloudflared tunnel run gophish &
python3 email-admin-gui-linux.py# 1. Clone and run installer (as Admin)
git clone https://github.com/Rangizingo/gophish-installer.git
cd gophish-installer
.\install-gophish.ps1
# 2. Save the admin password shown at the end
# 3. When prompted for Cloudflare Tunnel, say "y" and enter your subdomain
# 4. Start tunnel and GUI (when ready for campaigns)
cloudflared tunnel run gophish
.\email-admin-gui.ps1| Task | Command |
|---|---|
| Start GoPhish | cd ~/gophish && docker compose up -d |
| Start Tunnel | cloudflared tunnel run gophish |
| Open GUI (Linux) | python3 email-admin-gui-linux.py |
| Open GUI (Windows) | .\email-admin-gui.ps1 |
| Check status | ./install-gophish.sh --check |
| GoPhish Admin | https://localhost:3333 |
| Platform | Script | Status |
|---|---|---|
| Windows 10/11 | install-gophish.ps1 |
Full support (GUI tools included) |
| Linux (Ubuntu/Pop!_OS/Debian) | install-gophish.sh |
Core installer |
- Ubuntu, Pop!_OS, Debian, Fedora, or Arch-based distro
- Internet connection
- sudo privileges
The script will automatically install Docker if needed.
chmod +x install-gophish.sh
./install-gophish.sh./install-gophish.sh --check./install-gophish.sh --uninstallsudo usermod -aG docker $USER
# Log out and back in, then:
docker ps # should work without sudo- Windows 10/11
- Internet connection
- Administrator privileges
The script will automatically install:
- Chocolatey (package manager)
- WSL2 (Windows Subsystem for Linux)
- Docker Desktop
# Requires admin
.\install-gophish.ps1.\install-gophish.ps1 -CheckOnly.\install-gophish.ps1 -Uninstall.\install-gophish.ps1 -LogPath "C:\logs\gophish-install.log" -VerboseBoth install scripts offer to set up a permanent Cloudflare Tunnel after GoPhish installs. This gives you a fixed URL like https://phish.yourdomain.com instead of random URLs that change each time.
You'll be prompted: "Do you want to set up a permanent Cloudflare Tunnel?"
- If yes, a browser opens for Cloudflare login
- Enter a tunnel name (default:
gophish) - Enter your subdomain (e.g.,
phish.yourdomain.com) - Config is saved to
~/.cloudflared/config.yml
# Linux
./install-gophish.sh --tunnel
# Windows
.\install-gophish.ps1 -TunnelOnly# Foreground (see logs)
cloudflared tunnel run gophish
# Background (Linux)
cloudflared tunnel run gophish &
# Background (Windows - new terminal)
Start-Process cloudflared -ArgumentList "tunnel run gophish" -WindowStyle Hidden| Feature | Quick Tunnel | Permanent Tunnel |
|---|---|---|
| URL | Random (changes each time) | Fixed (e.g., phish.yourdomain.com) |
| Old campaign links | Break on restart | Always work |
| Setup | None | One-time Cloudflare login |
| DNS | Auto | Routes to your domain |
After installation (both platforms):
| Service | URL |
|---|---|
| Admin UI | https://localhost:3333 |
| Phishing Server | http://localhost:80 |
| Landing Page (with tunnel) | Your configured subdomain |
Default credentials are displayed after installation. Change the password immediately.
- Login to https://localhost:3333
- Change admin password (Account Settings)
- Create a Sending Profile (SMTP server config)
- Create an Email Template
- Create a Landing Page
- Import or create User Groups
- Create and launch Campaign
Campaign data is stored in Docker volume gophish-data. This persists across container restarts.
To backup:
docker run --rm -v gophish-data:/data -v $(pwd):/backup alpine tar czf /backup/gophish-backup.tar.gz /dataemail-admin-gui.ps1- WinForms GUI for M365 email management and campaign control- Exchange Online integration scripts
- Various PowerShell diagnostic tools
email-admin-gui-linux.py- Tkinter GUI (equivalent to Windows version)- Requires:
sudo apt install python3-tk
update-gophish.py- Update templates via API (Python)oci-retry-launch.py- OCI cloud deployment helper (Python)templates/- HTML email and landing page templates
AUTHORIZED USE ONLY
This tool is for legitimate security awareness testing. Ensure you have:
- Written authorization from organization leadership
- Documented scope and rules of engagement
- Data handling procedures for campaign results
- Compliance with applicable regulations (PCI-DSS, SOC2, etc.)
Campaign data contains sensitive employee information. Handle with care.
sudo systemctl start docker
sudo systemctl enable dockersudo usermod -aG docker $USER
# Log out and back in- Ensure virtualization is enabled in BIOS
- Restart after WSL2 installation
- Check Docker Desktop logs
- Port 80 or 3333 may be in use
- Edit
~/gophish/docker-compose.ymlto change ports
docker logs gophishGoPhish is licensed under MIT. This installer script is provided as-is for authorized use.