← retour aux snippets

chroot: créer une jail minimale pour debug

Construire un environnement chroot avec bins, libs et devs nécessaires pour tests isolés.

bash security #chroot#jail#debug

objectif

Exécuter un binaire dans une racine alternative pour isoler chemins et libs.

code minimal

root=/srv/jail
sudo mkdir -p "$root"/{bin,lib,lib64,usr/bin,dev}
sudo mknod -m 666 "$root/dev/null" c 1 3
sudo cp -v /bin/bash "$root/bin/"
ldd /bin/bash | awk '{print $3}' | xargs -I{} sudo cp -v {} "$root/lib64/" 2>/dev/null || true
sudo chroot "$root" /bin/bash -l

utilisation

# monter /proc si nécessaire
sudo mount -t proc proc "$root/proc"

variante(s) utile(s)

# quitter la jail
exit

notes

  • préférez des containers/namespaces en prod; chroot est limité en sécurité.
  • assurez-vous de copier les libs nécessaires (via ldd).