Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
holos — Herramienta declarativa de orquestación de máquinas virtuales KVM/QEMU que utiliza archivos de composición YAML. Gestiona pilas de múltiples VMs con cloud-init, SSH, paso PCI y verificación de imágenes sin libvirt ni XML. | Kitploit
Herramientas/GitHubGitHub/zeroecco/holos
Seguridad de Infraestructura en la NubeUtilidades de Propósito GeneralScripting y AutomatizaciónVirtualización de SeguridadDevSecOpsSeguridad de Hardware
GitHubzeroecco/holos

holos

Herramienta declarativa de orquestación de máquinas virtuales KVM/QEMU que utiliza archivos de composición YAML. Gestiona pilas de múltiples VMs con cloud-init, SSH, paso PCI y verificación de imágenes sin libvirt ni XML.

Ver Repositorio
1445hace 7 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
holos

Docker compose para KVM. Define pilas multi-VM en un solo archivo YAML. Sin libvirt, sin XML, sin plano de control distribuido.

Sitio web y documentación: https://zeroecco.github.io/holos/

La primitiva es una VM, no un contenedor. Cada instancia de carga de trabajo obtiene su propio límite de kernel, capa qcow2, semilla cloud-init y acceso SSH generado.

Quick Start

Requiere Linux + /dev/kvm. Las compilaciones de macOS ejecutan comandos sin conexión como validate, import, images y pull, pero up y run necesitan un host KVM.

Una VM desechable, sin archivo compose:

root@kitploit:~
holos run alpine
holos exec <printed-project-name>
holos down <printed-project-name>

Una pila de un solo servicio que puedes curl. Guarda como holos.yaml:

root@kitploit:~
name: hello

services:
  web:
    image: ubuntu:noble
    ports:
      - "8080:80"
    cloud_init:
      packages:
        - nginx
      write_files:
        - path: /var/www/html/index.html
          content: "hello from holos\n"
      runcmd:
        - systemctl restart nginx
root@kitploit:~
holos up
curl localhost:8080
holos down hello

Esa es una VM real arrancando una imagen cloud, instalando un paquete, escribiendo configuración y reenviando un puerto del host.

Install

Los binarios precompilados se adjuntan a cada lanzamiento de GitHub:

root@kitploit:~
TAG=v0.6.1
ASSET=holos_${TAG#v}_Linux_x86_64.tar.gz
BASE=https://github.com/zeroecco/holos/releases/download/$TAG
curl -LO $BASE/$ASSET
curl -LO $BASE/checksums.txt
grep " $ASSET$" checksums.txt | sha256sum -c -
gh attestation verify $ASSET --repo zeroecco/holos
sudo tar -xz -C /usr/local/bin -f $ASSET holos
holos version
holos doctor

Las páginas de lanzamiento incluyen sumas de verificación SHA-256 y atestaciones de artefactos de GitHub para procedencia firmada. Verifica ambos antes de instalar binarios en hosts de producción.

O compilar desde la fuente:

root@kitploit:~
go build -o bin/holos ./cmd/holos
go test ./...
bin/holos doctor

CLI

root@kitploit:~
holos up [-f holos.yaml] [--locked] [--lockfile path] [--lock-timeout 5m|--no-wait]
                                     start all services
holos run [flags] <image> [-- cmd...] launch a one-off VM
holos down <project>                 stop and remove a project
holos ps [-f holos.yaml]             list running projects
holos start [-f holos.yaml] [svc]    start a stopped service or all services
holos stop [-f holos.yaml] [svc]     stop a service or all services
holos console <project> [<inst>]     attach serial console
holos exec <project> [<inst>] [-- cmd...]
                                     SSH into an instance
holos logs <project> [<svc|inst>]    show console logs
holos inspect [-f holos.yaml] [project|instance]
                                     inspect state as JSON
holos validate [-f holos.yaml]       validate compose file (--capacity/--network)
holos pull <image>                   pull a cloud image
holos verify <image>|--all           verify cached image checksums
holos images                         list available images
holos images lock -f holos.yaml [-o holos.images.lock]
                                     write project image lockfile
holos snapshots {create|list|rm|restore|export} ... manage root snapshots
holos volumes [-f holos.yaml] [--json]
                                     list named volumes
holos volumes rm <project> <volume>  remove a detached named volume
holos volumes export <project> <volume> <path>
                                     export a detached named volume
holos volumes snapshot <project> <volume> <snapshot>
                                     snapshot a detached named volume
holos volumes snapshots <project> <volume>
                                     list volume snapshots
holos volumes snapshot-rm <project> <volume> <snapshot>
                                     remove a volume snapshot
holos volumes snapshot-restore <project> <volume> <snapshot>
                                     restore a volume snapshot
holos volumes snapshot-export <project> <volume> <snapshot> <path>
                                     export a volume snapshot
holos volumes resize [--shrink] <project> <volume> <size>
                                     resize a detached named volume
holos devices [--gpu]                list PCI devices and IOMMU groups
holos completion <bash|zsh|fish>      print shell completion script
holos doctor [--json]                check host dependencies
holos install [-f holos.yaml] [--system] [--enable]
                                     install a systemd unit
holos uninstall [-f holos.yaml] [--system]
                                     remove the systemd unit
holos import [vm...] [--all] [--xml file] [--connect uri] [-o file]
                                     convert virsh VMs into holos.yaml

Docs

  • Sitio web: página de inicio y documentación renderizada.
  • Guía CLI: VMs ad hoc, exec, instalación systemd, importación virsh y doctor.
  • Archivo Compose: servicios, volúmenes, healthchecks, redes, paso de PCI, aprovisionamiento Dockerfile y valores predeterminados.
  • Esquema JSON: autocompletado del editor y validación para holos.yaml.
  • Ejemplos: pilas ejecutables y plantillas con explicaciones estilo README.
  • Funciones faltantes: brechas priorizadas que se ajustan al objetivo de compose KVM de un solo host de holos.
  • Desarrollo: compilación, pruebas, requisitos del host y proceso de lanzamiento.
  • Política de seguridad: versiones compatibles e informes privados.
  • Modelo de amenazas / endurecimiento: verificación de imágenes, permisos de estado, bloqueos y orientación operativa.
  • Contribuir: convenciones de compilación, pruebas, estilo y PR.

Examples

Comienza con el pequeño ejemplo de nginx:

root@kitploit:~
holos up -f examples/alpine-nginx/holos.yaml
curl localhost:8080
holos down alpine-nginx

El directorio de ejemplos también incluye aprovisionamiento Dockerfile, paso de GPU y una pila multiservicio que muestra depends_on, configuración generada y réplicas.

Host Requirements

  • Linux con /dev/kvm
  • qemu-system-x86_64
  • qemu-img
  • Uno de cloud-localds, genisoimage, mkisofs o xorriso
  • Firmware OVMF / edk2-ovmf para UEFI o paso de PCI
  • ssh para holos exec y healthchecks

Ejecuta holos doctor para verificar el host.

Troubleshooting

SSH resets on first boot

kex_exchange_identification: read: Connection reset by peer normalmente significa que cloud-init todavía está regenerando las claves del host y reiniciando sshd. holos exec espera hasta 60s por defecto, pero los arranques iniciales muy lentos pueden necesitar otro reintento o holos exec -w 5m <project>.

Console shows Login incorrect

La consola serie puede intentar el inicio de sesión automático antes de que cloud-init cree el usuario. Espera a cloud-init ... finished en el registro de la consola, luego usa holos exec. Las imágenes cloud generalmente no incluyen una contraseña de consola, y holos no agrega una.

up fails on macOS

KVM es una característica del kernel de Linux. Los binarios de macOS son útiles para la creación de contenido y comandos sin conexión, pero holos up y holos run deben ejecutarse en un host KVM Linux.

Non-Goals

holos no es Kubernetes. No intenta resolver agrupación multi-host, migración en vivo, mallas de servicios, redes superpuestas, programadores, CRDs o quórum del plano de control.

El objetivo es hacer que KVM sea viable para pilas de un solo host sin importar la forma operativa de Kubernetes.

License

Licenciado bajo la Licencia Apache, Versión 2.0. Consulta NOTICE para atribuciones.

Descargar herramienta