본문 바로가기

상품, 서비스/Security

안전하게 Cloud 사용하기 - 접근 제어

 

1. Cloud 접근제어 시스템의 이해

Cloud는 어디에서나 사용자가 서버에 접근을 할 수 있고 가상화를 활용해 서버의 대수가 많아지게 되며, 그 결과 '사용자와 - Cloud간'의 접근을 제어하는 시스템이 중요해집니다.

 

이러한 시스템을 넓은 의미의 IAM이라 합니다. IAM은 사용자와 Cloud 시스템과 각각 상호작용하게 되는데, 각각에 대해 안전한 체계를 갖추는 것이 중요합니다.

 

사용자를 역할에 맵핑하고 각 역할별로 권한을 제한하여, 갑작스러운 퇴사 등 인력의 변동에 빠르게 대비할 수 있습니다. 이러한 방식의 접근제어를 Role-based Access Control이라 하며, 이는 IAM을 활용해 일반적으로 권한을 제어하는 방식입니다.

 

 

2. 사용자 → Cloud 접근제어 시스템으로의 접근

사용자 접근 제어는 인증을 강화하고, 접속자를 통제하는 것으로 구분됩니다. 모든 사용자에 대해서 MFA를 통한 인증 강화가 권고되며, IP/MAC을 활용한 제어는 추가적인 보안 요소로 고려할 수 있습니다.

 

2-1. 다요소인증(MFA)

인증은 크게 지식, 소유, 속성이라는 3가지 방식으로 구분됩니다. (지식은 Password와 같이 사용자가 외우는 것을 의미하며, 소유의 경우 OTP생성기와 같이 사용자가 가지고 있는 것을 의미하고, 속성은 지문과 같이 사용자 고유의 것을 말합니다.)

 

지식의 경우, Password 등 사용자가 외우는 것을 말하는데, 임의로 비밀번호를 공유하거나 유출에 취약합니다.

소유의 경우, 휴대폰 OTP처럼 사용자가 가지고 있는 것을 의미하는데, 토큰을 분실할 수 있다는 점이 단점입니다.

속성의 경우, 지문 인증 등을 말하는데, 전용 장비 등이 필요해 보편적으로 적용하기 어렵다는 단점이 있습니다.

 

이처럼 각각의 인증 방식에는 단점이 있어, 2개 이상의 인증을 결합하는 방식을 MFA라고 합니다. 인증은 외부의 누군가가 사내 직원을 사칭해 시스템 접속을 하는 것을 방지하고, 사고 발생시 추적을 위해서 중요합니다.

 

KT Cloud 포탈에서는 비밀번호+OTP(SMS)를 활용한 MFA를 제공하고 있으며, OS접근제어와 DB접근제어에 대해서도 비밀번호+OTP의 MFA 사용을 권고드리고 있습니다. (OTP의 경우 개인 소유가 원칙이고, 이를 통해 사고 시 문제 계정을 찾게되므로 공용 이메일이나 공용 휴대폰 사용은 적합하지 않습니다.)

 

2-2. IP/MAC 제어

접속자 통제는 시스템 접속자에 대해 IP나 Mac 주소를 지정하는 것으로, 지정된 사내망에서 지정된 PC를 활용하도록 강제하는 의미가 있습니다.

접속자 통제는 주요 데이터/시스템 등에 대해 보다 높은 수준의 보안을 구성할 수 있습니다.

 

 

3. Cloud 접근제어 시스템 → Cloud 자원으로의 접근

Cloud 환경에서는 크게 3가지 접근을 제어합니다. 이는 포탈을 통한 자원 접근, 개별 자원에 대한 OS 집적접속, 내부 데이터 접근으로 구분되는데요.

OS접속, DB접속은 기존의 보안 체계와 유사하지만, 보유 중인 사내 정책을 어떻게 이관할 것인지를 고민해야 합니다. 반면, 포탈을 통한 VM 자원의 접근은 Cloud 고유의 방식이므로 보호조치를 고민해야 합니다. 

 

3-1. 포탈 접근제어 - Infra

클라우드 관리 포탈에서는 가상 서버 자원을 생성/삭제하거나 각 가상 서버의 상태를 모니터링할 수 있습니다. 자원의 라이프사이클을 관리할 수 있는 것이죠.

 

포탈을 통해서 자원을 관리하는 개념은 Cloud 환경의 특성에 따른 것으로, VM 자원의 생성/삭제 시스템은 Cloud제공자의 책임이 됩니다. (다만 시스템을 사용하여 VM 자원을 관리하는 것은 사용자의 몫이고요.)

 

일반적으로 시스템 구축이 끝나면 VM 자원을 생성하거나 삭제하는 일이 빈번하지 않아, 놓치기 쉬운 부분인데 자원의 관리는 가장 큰 가용성 관리 요소입니다.

반면 Cloud포탈은 보안/인프라운영/프로젝트관리자 등 여러명이 접속할 수 있습니다. 이렇기에 포탈에서는 각 사용자별로 권한을 맵핑하여, 작업을 제한해야 합니다.

 

KT Cloud의 경우 Dashboard>IAM에서 해당 작업을 수행할 수 있습니다.

Root 계정은 과금 관리 등의 업무 담당자가 가지고, 그 외 모든 사용자는 IAM 계정을 활용하여 권한을 제한하는 것이 안전합니다.

 

3-2. OS 접근제어 - Application

OS의 접근제어 또한 중요합니다. (OS 접근은 사용자가 SSH등을 사용해 Console에 접속하는 것을 말합니다.) 포탈의 인프라 관점의 자원 라이프사이클을 관리하는 접점이라면, OS는 Application 전반의 관리를 할 수 있는 영역입니다.

 

OS 접근제어는 개발자와 운영자의 역할을 나누거나, 각 VM별로 접속 사용자를 제한하여 감사 기능을 수행할 수 있도록 합니다.

 

KT Cloud의 경우 Marketplace에서 OS접근제어 솔루션을 제공하고 있으며, 편리한 운영을 위해서는 DB접근제어 솔루션과 연동을 고려할 수 있습니다.

만약, 사내에서 보유 중인 접근제어 솔루션을 활용한다면 VPN 이나 전용회선 등으로 사내망과 Cloud를 연동하는 방안을 고려할 수도 있습니다.

 

3-3. DB 접근제어 - Data

DB 접근제어는 통상 개인정보보호의 관점에서 수행합니다. 개인정보 조회는 최소화해야하는데, 단순히 DB가 설치된 OS 제어만으로는 개인정보 조회를 최소화할 수 없습니다. (DB 운영자 입장에서 DB시스템은 접속하지만, 고객 주민등록번호를 조회할 이유는 없는 것이죠.) 이렇게 쿼리나 데이터 수준의 정밀한 제어를 위해서 DB접근제어 시스템을 사용할 수 있습니다.

 

개인정보 등 주요정보는 시스템에 의해서만 접근되는 것이 바람직하며, DB접근제어는 시스템 외 모든 사용자에 대해 개인정보 접근을 차단하는 용도로 사용하는 것이 바람직합니다. 또한, DB접근제어는 향후 정보유출사고 발생 시 증적이 될 수 있습니다.

 

이러한 목적을 위해서는 DBMS의 비밀번호가 각 개인이 알 수 없도록 잘 관리되어야 하며, DB암호화 솔루션과 연계해 주기적으로 키를 변경하도록 구성할 수도 있습니다.

 

KT Cloud의 경우 Marketplace에서 DB접근제어 솔루션을 제공하고 있습니다.