GNU/Linux >> Tutoriels Linux >  >> Linux

Chroot "prison" - Qu'est-ce que c'est et comment l'utiliser ?

J'ai beaucoup entendu/lu beaucoup sur la prison chroot sous linux mais je ne l'ai encore jamais utilisée (j'utilise Fedora au quotidien), alors qu'est-ce qu'une « prison » chroot ? Quand et pourquoi puis-je l'utiliser/ne pas l'utiliser et y a-t-il autre chose que je devrais savoir ? Comment ferais-je pour en créer un ?

Réponse acceptée :

Une prison chroot est un moyen d'isoler un processus et ses enfants du reste du système. Il ne doit être utilisé que pour les processus qui ne s'exécutent pas en tant que root, car les utilisateurs root peuvent sortir de la prison très facilement.

L'idée est que vous créez une arborescence de répertoires dans laquelle vous copiez ou liez tous les fichiers système nécessaires à l'exécution d'un processus. Vous utilisez ensuite le chroot() appel système pour changer le répertoire racine pour qu'il soit à la base de cette nouvelle arborescence et démarrer le processus en cours d'exécution dans cet environnement chrooté. Puisqu'il ne peut pas réellement référencer des chemins en dehors de la racine modifiée, il ne peut pas effectuer d'opérations (lecture/écriture, etc.) de manière malveillante sur ces emplacements.

Sous Linux, l'utilisation d'un montage lié est un excellent moyen de remplir l'arborescence chroot. En utilisant cela, vous pouvez extraire des dossiers comme /lib et /usr/lib sans extraire /usr , par exemple. Liez simplement les arborescences de répertoires que vous souhaitez aux répertoires que vous créez dans le répertoire jail.


Linux
  1. Qu'est-ce qu'une commande Chown sous Linux et comment l'utiliser

  2. Qu'est-ce qu'une commande cURL et comment l'utiliser ?

  3. Comment exécuter les services DNS et FTP dans une prison chroot

  4. Qu'est-ce que Build-Essential-Ubuntu, comment l'installer et l'utiliser ?

  5. Qu'est-ce qu'un fichier u-Boot dtb et comment l'utiliser (BeagleBoard xM) ?

Qu'est-ce que Terraform et comment l'installer et l'utiliser sur AWS EC2

Qu'est-ce que la commande SSH et comment utiliser SSH pour se connecter à un serveur distant

Qu'est-ce que les conteneurs multi-comptes Firefox ? Pourquoi et comment l'utiliser ?

Qu'est-ce qu'EasyApache et comment l'utiliser ?

Qu'est-ce que Docker Compose et comment l'utiliser ?

Qu'est-ce que PPA dans Ubuntu Linux et comment les utiliser