Membuat Sandbox Aplikasi Cepat Dengan KVM atau LXC

Dalam presentasi berjudul “Building application sandboxes on top of LXC and KVM with libvirt” (Mengembangkan sandbox aplikasi diatas LXC dan KVM dengan libvirt) pada acara FOSDEM 2012, Pengembang Red Hat, Daniel Berrange mengenalkan libvirt-sandbox, yang membatasi aplikasi secara individu di area yang diamankan (“sandbox“) menggunakan solusi virtualisasi KVM (Kernel-based Virtual Machine) atau LXC (Linux Containers).

Di varian KVM, program berjalan di kernel dan initramfs di sebuah virtual machine (VM), yang akan menjalankan aplikasi setelah booting. Dengan plan9fs (p9fs/plan 9 filesystem), kernel dapat membaca beberapa area di filesystem host dari VM, membuat instalasi sistem operasi di VM tidak dibutuhkan. Berdasaran kalkulasi Berrange, menjalankan aplikasi lewat VM hanya akan membuat delay sekitar 3 detik ketika aplikasi mulai dijalankan. Pendekatan ini seharusnya tidak akan membuat turunnya performa ketika mengakses CPU. Untuk mengakses device, Berranger menjelaskan, dengan pendekatan ini performa yang ada kurang lebih 90% dibandingkan jika aplikasi berjalan di host secara langsung.

Di varian LXC, aplikasi berjalan di kernel host tetapi di arena terpisah seperti di kontainer virtualisasi, pengguna bisa memvisualisasikan solusi ini mirip seperti change root(chroot) tetapi lebih aman, dimana libvirt-sandbox dapat membaca bagian dari sistem host sehingga sistem operasi tidak harus di install di kontainer. Setup kontainder dengan libvirt-sandbox membutuhkan waktu kurang dari 200 mili detik dan aplikasi yang berjalan dengan cara ini tidak akan kehilangan performa sama sekali.

virt-sandbox dapat digunakan untuk membuat area terbatas dengan mudah sehingga pengguna tidak akan merasa bahwa sebuah VM dijalankan dengan KVM. Ketika disetup pengguna bisa menentukan sumber daya jaringan apa dan yang mana saja yang bisa diakses oleh sandbox. Berranger menawarkan contoh alasan kenapa harus menggunakan dua pendekatan tersebut : membuat hosting virtual aplikasi server (Apache dll), memproses stream multimedia yang kurang dipercaya, dan membuat paket RPM. Peramban web juga bisa di isolasi dengan sandbox sebagai contoh mengisolasi aktivitas perbankan online dari aktivitas internet lainnya. VNC dan Spice dapat digunakan untuk mentransfer output display monitor dari VM ke host.

SELinux menyediakan proteksi tambahan, sejak 2009, framework keamanan ini mampu menggunakan SELinux sandbox untuk membatasi aplikasi di area terpisah meskipun Berrange menjelaskan bahwa pendekatan ini bermasalah untuk beberapa penggunaan tertentu dan kurang fleksibel. Informasi lebih lanjut mengenai libvirt-sandbox dapat anda temukan di email yang mengumumkan rilis publik pertama. di slides presentasi FOSDEM dan di posting blog dimana Berrange memberikan penjelasan yang lebih detail. Informasi lebih lanjut juga disediakan di halaman fitur Fedora 17, yang direncanakan menyertakan libvirt-sandbox ketika dirilis bulan Mei nanti.

Via

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.