Distributed workload execution across cloud VPS fleets
Features •
Installation •
Quick Start •
Usage •
Documentation •
Providers
Fleex spawns fleets of VPS instances across multiple cloud providers, distributes workloads via SSH, and aggregates results. Scale your security tools like masscan, nuclei, httpx, ffuf, and puredns across hundreds of machines in minutes.
Features
- Multi-Provider Support - Linode, DigitalOcean, Vultr, and custom VMs
- Fleet Management - Spawn, scale, and destroy fleets with simple commands
- Distributed Scanning - Automatically split input files and distribute across fleet
- Build System - Provision instances with pre-configured tool recipes
- Workflow Pipelines - Chain multiple tools together in distributed pipelines
- Result Aggregation - Automatically collect and merge results from all instances
- Cost Estimation - Estimate costs before running scans
- Snapshot Support - Create reusable images from provisioned instances
Installation
Using Go
go install github.com/FleexSecurity/fleex@latest
From Source
git clone https://github.com/FleexSecurity/fleex.git
cd fleex
go build -o fleex .
Pre-built Binaries
Download from Releases
Quick Start
1. Initialize Configuration
# Interactive setup wizard
fleex init --wizard
# Or quick setup
fleex init
2. Spawn a Fleet
# Spawn 10 instances named "scan"
fleex spawn -n scan -c 10
# Spawn with automatic provisioning
fleex spawn -n scan -c 10 --build security-tools
3. Run a Distributed Scan
# Run nuclei across fleet
fleex scan -n scan -i targets.txt -c "nuclei -l {vars.INPUT} -o {vars.OUTPUT}"
# Or use a workflow
fleex workflow run -w quick-scan -n scan -i targets.txt -o results.txt
4. Clean Up
# Delete fleet when done
fleex delete -n scan
Usage
Fleet Management
fleex spawn -n <name> -c <count> # Create fleet
fleex ls # List all instances
fleex status -n <name> # Detailed fleet status
fleex delete -n <name> # Delete fleet
Build & Provision
fleex build list # List available recipes
fleex build show <recipe> # Show recipe details
fleex build run -r <recipe> -n <fleet> # Provision fleet
fleex build verify -r <recipe> -n <fleet> # Verify installation
Scanning
# Direct command
fleex scan -n <fleet> -i input.txt -c "command {vars.INPUT} -o {vars.OUTPUT}"
# Using module file
fleex scan -n <fleet> -m module.yaml
# Using workflow
fleex workflow run -w <workflow> -n <fleet> -i input.txt -o output.txt
Remote Operations
fleex ssh -n <box-name> # SSH into instance
fleex scp -n <fleet> -s local -d /remote/path # Copy files
fleex run -n <fleet> -c "command" # Execute on all instances
Utilities
fleex estimate -n <fleet> -h 2 # Estimate cost for 2 hours
fleex images list # List available images
fleex images create -n <box> -l <label> # Create snapshot
Configuration
Configuration is stored in ~/.config/fleex/config.json:
{
"providers": {
"linode": {
"token": "your-api-token",
"region": "us-east",
"size": "g6-nanode-1",
"image": "linode/ubuntu22.04",
"port": 22,
"username": "root"
}
},
"ssh_keys": {
"public_file": "~/.config/fleex/ssh/id_rsa.pub",
"private_file": "~/.config/fleex/ssh/id_rsa"
},
"settings": {
"provider": "linode"
}
}
Adding Providers
fleex init --add-provider digitalocean
fleex init --add-provider vultr
Supported Providers
| Provider |
Status |
Notes |
| Linode |
Full Support |
Recommended |
| DigitalOcean |
Full Support |
|
| Vultr |
Full Support |
|
| Custom VMs |
Full Support |
Bring your own servers |
Documentation
Full documentation available at fleexsecurity.github.io/fleex-docs
Project Structure
fleex/
├── cmd/ # CLI commands (Cobra)
├── pkg/
│ ├── controller/ # Business logic
│ ├── services/ # Provider implementations
│ ├── provider/ # Provider interface
│ ├── models/ # Data structures
│ ├── sshutils/ # SSH/SCP operations
│ ├── utils/ # Utilities
│ └── ui/ # Terminal UI components
└── configs/ # Default configurations
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature)
- Commit your changes (
git commit -m 'Add amazing feature')
- Push to the branch (
git push origin feature/amazing-feature)
- Open a Pull Request
Support the Project
If you find Fleex useful, consider supporting the developers:
Cloud Provider Referrals
Support the project by using our referral links:
Authors
License
Fleex is distributed under the Apache-2.0 License.