A comprehensive platform for cybersecurity training, featuring isolated lab environments and virtual machine management. Perfect for educational institutions, cybersecurity professionals, and organizations conducting security training.
🔒 Secure Lab Environments
- Isolated networking for safe exploit practice
- Pre-configured security lab templates
- Multi-VM scenario support
🖥️ Advanced VM Management
- Create and manage virtual machines with ease
- Real-time VM status monitoring
- Secure remote access (RDP/SSH)
👥 User Management
- Role-based access control
- Progress tracking
- Team collaboration features
🔐 Enterprise-Grade Security
- JWT-based authentication
- Network isolation
- Secure remote connections
- Python 3.7+
- VirtualBox 7.0+
- 8GB+ RAM
- 50GB+ free disk space
- Windows/Linux host OS
# Clone the repository
git clone https://github.com/your-username/cyber-training-platform.git
# Run the setup script
./setup.sh # Linux/Mac
# or
setup.bat # WindowsFor detailed setup instructions, see our Installation Guide.
We welcome contributions! See our Contributing Guide for details.
This project is licensed under the MIT License - see the LICENSE file for details.
Give a ⭐️ if this project helped you!
backend/
├── app/
│ ├── api/
│ │ └── routes/ # API endpoints
│ ├── core/ # Core functionality
│ └── services/ # Business logic
├── tests/ # Test cases
└── scripts/ # Utility scripts
- Set up Python environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt- Configure environment
cp .env.example .env
# Edit .env with your settings- Install VirtualBox
# Windows
./scripts/install_virtualbox.bat
# Linux
./scripts/install_virtualbox.sh- Start the backend
python -m uvicorn app.main:app --reload- Create your first lab
# Get auth token
curl -X POST http://localhost:8000/api/auth/token -d "username=admin&password=admin123"
# Create a lab
curl -X POST http://localhost:8000/api/labs -H "Authorization: Bearer YOUR_TOKEN"pytest
pytest --cov=app tests/- Change default credentials in production
- Use HTTPS in production
- Follow security guidelines in Security Guide
See ROADMAP.md for planned features and development timeline.
