Mengapa saya harus menggunakan chroot

13

Pertanyaan ini chroot-jail-what-is-it-and-how-do-i-use- mengacu pada apa dan bagaimana cara menggunakannya chroot.

Yang tidak saya mengerti adalah mengapa saya harus menggunakannya chroot. Saya mengerti apa fungsinya, tapi saya tidak bisa memikirkan kasus ketika saya perlu menggunakannya, mengingat fakta bahwa itu bukan mekanisme keamanan atau kotak pasir, karena jawabannya menunjukkan "Anda tidak boleh menggunakan chrootsebagai keamanan mengukur untuk mencegah suatu program memodifikasi file di luar sistem file Anda yang disimulasikan ".

Secara khusus, mengapa proses tertentu perlu memetakan sub-direktori sebagai rootfilesystem?

Alexandru Irimiea
sumber
untuk memiliki lebih banyak distribusi dalam satu sistem file.
Ipor Sircer
apa artinya?
Alexandru Irimiea
1
Walaupun itu mungkin tidak mencegah peretas yang keras untuk keluar dari penjara, itu membuatnya lebih sulit dan hampir pasti akan mencegah akses yang tidak disengaja .
Barmar
jika Anda ingin membangun os baru dari awal, ini dapat digunakan untuk mengatur lingkungan baru yang independen pada sistem file host. lihatlah proyek LFS (linux from scratch)
chenchuk

Jawaban:

13

Ada banyak alasan untuk menggunakan lingkungan chroot, Anda dapat menggunakannya untuk menyimpan versi yang berbeda dari satu program, Anda dapat menggunakannya untuk mensimulasikan lingkungan tertentu untuk menguji beberapa fitur, untuk membuat gambar dari sistem yang berbeda dari utama Anda. satu, dll.

Wikipedia dapat memberi tahu Anda lebih banyak tentang penjara chroot dan penggunaannya.

Dari sana:

Pengujian dan pengembangan : Lingkungan pengujian dapat diatur dalam chroot untuk perangkat lunak yang jika tidak akan terlalu berisiko untuk digunakan pada sistem produksi.

Kontrol ketergantungan : Perangkat lunak dapat dikembangkan, dibangun, dan diuji dalam chroot yang hanya diisi dengan dependensi yang diharapkan. Ini dapat mencegah beberapa jenis kemiringan tautan yang dapat dihasilkan dari pengembang membangun proyek dengan kumpulan perpustakaan program yang berbeda diinstal.

Kompatibilitas : Perangkat lunak atau perangkat lunak lama yang menggunakan ABI yang berbeda kadang-kadang harus dijalankan dalam chroot karena pustaka pendukung atau file data mereka dapat berbenturan dengan nama atau hubungan dengan orang-orang dari sistem host.

Pemulihan : Jika suatu sistem dianggap tidak bisa di-boot, chroot dapat digunakan untuk kembali ke lingkungan yang rusak setelah bootstrap dari sistem file root alternatif (seperti dari media instalasi, atau Live CD).

Pemisahan hak istimewa : Program diizinkan untuk membawa deskriptor file terbuka (untuk file, saluran pipa, dan koneksi jaringan) ke chroot, yang dapat menyederhanakan desain jail dengan membuatnya tidak perlu meninggalkan file yang berfungsi di dalam direktori chroot. Ini juga menyederhanakan pengaturan umum untuk menjalankan bagian-bagian yang berpotensi rentan dari program istimewa di kotak pasir, untuk secara pre-emptive mengandung pelanggaran keamanan. Perhatikan bahwa chroot tidak harus cukup berisi proses dengan hak akses root.

Alberto Méndez
sumber
3
Pada dasarnya jika Anda menjalankan serangkaian program yang ingin membaca / menulis hal-hal tertentu di tempat mulai dari /, tetapi Anda tidak ingin mengacaukan sistem Anda yang ada, chroot berguna bahkan jika dijalankan sebagai root (yang saat itu tidak ada gunanya dari perspektif keamanan). Berfungsi sebagai "pengalih arah" yang selama Anda percaya program ini berguna.
LawrenceC