Trinn 1: Installere avhengighetene
Trinn 2: Opprette de nødvendige katalogene
Trinn 3 Kopiering av kommandoer og deres avhengigheter
Trinn 4: Testing av miljøet
Denne artikkelen vil lære deg hvordan du setter opp et chroot-fengsel på Debian. Jeg antar at du bruker Debian 7.x. Hvis du kjører Debian 6 eller 8, kan dette fungere, men husk at jeg ikke har testet andre versjoner av Debian.
Logg på din VPS som root-bruker. Du kan også kjøre kommandoene med sudo.
Trinn 1: Installere avhengighetene
For å starte, må du kjøre følgende kommandoer for installasjon, som vil bli forklart senere.
apt-get install binutils debootstrap
Du må også velge et sted å sette opp chroot. For denne artikkelen bruker vi /var/chrootkatalogen.
Trinn 2: Opprette de nødvendige katalogene
Lag chroot-mappen.
mkdir -p /var/chroot
Flott! De foreløpige trinnene er fullført. La oss nå gjøre chroot nyttig.
Trinn 3 Kopiering av kommandoer og deres avhengigheter
Vi trenger en kommandotolk, så la oss kopiere bash.
mkdir -p /var/chroot/bin
cp /bin/bash /var/chroot/bin
Hvert program har sine egne avhengigheter, og bash er en av dem. Ta en titt på dem ved å løpe:
ldd /bin/bash
Det skal se slik ut hvis du kjører en 32-biters versjon:
linux-gate.so.1 => (0xb773e000)
libtinfo.so.5 => /lib/i386-linux-gnu/libtinfo.so.5 (0xb7718000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb7714000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb75c3000)
/lib/ld-linux.so.2 (0xb773f000)
La oss kopiere disse filene. Hvis du ser forskjellige avhengigheter, kopierer du bare over banen etter =>delen.
mkdir -p /var/chroot/lib
mkdir -p /var/chroot/lib/i386-linux-gnu
cp /lib/i386-linux-gnu/libtinfo.so.5 /var/chroot/lib/i386-linux-gnu
cp /lib/i386-linux-gnu/libdl.so.2 /var/chroot/lib/i386-linux-gnu
cp /lib/i386-linux-gnu/libc.so.6 /var/chroot/lib/i386-linux-gnu
Trinn 4: Testing av miljøet
Nå som vi har bash-oppsett - la oss teste det.
chroot /var/chroot
Bash-kommandotolken åpnes, men det vil ikke være noen andre kommandoer å kjøre. Dette er fordi vi ikke har kopiert noen andre programmer over til chroot-mappen. Hvis du vil ha flere kommandoer, skriv inn exitog gjenta trinn 3.
Det er alt som skal til. Du har nå et grunnleggende chroot-oppsett. Du kan teste kommandoer, fengsle brukerne dine osv.
Hvis du vil ha nettverk i chroot, må du kjøre følgende kommandoer
mkdir -p /var/chroot/etc
cp /etc/resolv.conf /var/chroot/etc
cp /etc/gai.conf /var/chroot/etc