Saat ini saya memulai proyek yang mengevaluasi program-program yang tidak dipercaya (tugas siswa) di lingkungan kotak pasir yang aman. Gagasan utamanya adalah membuat aplikasi web untuk GlassFish dan Java wrapper di sekitar lxc-utils untuk mengelola wadah LXC. Ini akan memiliki antrian program menunggu dan pembungkus Java akan mempertahankan nomor tetap (kumpulan) kontainer LXC, menugaskan masing-masing program satu kontainer (tidak terpakai).
Setiap kontainer harus diamankan dengan SELinux untuk melindungi sistem host.
Pertanyaan saya adalah: Apakah ide yang bagus untuk membuat mekanisme seperti itu untuk lingkungan kotak pasir, atau adakah solusi yang lebih cocok untuk masalah ini? Itu harus ringan dan aman terhadap kreativitas siswa.
Untuk menjalankan program yang tidak tepercaya, ruang nama Linux masih merupakan solusi terbaik. Lebih mudah diatur daripada KVM, dan membutuhkan lebih sedikit sumber daya. Anda dapat mencoba LXC, namun LXC dibuat sebagai kotak pasir yang lebih umum untuk menjalankan gambar distribusi Linux lengkap. Dua kotak pasir ruang nama Linux lainnya muncul dalam pikiran:
sumber