create_custom_os_template
Create custom operating system templates with specific packages and configurations from any ISO. Supports Linux, Windows, BSD, macOS, and other operating systems for cyber range environments.
Instructions
Create a custom OS template with specific packages and configuration.
This tool allows you to create custom Ludus templates from ANY operating system by providing an ISO URL. The OS type can be auto-detected from the ISO URL/filename, or explicitly specified. Supports Linux, Windows, BSD, macOS, and any other OS.
Args: name: Template name (e.g., "ubuntu-22.04-pentesting") os_type: OS type ("linux", "windows", "bsd", "macos") - auto-detected if None os_version: OS version (e.g., "22.04", "2022", "11") - used for default ISO lookup iso_url: Custom ISO URL (required if os_version not in defaults, supports ANY ISO) iso_checksum: Optional ISO checksum for verification (sha256) iso_checksum_type: Checksum type (default: "sha256") packages: List of packages to install (e.g., ["docker.io", "nginx", "postgresql"]) ansible_roles: List of Ansible roles to apply (e.g., ["geerlingguy.docker"]) description: Template description disk_size: Disk size (default: "40G") memory: Memory in MB (default: 4096) cores: CPU cores (default: 2) ensure_template_roles: Automatically install template roles (CommandoVM, FlareVM, REMnux) if needed auto_detect_os: Auto-detect OS type from ISO URL (default: True)
Returns: Template creation result with file paths and instructions
Example: # Create a custom Ubuntu pentesting template result = await create_custom_os_template( name="ubuntu-22.04-pentesting", os_type="linux", os_version="22.04", packages=["nmap", "metasploit-framework", "burpsuite"], description="Custom Ubuntu 22.04 with pentesting tools" )
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| os_type | No | ||
| os_version | No | ||
| iso_url | No | ||
| iso_checksum | No | ||
| iso_checksum_type | No | sha256 | |
| packages | No | ||
| ansible_roles | No | ||
| description | No | ||
| disk_size | No | 40G | |
| memory | No | ||
| cores | No | ||
| ensure_template_roles | No | ||
| auto_detect_os | No |