non-root2 컨테이너 기반환경 보호를 위한 컨테이너 탈출(container escape) 방지 컨테이너 기반의 애플리케이션을 보호하기 위해 컨테이너 탈출(container escape)을 방지하는 것은 중요합니다. 컨테이너 탈출이란 컨테이너가 호스트 머신의 자원에 무단으로 접근하거나 제어할 수 있게 되는 보안 취약점을 의미합니다. 이를 방지하기 위한 여러 가지 방법들이 있습니다. 1. 모든 CAP(능력) 제거하고 필요할 때만 추가 리눅스 커널은 특정 작업을 수행할 수 있는 능력(Capabilities)을 정의합니다. 기본적으로 컨테이너는 제한된 능력 세트를 가지고 시작되지만, 특정 작업을 수행하기 위해 추가적인 능력이 필요할 수 있습니다. 보안을 강화하기 위해서는 모든 능력을 제거하고 필요할 때만 최소한의 능력을 추가하는 것이 좋습니다. 2. Privileged Container 사용 금지 혹은 .. 2024. 3. 16. Docker 컨테이너 엔진 대체재 Podman LXC 기술 활용 Podman은 Linux 환경에서 컨테이너를 관리하는 도구로, Docker와 비슷한 기능을 제공하지만 몇 가지 중요한 차이점이 있습니다. 주요 차이점은 다음과 같습니다. 데몬 없음(Daemonless): 가장 큰 차이점 중 하나는 Podman이 데몬 없이 동작한다는 것입니다. Docker는 백그라운드에서 돌아가는 데몬 프로세스가 필요하지만, Podman은 데몬 없이 직접 실행됩니다. 이는 사용자에게 더 간단한 환경을 제공하고 보안 측면에서 이점을 가질 수 있습니다. 루트 권한 없는 컨테이너 실행(Rootless): Podman은 루트 권한이 없어도 컨테이너를 실행할 수 있는데, Docker는 기본적으로 루트 권한이 필요합니다. 이는 보안 상의 이점을 제공하며, 특히 멀티유저 환경에서 더 안전한 사용을 가.. 2023. 12. 10. 이전 1 다음 728x90