Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
holos — Outil déclaratif d'orchestration de VM KVM/QEMU utilisant des fichiers de composition YAML. Gère des piles multi-VM avec cloud-init, SSH, PCI passthrough et vérification d'image sans libvirt ni XML. | Kitploit
Outils/GitHubGitHub/zeroecco/holos
Sécurité de l'Infrastructure CloudUtilitaires GénérauxScripting et AutomatisationVirtualisation de SécuritéDevSecOpsSécurité Matérielle
GitHubzeroecco/holos

holos

Outil déclaratif d'orchestration de VM KVM/QEMU utilisant des fichiers de composition YAML. Gère des piles multi-VM avec cloud-init, SSH, PCI passthrough et vérification d'image sans libvirt ni XML.

Voir le dépôt
1445il y a 21h 45mVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
holos

Docker compose pour KVM. Définissez des piles multi-VM dans un seul fichier YAML. Pas de libvirt, pas de XML, pas de plan de contrôle distribué.

Site web et documentation : https://zeroecco.github.io/holos/

La primitive est une VM, pas un conteneur. Chaque instance de charge de travail obtient sa propre frontière de noyau, son overlay qcow2, son seed cloud-init et un accès SSH généré.

Prise en main rapide

Nécessite Linux + /dev/kvm. Les builds macOS exécutent des commandes hors ligne comme validate, import, images et pull, mais up et run nécessitent un hôte KVM.

Une VM jetable, sans fichier compose :

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

Une pile à service unique que vous pouvez curl. Enregistrez sous 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

C'est une vraie VM qui démarre une image cloud, installe un paquet, écrit une configuration et transfère un port hôte.

Installation

Les binaires pré-compilés sont joints à chaque version 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

Les pages de version incluent des sommes de contrôle SHA-256 et des attestations d'artefact GitHub pour une provenance signée. Vérifiez les deux avant d'installer des binaires sur des hôtes de production.

Ou compilez depuis les sources :

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

Documentation

  • Site web : page d'accueil et documentation rendue.
  • Guide CLI : VM ad hoc, exec, installation systemd, import virsh et doctor.
  • Fichier Compose : services, volumes, vérifications de santé, réseau, passthrough PCI, provisionnement Dockerfile et valeurs par défaut.
  • Schéma JSON : complétion dans l'éditeur et validation pour holos.yaml.
  • Exemples : piles exécutables et modèles avec explications de type README.
  • Fonctionnalités manquantes : lacunes priorisées qui correspondent à l'objectif de compose KVM mono-hôte de holos.
  • Développement : construction, test, exigences hôte et processus de publication.
  • Politique de sécurité : versions supportées et signalement privé.
  • Modèle de menace / durcissement : vérification d'image, permissions d'état, verrous et conseils opérationnels.
  • Contribution : construction, test, style et conventions PR.

Exemples

Commencez avec le petit exemple nginx :

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

Le répertoire exemples inclut également le provisionnement Dockerfile, le passthrough GPU et une pile multi-service qui montre depends_on, une configuration générée et des réplicas.

Exigences hôte

  • Linux avec /dev/kvm
  • qemu-system-x86_64
  • qemu-img
  • Un de cloud-localds, genisoimage, mkisofs ou xorriso
  • Firmware OVMF / edk2-ovmf pour UEFI ou passthrough PCI
  • ssh pour holos exec et les vérifications de santé

Exécutez holos doctor pour vérifier l'hôte.

Dépannage

Réinitialisations SSH au premier démarrage

kex_exchange_identification: read: Connection reset by peer signifie généralement que cloud-init est encore en train de régénérer les clés d'hôte et de redémarrer sshd. holos exec attend jusqu'à 60s par défaut, mais les premiers démarrages très lents peuvent nécessiter une nouvelle tentative ou holos exec -w 5m <project>.

La console affiche Login incorrect

La console série peut tenter une connexion automatique avant que cloud-init ne crée l'utilisateur. Attendez cloud-init ... finished dans le journal de la console, puis utilisez holos exec. Les images cloud n'ont généralement pas de mot de passe console et holos n'en ajoute pas.

up échoue sur macOS

KVM est une fonctionnalité du noyau Linux. Les binaires macOS sont utiles pour la rédaction et les commandes hors ligne, mais holos up et holos run doivent être exécutés sur un hôte Linux KVM.

Objectifs non visés

holos n'est pas Kubernetes. Il n'essaie pas de résoudre le clustering multi-hôte, la migration à chaud, les maillages de services, les réseaux overlay, les ordonnanceurs, les CRD ou le quorum du plan de contrôle.

L'objectif est de rendre KVM utilisable pour des piles mono-hôte sans importer la forme opérationnelle de Kubernetes.

Licence

Sous licence Apache License, Version 2.0. Voir NOTICE pour les attributions.

Télécharger l’outil