데보션앱 소개페이지 바로가기
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
(이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

미리보기

커뮤니티

      1,234

      badge 23.06.15

      글 등록

      카테고리를 선택해주세요.

      DEVOTEE를 활성화 시키면
      지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.

      버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.

      임시저장함에 저장되었습니다. 저장일시 : 2022.5.17 14:29:08

      임시저장함

      제목을 선택하시면 이어서 작성이 가능하며,
      최대 20건까지 저장합니다.
      컨텐츠 유형, 제목, 저장일시, 삭제로 이뤄진 임시저장 목록
      컨텐츠 유형 제목 저장일 삭제

      데보션 블로그 게재 요청

      CLOSE
      • *
      • *

      본인인증

      효율적인 데보션 서비스 이용 및
      고객님의 소중한 개인정보보호를 위해
      본인인증을 진행해주세요. 본인인증 미 진행 시 로그인이 제한됩니다.
      본인인증 실패

      본인인증 로그인에 실패하였습니다.
      회원이 아니시거나 본인인증 등록이
      완료되지 않은 사용자입니다.

      회원정보 연결

      AKS로 쿠버네티스 시작하기 : 보안성

      broccoli 23.10.25
      1,548 16 0
      DEVOTEE 요약
      이프랜드스튜디오에서는 기존의 VM기반 인프라를 AKS 기반의 k8s 인프라로 전환하여 운영하게 되었다. 이 과정에서 공격 노출의 대상인 AKS 인프라 보안에 대한 필요성이 대두되어, 클러스터 접근 제어, 서비스 접근 제어, 리소스 보호, 네트워크 세그멘테이션, 버전 업그레이드, 보안 모니터링 등 다양한 보안 대책이 적용되었다. 이에 대한 이해를 돕기 위해 정보 보호 관리 체계(ISMS)에 관한 설명도 함께 이루어졌다.
      DEVOTEE 추천 블로그

      AKS 보안 챙기기

      이프랜드스튜디오 서비스(https://studio.ifland.io) 에 대해 AKS를 기반으로 상용기까지 모두 기존 VM기반 인프라에서 k8s인프라로 이전을 완료했다.

      VM환경에서 클라우드 네이티브 환경으로 전환이 되어 CI/CD의 효율성과 함께 운영의 효율성은 크게 높아졌다. 아울러 챙겨봐서 할 것이 보안이다.

      클라우드 서비스 사용이 늘고, 쿠버네티스 환경 도입도 빠르게 늘고 있어 공격 노출의 대상으로 AKS 인프라 보안에 대한 관심이 필요하다.

      AKS 구축 과정과 회사 내부에서 운영하는 감시툴 측면에서 보안 대책 적용이 요구되었다.

      참고로 이프랜드스튜디오는 메타버스에서 활동하는 아바타를 위한 의상과 신발 등을 손쉽게 제작할 수 있도록 저작툴을 제공하는 서비스이다.

      image.png

      ISMS 이해 부터

      보안에 대한 이해를 위해 정보보호 관리체계인 ISMS에 대한 이해 부터 시작하면 좋을 것 같다.

      1. ISMS 정의

      ISMS(정보보호 관리체계)는 정보시스템의 보안성을 확보하고 유지하기 위한 일련의 프로세스와 절차이다.

      2. ISMS의 필요성

      조직의 정보자산 보호와 보안 수준 향상을 위해 반드시 필요한 관리 체계이다.

      (조직의 정보자산을 보호) 기업의 core 정보자산을 보호하고, 정보유출 방지

      (법규 및 규제 준수) 개인정보보호법, 정보통신망법 등 관련 법규 준수

      (보안 수준 향상) 취약점 발굴과 개선조치로 정보보호 수준 향상

      (보안 관리 체계화) 보안 업무의 명확성, 일관성, 통제성 확보

      (보안 경영 실현) 보안을 경영활동 전반에 통합적으로 적용

      3. ISMS의 구성요소

      정보시스템의 보안성 확보를 위해 정보보호 정책 수립, 조직/인력/물리/개발과 유지보수 보안/재해 대비 보안으로 구성된다.

      (정보보호 정책) 정보보호 목적과 방향을 제시하는 정보보호 정책 수립

      (조직보안) 정보보호 책임자 지정, 보안 역할 및 조직 정의

      (인력보안) 보안 교육, 보안 서약, 접근 통제 등 인력 보안 관리

      (물리보안) 보안 구역 설정, 출입 통제, 보안 장비 운영 등 물리적 보안 수립

      (시스템 개발 및 유지보수 보안) 시스템 개발 보안 요구사항 정의, 취약점 점검, 패치 관리 등

      (재해 대비 보안) 재해 복구 계획 수립, 데이터 백업, 이중화 등 재해 대책 마련

      4. ISMS와 관련된 주요 국제 표준

      국제적 수준의 ISMS를 구축하는 데 필요한 주요 국제표준 및 지침으로 ISO 27001, 27002, NIST 800-53, COBIT 등이 있습니다

      - ISO/IEC 27001 : ISMS 요구사항 표준

      - ISO/IEC 27002 : ISMS 컨트롤과 가이드라인 표준

      - ISO/IEC 27017 : 클라우드 서비스를 위한 ISMS 통제 기준

      - ISO/IEC 27701 : 프라이버시 정보 관리 체계 표준

      - NIST SP 800-53 : 미국 NIST의 보안 및 개인정보보호 통제 프레임워크

      - COBIT 2019 : IS 거버넌스와 관리를 위한 프레임워크

      5. ISO/IEC 27017 국제 표준 기준으로 AKS의 기술적 보안 고려 요소

      국제 표준 기준으로 정보분류, 액세스 제어, 암호화, 네트워크 보안, 보안 모니터링, 취약점 관리, 백업 관리, 개인정보 보호으로 구분으로 기술적 보안을 고려할 수 있다.

      - 정보분류 : AKS에서 처리되는 정보의 중요도 및 보안등급을 분류

      - 액세스 제어 : RBAC, 네임스페이스별 접근통제 정책 수립

      - 암호화 : 민감 데이터 및 시크릿 암호화

      - 네트워크 보안 : NSG, 보안 그룹을 이용한 네트워크 접근통제 정책

      - 보안 모니터링 : 로그 및 이벤트 모니터링 시스템 구축

      - 취약점 관리 : 정기적 취약점 스캐닝 및 패치 관리

      - 백업 관리 : 백업 정책 및 절차 수립

      - 개인정보 보호 : 개인정보 처리 방침 수립


      AKS 구축 과정에서 보안

      AKS 기본 리소스를 생성하고 나면 일반적을 로컬PC에서 k8s 명령어를 이용하여 구축 작업을 대부분 진행하였다.

      기존 VM환경에서는 azure portal을 이용하는 빈도가 많았지만, AKS의 경우에는 azure를 사용하는 느낌이 없을 정도로 azure portal을 진입할 상황이 별로 없었다.

      .kube/config 크리덴셜 정보만 가지고 있으면 퍼블릭 네트워크에서 AKS로 접속하여 kubectl 명령을 수행할 수 있었다.


      네트워크 접근통제 정책 적용

      kubectl 명령을 수행할 수 있는 접근 가능한 IP 범위를 아래의 방법으로 제한할 수 있다.

      argocd를 사용하는 사용자라면 argocd 가 해당 클러스터로 배포할 수 있도록 argocd가 설치된 클러스터 IP를 허용IP에 등록하여야 한다.

      image.png


      public LoadBalancer 서비스 접근통제 정책 적용

      1. 시행착오

      AKS에서 public LoadBalancer를 사용하는 방식으로 서비스를 구성하고 나면 MC(Managed Cluster)리소스 그룹의 NSG에 아래와 같이 500번대에 access list가 생성이 된다.

      처음 생성될 때는 Source가 Internet으로 해서 누구나 접근 가능하도록 NSG 정책이 구성되어 제공된다.

      argocd를 서비스로 구성한 상태라 내부 담당자만 접속이 필요하여 NSG에 소스IP를 기준으로 아래와 같이 접근통제 정책을 적용하였다.

      몇 일 후에 500번대에 적용한 정책이 모두 사라졌다.

      이유를 확인해 보니 500번대는 azure가 자동으로 생성하는 정책이니 사용자가 변경하더라도 반영이 되지 않는 것을 알게 되었다.

      image.png

      * 소스와 목적지는 마스킹 처리


      2. 다른 방법으로 적용하여 해결

      500번대 보다 우선 순위가 높은 번호로 사용자가 정책을 정의하여 적용하면 된다.

      이제 지정한 사용자만 내부 용도의 서비스에 접속 가능하다.

      image.png



      ACR 리소스 보호

      초기 구축에는 Access keys 방식으로 사용했으나, 구축 마무리 시점에 repo scope별 토큰을 적용하는 방식으로 변경했다.

      1. push에 대해 토큰 방식 적용

      push만 필요한 상황이라 push 범위로만 한정하여 운영하도록 변경하여 적용했다.

      image.png

      2. 기존 Access keys방식 disabled

      기존의 접속방식은 보안 취약성이 있어 disabled 처리를 했다.

      image.png


      워크로드별 네트워크 세그멘테이션

      구축 당시 부터 mgmt/dev/stg/prd로 구분하여 네트워크를 구성하고, 리소스그룹도 달리 배치를 해 두었다.

      image.png

      클라우드 보안 모니터링

      베스핀글로벌에서 개발한 OpsNow360을 통해 모니터링에 포함이 되어 관리되고 있다.

      아래의 내용은 ACR이 public에 공개 되어 있다는 내용이다. 위에서 설명한 대로 public access 비활성화가 대책으로 적용되어야 한다.

      image.png


      백업 관리

      azure에 AKS 백업에 대한 기능이 있지만 아직 적용할 수 있는 단계가 아니라 사용할 수는 없다.

      image.png


      AKS 버전 관리

      상용기 론칭 전까지 안정성이 확인된 최신 AKS버전으로 업그레이드까지 완료를 하였다.

      image.png


      정리

      AKS로 쿠버네티스를 시작하여 상용기까지 인프라 전환을 마치고 보안 요소도 대응을 하고 있다.

      현재까지 클러스터 접근제어(허용IP 범위), public LoadBalancer서비스 접근제어(NSG), ACR리소스 보호(토큰), 워크로드별 네트워크 세그멘테이션, 버전 업그레이드, 클라우드 보안 모니터링(OpsNow)이 진행되었다.

      백업 관리는 추가로 오픈소스를 찾아 보려고 한다.

      댓글 0

      DEVOTEE를 활성화 시키면
      지금 작성한 댓글에 AI가 댓글을 달아줍니다.

      broccoli 님의 최신 블로그

      더보기

      DEVOTEE 추천 블로그

      동영상 기고하기