Geegle3 is a comprehensive zero-trust CTF infrastructure framework that automates security operations and incident response for competitive cybersecurity training.
Monorepo for infrastructure and challenges of SECedu CTF 2019.
Geegle3 is designed for CTF organizers and cybersecurity educators who want to deploy a realistic, zero-trust network environment for security competitions. It enables hosting and managing CTF challenges with integrated security automation, internal communication, and incident response capabilities, simulating real-world SecOps scenarios.
This tool requires Linux AMD64 for building container images due to cross-compilation limitations. Users deploying their own CTF should replace challenges and update container registries accordingly. Proper SSL certificate setup is necessary for secure HTTPS connections. The infrastructure supports multi-language components and relies on Bazel for builds and container orchestration.
Place HTTPS certificates and keys in infra/uberproxy/certs/ and update infra/uberproxy/ssl.go accordingly
Build container images using Linux AMD64 architecture
Run `bazel build //:all_containers` to build all containers
Run `bazel run //:all_containers` to build and tag containers locally
Modify BUILD file to push container images to your own registry if deploying your own CTF
Build master server docker-compose with `bazel build //infra/jsonnet:cluster-master-docker-compose`
Use generated docker-compose files to deploy the infrastructure
bazel build //:all_containers
Build all container images for the Geegle3 infrastructure
bazel run //:all_containers
Build and tag container images locally for docker-compose deployment
bazel build //infra/jsonnet:cluster-master-docker-compose
Build docker-compose configuration for the master (shared) server