Module introduction


In this module, you’ll build the core platform for the C2 environment. Depending on your situation, choose the most appropriate starting point:

  • Bare metal server (no virtualization yet): If you plan to install a new virtualization platform on a bare metal server, start with section 2.1 and follow the instructions for setting up Proxmox VE.

  • Existing virtualization platform: If you need (or are required) to use an existing (corporate-managed) virtualization platform (e.g., Proxmox VE or vSphere), you can start at section 2.2. If you plan to use this platform for live red-teaming engagements, ensure that your virtualization platform meets the hardening baseline described in sections 2.1.5 and 2.1.6.

  • Desktop hypervisor for learning purposes (e.g. VMware Workstation): If you are using a desktop hypervisor purely for training or lab purposes, you can also start at section 2.2.

From there, you’ll create a Debian-based server template, provision the management server, and set up OPNsense with OpenVPN for secure remote access and network segmentation. You’ll then deploy Apache Guacamole as a central access gateway into the internal C2 infrastructure, with fine-grained role-based permissions and full session auditing.


Platform Compatibility Warning:

Please be aware that this course officially uses Proxmox VE. If you deploy a different hypervisor, you will need to adapt the Proxmox-specific steps in the training material to your chosen virtualization stack. A different hypervisor choice also directly impacts the provided automated deployment dashboard, which relies on Proxmox functionality out of the box. While the automation is tailored to Proxmox, adapting the dashboard to alternatives like vSphere is entirely possible; we have successfully deployed this automation dashboard within vSphere environments ourselves, and the underlying logic can be modified to fit your enterprise architecture.


Credential Management

Starting with this module, you will create and use several different accounts (for systems, services, and applications). We strongly recommend storing all credentials in a password manager. You can use any manager you prefer. In this course, we will use KeePassXC, because it runs on macOS, Linux, and Windows and supports auto-type (e.g. {MODE=VIRTUAL}{PASSWORD}{ENTER}), which is especially useful in the beginning when copy/paste on a VM is limited or inconvenient.

RT-C2E: Advanced Red Team C2 Infrastructure Engineering

Buy nowLearn more

Course Introduction

  • What is this course about?
  • What you will learn
  • Requirements
  • How the rest of this course is structured

Module 1 - C2 Infrastructure Design

  • Module introduction
  • 1.1 Hosting the infrastructure
  • 1.2 Operator workflow
  • 1.3 Design principles
  • 1.4 Infrastructure blue print
  • Assignment

Module 2 - Build the Core Platform

  • Module introduction
  • 2.1 Virtualization platform
  • 2.2 Debian VM template
  • 2.3 OPNsense platform
  • 2.4 Management server (P1)
  • 2.5 Remote access VPN
  • 2.6 Network firewall
  • 2.7 Remote access gateway
  • 2.8 Fine-grained access control
  • Assignment

Module 3 - On-prem essentials

  • Module introduction
  • mgmt-server-package.zip
  • 3.1 Management server (P2)
  • 3.2 Operator Clients
  • 3.3 Client deployment
  • 3.4 Teamservers
  • 3.5 Cobalt Strike
  • 3.6 Cobalt Strike connectivity
  • 3.7 Mythic
  • 3.8 Mythic logging
  • 3.9 Mythic connectivity
  • Assignment

Module 4 - Cloud essentials & Connectivity

  • Module Introduction
  • 4.1 Redirectors
  • 4.2 Providers & registrars
  • 4.3 VPS deployment
  • 4.4 Restricted VPS access
  • 4.5 RedWarden
  • 4.6 HAProxy
  • 4.7 Nebula
  • 4.8 Lighthouse
  • 4.9 Listener
  • 4.10 Forward C2 traffic
  • Assignment

Module 5 - Expand the Infrastructure

  • Module Introduction
  • 5.1 Centralized logging
  • 5.2 Grafana Loki
  • 5.3 Grafana Alloy C2 logs
  • 5.4 Grafana Alloy CLI logs
  • 5.5 Grafana data analytics
  • 5.6 Edge collectors
  • 5.7 Internal file sharing
  • 5.8 Secure data storage
  • 5.9 Operational attack infrastructure
  • Assignment

Module 6 - C2 Automation

  • Module Introduction
  • dashboard-package.zip
  • 6.1 Management dashboard
  • 6.2 Automated deployment
  • 6.3 Deployment flow
  • 6.4 Troubleshooting
  • 6.5 Guacamole connectivity
  • 6.6 User management
  • 6.7 Deployment cleanup
  • 6.8 Health monitor
  • Assignment

Bonus Content

  • B.1 Notifications via aggressor script

Closing Remarks

  • Course Wrap-Up