chroot 감옥에서 SELinux를 사용하는 것이 합리적입니까?

chroot 감옥에서 SELinux를 사용하는 것이 합리적입니까?

감옥 내에서 SELinux를 사용하는 것이 합리적입니까 chroot? chroot감옥에서는 최소한의 것만 있어야 하기 때문에 너무 많은 타협은 있을 수 없다고 생각합니다 .

감옥 내에서 SELinux를 사용하면 어떤 이점이 있습니까 chroot?

답변1

예, 컨테이너 내에서도 SELinux 정책을 시행하는 것이 좋습니다. SELinux의 아이디어 중 하나는 두 번째 방어선을 만드는 것입니다. 즉, 컨테이너(또는 chroot)가 충돌하면 그 안에 있는 프로세스가 여전히 원하는 작업을 수행하지 못할 수 있습니다. 또는 SELinux로 인해 컨테이너가 작동하지 않을 수도 있습니다. 컨테이너를 파괴할 수 있습니다. 또는 컨테이너/chroot에서 불필요한 작업도 수행할 수 없습니다.

답변2

chroot 감옥은 chroot 내에서 실행되는 프로세스가 chroot 외부의 파일에 직접 액세스하는 것을 방지합니다. chroot의 프로세스가 파일 이외의 다른 프로세스(동일한 사용자로 실행 중인 경우 종료되고 추적될 수 있음), 네트워크 등에 액세스하는 것을 방지하지 않습니다. 또한 chroot의 프로세스가 다른 프로세스(예: setuid 프로그램)의 버그를 악용하는 것을 방지하지 못합니다.

Chroot 자체는 보안 도구가 아닙니다. Chroot는 최소한 다른 조치와 함께 보안을 제공합니다. 감옥 내부에서 실행되는 모든 프로세스는 감옥 외부에서 실행되는 프로세스와 다른 사용자 ID로 실행되어야 합니다.

올바르게 설정되면(어려울 수 있음) SELinux는 루트로 실행되는 프로세스에도 격리를 제공할 수 있습니다. SELinux가 있는 경우 Chroot는 실제로 보안 도구로서 중복됩니다. SELinux를 설정하여 프로그램을 특정 디렉터리로 제한할 수 있지만 올바르게 설정하는 것이 훨씬 쉽습니다.

관련 정보