วิธีการเปิดใช้งาน SELinux ภายในคอนเทนเนอร์ CentOS Docker


13

ฉันพยายามติดตั้ง SELinux ภายในคอนเทนเนอร์ Docker เพื่อแจกจ่ายแอปพลิเคชันที่ใช้ SELinux ภายใน

อิมเมจ CentOS เริ่มต้นไม่มีการติดตั้ง SELinux:

$ docker run -it centos:latest /bin/bash
[root@38ae5a98273d /]# sestatus
bash: sestatus: command not found

หลังจากติดตั้งจาก yum แล้ว SELinux ยังไม่เปิดใช้งาน

[root@38ae5a98273d /]# yum install policycoreutils selinux-policy-targeted
...
[root@38ae5a98273d /]# sestatus
SELinux status:                 disabled

เอกสารทั้งหมดที่ฉันพบพบว่าคุณต้องออกระบบรีบูตเพื่อติดตั้ง อย่างไรก็ตามฉันไม่ทราบวิธีการจำลองการบูตระบบภายในคอนเทนเนอร์ Docker

เราจะติดตั้งและเปิดใช้งาน SELinux ภายในคอนเทนเนอร์ได้อย่างไร

คำตอบ:


23

SELinux ไม่ใช่เนมสเปซดังนั้นแต่ละคอนเทนเนอร์ไม่สามารถมีนโยบาย SELinux แยกต่างหากได้ SELinux จะปรากฏเป็น "ปิดการใช้งาน" ในคอนเทนเนอร์เสมอแม้ว่ามันจะทำงานอยู่บนโฮสต์

หากแอปพลิเคชันของคุณต้องการ SELinux คุณจะไม่สามารถใช้ภายใน Docker ได้ คุณจะต้องใช้เครื่องเสมือนปกติ



3
TL; dr: containerisation ไม่ใช่ virtualisation
MadHatter
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.