Chroot dengan jailkit di Centos

Chroot adalah sebuah shell dimana usernya hanya diberikan hak eksekusi secara minimal namun seakan-akan user tersebut adalah sebuah root dalam mesin tersebut.Dalam contoh berikut ini saya menggunakan linux centos 5.5 64 bit dan jailkit yang dapat didownload di http://olivier.sessink.nl/jailkit/

Download dan compile jailkitnya

# wget http://olivier.sessink.nl/jailkit/jailkit-2.14.tar.bz2
# tar -jxvf jailkit-2.14.tar.bz2
# cd jailkit-2.14
# ./configure
# make
# make install

Lakukan backup dan edit file jk_init.ini
# cp /etc/jailkit/jk_init.ini /etc/jailkit/jk_init.ini.aslinya
# nano /etc/jailkit/jk_init.ini

Tambahkan baris berikut

[ldconfig]
executables = /sbin/ldconfig
regularfiles = /etc/ld.so.conf

cari pada bagian [editors] sesuaikan menjadi seperti di bawah ini

includesections = terminfo, ldconfig

pada bagian [basicshell] sesuaikan menjadi

includesections = uidbasics, ldconfig

Simpan dan keluar dari editor , kemudian buat folder yang akan berisi file system yang digunakan dalam jail

# mkdir /home/jail
# chown root:root /home/jail

inisisasi jail dengan perintah :

# jk_init -v -j /home/jail basicshell editors

copy beberapa file ke jail

# jk_cp -j /home/jail /usr/sbin/jk_lsh
# jk_cp -j /home/jail /usr/bin/id

tambahkan user , kita asumsikan bahwa user jail disini adalah asuza

# useradd asuza
# passwd asuza

pindahkan user ke dalam jail :

# jk_jailuser -m -j /home/jail asuza

berikan direktori tmp untuk user dalam jail

# mkdir /home/jail/tmp
# chmod a+rwx /home/jail/tmp

berikan bash shell untuk user dalam jail

# nano /home/jail/etc/passwd

Sesuaikan file passwd menjadi :

asuza :x:501:501::/home/asuza :/bin/bash

cobalah untuk login dengan user asuza via ssh dan perhatikan bahwa asuza sudah berada dalam jail chroot