관심있는 것들 정리
[리뷰] 보안 뿐만 아니라 컨테이너의 이해를 넓혀주는 책 본문
요즘 어디서나 들을 수 있는 컨테이너 환경에서 프로그램을 작성하면서, 처음에는 그냥 잘 동작하는 것에만 목적을 두었었지만, 시간이 가면서 VM 가상화 환경에서 작성하던 프로그램보다 좀 더 시스템적인 부분에 대해 신경을 써야만 한다는 것을 깨달아 가고 있다.
인터넷에 써 있는 이야기들을 살펴보면, 마치 컨테이너 환경으로 옮겨가면 여러가지 장점이 많아서 이제는 가야한다는 말이 많지만, 막상 컨테이너 환경에서 프로그램을 작성하여, 서비스 중에 아무 문제없이 스케일링이 잘 되고, 롤링 업데이트에 이슈가 없는 그리고 보안적 측면에서도 안전하게 하려면, 이게 쉬운 문제가 아니라는 것을 깨닫게 된다.
프로그램을 개발하는 단계에서는 바로 신경을 쓰지 못하는 것이 보안과 관련된 부분이다. 특히 컨테이너의 경우 기존 가상화 환경이나, 호스트 시스템에서 직접 서비스하는 것과는 다른 개념들이 있기 때문에, 차이를 상당히 잘 이해해야하고, 그러한 이해를 바탕으로 보안과 관련하여 어떤 부분을 신경써야할 지 고민을 해야한다.
한빛미디어에서 출간된 '컨테이너 보안'을 리뷰하면서 읽어보았을 때, 저자의 생각 역시 내가 생각하는 바와 크게 다르지 않다고 생각되었다. 본 책은 크게 보면 기본 개념 파악과 컨테이너 환경에서의 보안 지침과 관련 예시로 나뉘어 있다. 전반부는 보안과 관련된 기본적인 개념 그리고 VM과 컨테이너간의 차이에 대해서 Linux 시스템을 기준으로 해서 설명한다. 그리고 중반부터는 컨테이너의 이미지 생성방법부터 시작하여 컨테이너에 들어가는 소프트웨어가 가질 수 있는 보안적인 취약점, 컨테이너 네트웍이 가질수 있는 보안 취약점 등 보안에 대한 지침, 예시 및 관련한 기본지식까지 두루 설명을 해 두고 있어, 컨테이너 환경에서 어떤 부분을 짚어야 하는 지를 명확하게 알려주고 있다.
책이 두껍지 않아 내용이 많지 않다고 생각할 수 있지만, 컨테이너의 특성과 보안에 중점을 두어 설명을 하고 있어 그리 적은 내용이 아니라는 것을 읽다보면 알게 된다. 그리고 보조 설명이 필요한 부분은 인터넷 링크를 많이 기술해두어 관련 내용들을 찾아보면서 읽어보면, 많은 도움이 되리라 생각된다.
이 책은 Linux 상에서 Docker와 K8s(Kubenenes)를 기준으로 설명을 하고 있기 때문에, 다른 환경에서의 예제를 바탕으로 공부하고 싶은 분들에게는 맞지 않을 수 있다. 보안이라는 개념이 환경에 따라 전혀 다르지 않기 때문에 참고용으로 읽어보기에는 문제가 없겠지만, 그렇지 않은 경우라면 이 책말고 다른 책을 선택해야할 것이다.
주로 서비스 프로그램 개발 및 성능 튜닝, 문제 발생 및 업데이트 시 서비스의 무중단 이런 부분만 생각하며 일해왔었는데, 이 책을 읽으면서 컨테이너의 기본에 대해 좀 더 잘 이해할 수 있게 되어, 비슷한 경험을 가진 분들이나 컨테이너에서의 보안을 처음 공부해보려는 분들에게 좋은 지침서가 될 것으로 생각된다.
이 책은 한빛미디어의 나는 리뷰어다 행사 일환으로 제공받아 리뷰한 것임을 밝힙니다.