Quand est-il approprié / prudent d'utiliser le chroot?

9

J'entends parler de devoir chrooter BIND tout le temps. C'est suffisant. Mais qu'en est-il des autres programmes? Quelles sont les "règles" (personnelles ou largement acceptées / établies) pour décider quels programmes doivent être emprisonnés?

-M

Mike B
la source

Réponses:

5

En général, vous souhaiterez peut-être utiliser chroot pour plusieurs raisons:

  • besoin d'une autre version de distribution / architecture / distribution sans vouloir utiliser OpenVZ ou une machine virtuelle. Par exemple, j'utilise des chroots pour avoir à la fois des environnements de compilation i386 et amd64 sur une machine amd64.
  • restreindre l'accès au système aux utilisateurs. Par exemple, vous pouvez utiliser chroot avec scponly pour restreindre les commandes auxquelles les utilisateurs ont accès. Il s'agit d'un système d'emprisonnement très limité car ils ont toujours accès au réseau par exemple.
  • restreindre l'accès au système aux programmes. En général, vous souhaiterez peut-être le faire pour les démons principalement, tels que bind ou apache. De cette façon, ces programmes n'auront pas d'accès direct au système, donc si un attaquant pouvait utiliser une faille de sécurité du programme, il n'accéderait pas directement au système, mais se retrouverait à l'intérieur du chroot. Cela permet d'améliorer la sécurité, mais ce n'est pas une garantie que votre système est sécurisé.
ℝaphink
la source
12

Lorsque la réponse n'est pas «pour des raisons de sécurité». Voir Abus de chroot .

Quand il a été suggéré que chroot est fréquemment utilisé comme outil de sécurité, Adrian Bunk a répliqué, "les personnes incompétentes mettant en œuvre des solutions de sécurité sont un vrai problème." Alan a ajouté: "chroot n'est pas et n'a jamais été un outil de sécurité. Les gens ont construit des choses basées sur les propriétés de chroot mais étendues (prisons BSD, vserver Linux) mais elles sont très différentes."

chariot renversé
la source
C'est une nouvelle pour moi ... très intéressante.
Joseph Kern
6

Si vous avez un programme qui nécessite un ensemble / des versions de bibliothèques différent de ce qui est installé sur votre système, ce serait un bon candidat pour une installation "chrootée".

chroot est également pratique pour installer différentes versions de la distribution Linux dans leur propre environnement, sans utiliser de machine virtuelle ou d'émulateur ( Configurer un chroot Debian sous Red Hat ).

Laurent Parenteau
la source
-2

Tout dépend de la façon dont vous êtes paranoïaque. Dans la plupart des cas, chaque service doit être chrooté pour des raisons de sécurité. Cependant, il peut ne pas être possible de le faire pour tout, car cela peut être un peu fastidieux d'essayer de tout reproduire. Une autre possibilité à envisager à des fins d'isolement est l'utilisation de machines virtuelles légères comme OpenVZ / VServer, qui sont essentiellement comme chroot, mais plus encore.

sybreon
la source