LXC container như một môi trường hộp cát


9

Tôi hiện đang bắt đầu một dự án đánh giá các chương trình không đáng tin cậy (bài tập của sinh viên) trong môi trường hộp cát an toàn. Ý tưởng chính là tạo một ứng dụng web cho trình bao bọc GlassFish và Java xung quanh lxc-utils để quản lý các thùng chứa LXC. Nó sẽ có một hàng các chương trình chờ và trình bao bọc Java sẽ duy trì một số lượng cố định (nhóm) các thùng chứa LXC, gán cho mỗi chương trình một thùng chứa (không sử dụng).

Mỗi thùng chứa phải được bảo mật bằng SELinux để bảo vệ hệ thống máy chủ.

Câu hỏi của tôi là: Có phải là một ý tưởng tốt để tạo ra một cơ chế như vậy cho môi trường hộp cát, hoặc có giải pháp nào phù hợp hơn cho vấn đề này không? Nó phải nhẹ và an toàn chống lại sự sáng tạo của học sinh.

Câu trả lời:


6

Bạn đã không viết lý do tại sao bạn chọn LXC vì đây không phải là giải pháp ảo hóa an toàn nhất. Tôi là người dùng nặng của KVM / XEN và LXC và tôi có thể nói một điều rằng khi nói về bảo mật tôi không bao giờ đi với các container Linux (bất kể là LXC / OpenVZ / VServer). Nó chỉ dễ dàng hơn (và đáng tin cậy hơn) với KVM / XEN.

Nếu đó là về yêu cầu về hiệu năng hoặc phần cứng thì ok - bạn có thể thử với LXC, nhưng có một số quy tắc Bạn nên tuân theo:

  • libvirt đảm bảo hạn chế các container khi sử dụng SELinux (nhờ LXC_do) - không chắc chắn nếu đó chỉ là trường hợp của RHEL / Centos / Fedora (tôi không sử dụng Ubuntu / Debian nhiều như vậy) https://www.redhat.com/archives /libvir-list/2012-Janemony/msg01006.html - vì vậy, đi với SELinux là một ý tưởng hay (theo tôi đó là "phải có" trong những trường hợp như vậy)
  • Đặt quy tắc nhóm nghiêm ngặt để khách của bạn không làm cho máy chủ của bạn đóng băng hoặc ảnh hưởng đến các container khác
  • Tôi muốn đi với các container dựa trên LVM - nó luôn luôn là một lớp "bảo mật" nữa
  • Hãy suy nghĩ về giải pháp mạng và kiến ​​trúc. Những container đó có phải giao tiếp với nhau không?

Bắt đầu với việc đọc này - nó khá cũ, nhưng vẫn còn - có nhiều kiến ​​thức ở đó. Và cũng - đáp ứng không gian tên người dùng

Và sau tất cả những suy nghĩ đó - bạn có thực sự có nhiều thời gian để chơi với bảo mật LXC không? KVM đơn giản hơn nhiều ...


Trước hết, cảm ơn câu trả lời. Tôi chọn LXC vì tôi cần thứ gì đó nhẹ và nó sẽ chạy bên trong KVM. Có thể chạy KVM trong KVM?
eXPi

1

Để chạy các chương trình không tin cậy, không gian tên Linux vẫn là giải pháp tốt nhất. Nó dễ cài đặt hơn KVM và nó đòi hỏi ít tài nguyên hơn. Bạn có thể thử LXC, tuy nhiên LXC được xây dựng dưới dạng hộp cát chung hơn để chạy hình ảnh phân phối Linux đầy đủ. Hai hộp tên Linux khác xuất hiện trong tâm trí:

  • Hộp cát Google Chrome , hiện được phân phối với Google Chrome / Chromium
  • Firejail , một hộp cát bảo mật được xây dựng để chạy Mozilla Firerfox và bất kỳ chương trình GUI nào khác.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.