Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

FeedsContactPrivacy© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
Labtainers — Labtainers: A Docker-based cyber lab framework | Kitploit
Tools/GitHubGitHub/mfthomps/labtainers
Vulnerability AnalysisForensicsWeb SecurityNetwork SecurityDigital ForensicsCryptographyCTFPenetration TestingIntrusion DetectionLearning & EducationBinary ExploitationLabs & Practice
31079785 days agoReviewed by Kitploit
GitHubmfthomps/labtainers

Labtainers

Labtainers: A Docker-based cyber lab framework

View RepositoryWebsite

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

Labtainers: A Docker-based cyber lab framework

Labtainers include more than 50 cyber lab exercises and tools to build your own. Import a single VM appliance or install on a Linux system and your students are done with provisioning and administrative setup, for these and future lab exercises.

  • Consistent lab execution environments and automated provisioning via Docker containers
  • Multi-component network topologies on a modestly performing laptop computer
  • Automated assessment of student lab activity and progress
  • Individualized lab exercises to discourage sharing solutions

Labtainers provide controlled and consistent execution environments in which students perform labs entirely within the confines of their computer, regardless of the Linux distribution and packages installed on the student's computer. Labtainers run on our [VM appliance][vm-appliancee], or on any Linux with Dockers installed. And Labtainers is available as cloud-based VMs, e.g., on Azure as described in the Student Guide.

See the Student Guide for installation and use, and the Instructor Guide for student assessment. Developing and customizing lab exercises is described in the Designer Guide. See the Papers for additional information about the framework. The Labtainers website, and downloads (including VM appliances with Labtainers pre-installed) are at https://nps.edu/web/c3o/labtainers.

Distribution created: 09/11/2026 11:33
Revision: v1.4.4n
Commit: 9f1012dc
Branch: master

Content

Distribution and Use

Guide to directories

Support

Release notes

Distribution and Use

Please see the licensing and distribution information in the docs/license.md file.

Guide to directories

  • scripts/labtainers-student -- the work directory for running and testing student labs. You must be in that directory to run student labs.

  • scripts/labtainers-instructor -- the work directory for running and testing automated assessment and viewing student results.

  • labs -- Files specific to each of the labs

  • setup_scripts -- scripts for installing Labtainers and Docker and updating Labtainers

  • docs -- latex source for the labdesigner.pdf, and other documentation.

  • UI -- Labtainers lab editor source code (Java).

  • headless-lite -- scripts for managing Docker Workstation and cloud instances of Labtainers (systems that do not have native X11 servers.)

  • scripts/designer -- Tools for building new labs and managing base Docker images.

  • config -- system-wide configuration settings (these are not the lab-specific configuration settings.

  • distrib -- distribution support scripts, e.g., for publishing labs to the Docker hub.

  • testsets -- Test procedures and expected results. (Per-lab drivers for SimLab are not distributed).

  • pkg-mirrors -- utility scripts for internal NPS package mirroring to reduce external package pulling during tests and distribution.

Support

Use the GitHub issue reports, or email me at [email protected]

Also see https://my.nps.edu/web/c3o/support1

Release notes

The standard Labtainers distribution does not include files required for development of new labs. For those, run ./update-designer.sh from the labtainer/trunk/setup_scripts directory.

The installation script and the update-designer.sh script set environment variables, so you may want to logout/login, or start a new bash shell before using Labtainers the first time.

Jauary 6, 2026

  • Fixed bug introduced into installation script due to indents.

December 30, 2025

  • Modified checkwork report format to be vertical; video guide for headless; convenience paths

October 15, 2025

  • Revised packet-introspection lab to update link for maxmind geo location database and note use of legacy database.

April 24, 2025

  • Fixed imodule to properly create missing directories per pull request #96

November 22, 2024

  • Replaced google cloud VM, this time due to a failure of systemd within containers.

September 23, 2024

  • Replaced google cloud VM, which was using the wrong Docker version

September 10, 2024

  • Typo in creation of imodule path

July 26, 2024

  • Modify capinout to not use grantpt clib function, which now seems to crash when run from a container.

July 22, 2024

  • Add a base container for Ubuntu22 and changes to framework to support that.

July 5, 2024

  • Migrate to Ubuntu 24 as the VM appliance
  • The docker pyhton package uses a broken python http library, requires package downgrade.
  • Use virtual python environment to avoid Ubuntu lockdown of python packages.
  • Add boot parameter to allow sharing systemd between containers and the VM.
  • Redirect error messages from broken tar utility on updates.
  • Ubuntu update breakage for msc packages (see update-ubuntu.sh) for version 18 VMs
  • The docker-compose command is broken, use "docker compose"
  • Force socket permissions in headless labtainers.
  • Update headless Labtainers to use Ubuntu 24

November 27, 2023

  • Add Google Cloud Platform option for ubuntu22 on ec2 machine.

September 18, 2023

  • Previous fix implementation was flawed.

August 8, 2023

  • Handle change to DockerHub image json format. Thanks Kees!

April 17, 2023

  • Force use latest lab version, e.g., iptables2 intead of iptables. Fix tab completion to only display latest. (Issue #77)
  • CyberCIEGE lab installation was failing due to X11 race condition. (Issue #76)
  • Note in CyberCIEGE readme to direct students to save collected logs in $HOME directory. (Issue #75)
  • Radius lab checkwork was incorrectly reporting "radiusd not running", missing prestop script. (Issue #74)
  • Labedit corrupted the start configuration file when the MACVLAN_EXT option was used. (Issue #73)
Download Tool