Levit People Interview

보안과 속도를 동시에 구현한 ZTA 도입 이야기

DevSecOps Engineer 김재곤님

 🙋이런 사람이 답변했어요

🎤  인터뷰 시작 전 한마디

DevSecOps는 보안을 강화하면서도 개발과 운영이 원활하게 이루어지도록 지원해야 하는 포지션입니다. 


앞으로 보안이 개발 속도를 방해하지 않고, 오히려 가속화하는 환경을 만들고 싶어요. 레브잇에서 더 안전하고 효율적인 보안 환경을 구축하면서도 개발팀이 더 빠르게 혁신할 수 있도록 지원하는 DevSecOps 엔지니어로서의 역할을 계속해서 해나가고 싶습니다.

안녕하세요! 간단한 자기소개 부탁드립니다.

안녕하세요! 레브잇에서 DevSecOps 업무를 맡고 있는 7년 차 엔지니어 김재곤입니다. 

정보보안을 통해 서비스에 가치를 더하는 방법을 늘 고민하며 커리어를 쌓아왔습니다.

재곤님은 어떤 커리어를 거쳐오셨나요? 합류를 결정하신 이유도 궁금합니다.

첫 커리어를 게임사에서 시작해 서버와 네트워크를 담당하며 다양한 정보보호 시스템과 아키텍처를 경험했습니다. 이후 뱅크샐러드, 브랜디, 코드스테이츠를 거치면서 ZTA(Zero Trust Architecture), SASE(Secure Access Service Edge), CSPM(Cloud Security Posture Management) 등 클라우드 보안 분야에서 전문성을 쌓았습니다.


레브잇의 연락을 받고 몇 차례 대화를 나누며 조직의 비전과 인재 밀도를 보고 큰 인상을 받았어요. 모두가 임팩트를 위해 빠르게 움직이고, 탁월함을 추구하는 모습이 저와 잘 맞아 함께하게 되었습니다.

레브잇에 합류하신지 약 1년 정도 되었는데, 재곤님이 경험한 레브잇은 어떤 조직인가요?

레브잇은 빠른 실행력을 통해 큰 임팩트를 만들어내는 조직입니다. 스타트업이 대기업보다 잘할 수 있는 강점인 ‘속도’를 극대화 한 팀이에요. 물론 속도 때문에 놓치는 부분도 있지만, 회고하고 학습하며 이를 개선해나가는 문화를 가지고 있고, 제 역할은 그런 빈틈을 메워 조직이 더 단단해질 수 있도록 돕는 일이라고 생각합니다.

DevSecOps 역할은 생소하신 분도 있을 것 같아요. 어떤 일을 하고 계신지 소개해주세요.

기존에는 Security Engineer로 업무를 진행하셨는데, 어떤 차이가 있을까요?

DevSecOps는 DevOps에 보안을 통합한 개념이에요. 개발과 운영 과정 전반에 보안을 자동화하고 내재화하는 역할을 합니다. 

현재는 GitOps로 정보보호시스템을 운영하고, SCA, SIEM, CSPM모니터링을 운영하여 보안 위협을 식별하고 있습니다. 그리고 클라우드 환경에서 네트워크 정책(DNS, k8s network policy, VPC, ELB etc..)이나 워크로드 RBAC를 구성하는 업무들도 진행합니다. SAST나 DAST를 통해 보안점검을 자동화하는 작업도 더 발전시켜 나가려 해요.


Security Engineer로서 보안 아키텍처를 설계하며 DevOps 팀과 협업을 많이 했습니다. 하지만 부서 간 경계로 인해 디커플링(de-coupling) 문제가 발생하는 경우가 많았죠. 이에 DevOps와 더 깊이 협업하기 위해 DevSecOps로 직무를 확장하게 되었습니다. 저도 DevOps의 영역을 더 공부를 해왔기도 했고, 제가 바라는 방향성이 개발 친화적 보안을 만드는 것이기 때문에 ‘DevOps의 영역도 같이 필요하겠구나’ 라고 생각을 했습니다. 결과적으로 개발과 보안을 동시에 이해하고 융합하는 새로운 경험을 쌓고 있습니다. 

레브잇은 Levit-wide Impact, Speed with Impact 라는 가치를 추구하고 있어요. 

그동안 레브잇에서 함께하시면서 두 가치 핵심가치에 맞게 임팩트를 냈던 사례가 있다면 소개해주세요.

3개월 동안 ZTA 아키텍처를 도입하고 최적화 했었어요. ZTA(Zero Trust Architecture)를 도입하면서 보안과 접근성 모두를 충족해야 하는 상황에서, 빠르게 최적화된 아키텍처를 구축하는 것은 쉽지 않았지만, 결과적으로 레브잇 전반에 걸친 큰 변화를 만들어낼 수 있었습니다.

🧑‍💻 3개월 간의 ZTA 전환 과정 자세히 보기

시작 당시의 문제 상황

레브잇의 기존 환경에는 다음과 같은 보안 및 네트워크 관리상의 한계가 있었습니다:

  1. 권한 관리와 인증의 비효율성
    • 리소스 접근 권한을 일일이 수작업으로 설정하다 보니 최소 권한 원칙이 지켜지지 않는 경우가 발생했습니다.
    • IAM 사용자는 잘 관리되지 않았고, 개발 팀과 운영 팀 모두 접근 관리에 어려움을 겪었습니다.
  2. Bastion Host와 PEM 키 기반 접근의 번거로움
    • Bastion Host를 통해 리소스에 접근하는 방식은 관리의 복잡성과 함께 접근 로그 및 권한 제어에서 비효율이 있었습니다.
    • 팀원마다 PEM 키를 공유하거나 개별적으로 관리해야 했기 때문에 키 유출이나 오남용의 위험도 존재했습니다.
  3. 기존 VPN의 한계와 불편함
    • 기존에 사용하는 VPN을 도입해 보안 접근을 시도했지만, 네트워크 확장성과 유연성이 부족했습니다.
    • 기존 VPN은 네트워크 경계 중심의 보안 모델에 의존했기 때문에, 리소스에 불필요한 접근이 허용되거나 최소 권한 원칙을 제대로 적용하기 어려웠습니다.
    • VPN 설정과 연결이 번거롭고, 새로운 팀원이 온보딩될 때도 네트워크 접근 권한을 부여하는 과정이 비효율적이었습니다.
  4. 모니터링과 보안 위협 탐지의 부재
    • 클라우드 리소스와 네트워크에서 발생하는 이벤트를 실시간으로 모니터링할 수 없었기 때문에 위협을 사전에 탐지하고 대응하는 것이 어려웠습니다.
    • 잠재적인 설정 오류(S3 퍼블릭 접근, 잘못된 보안 그룹 등)를 발견하더라도 대응이 늦어지는 경우가 많았습니다.


ZTA 도입을 위한 목표와 접근 방식

이러한 문제를 해결하기 위해 3가지 핵심 목표를 설정했습니다:

  1. 인증과 권한 관리 일원화: Okta와 AWS Identity Center를 사용해 모든 사용자의 인증 및 접근 관리를 중앙화했습니다.
  2. 네트워크 신뢰 제거: Tailscale을 통해 Zero Trust 기반 네트워크를 구축하여 IP 기반 신뢰를 제거했습니다.
  3. 보안 모니터링 및 자동화: Datadog을 활용해 클라우드 리소스와 네트워크를 실시간으로 모니터링하고 위협에 신속하게 대응할 수 있도록 했습니다.


도입 과정에서 진행한 주요 작업

1. Okta와 AWS Identity Center 통합

  • Okta를 통해 MFA(다중 인증)를 필수화하여 사용자 인증의 강도를 높였습니다.
  • AWS Identity Center와 통합하여 팀별/개인별 권한을 세분화하고, 중앙에서 모든 접근 권한을 관리할 수 있도록 구성했습니다.
  • 온보딩 프로세스를 간소화해 새로운 팀원이 빠르게 필요한 리소스에 접근할 수 있도록 했습니다.

2. Tailscale 기반 네트워크 아키텍처 설계

  • 기존 VPN을 완전히 제거하고, Tailscale을 활용해 Zero Trust 네트워크를 구축했습니다.
  • ACL(Access Control List)을 GitOps 방식으로 관리해 네트워크 정책 변경을 식별하고 즉시 반영되도록 했습니다.
  • 사용자 인증과 기기 검증을 통해 보안 수준을 한층 더 높였고, 기존 VPN의 성능 저하 문제를 해결했습니다.

3. Datadog을 활용한 실시간 모니터링과 자동화

  • Datadog의 SIEM(Security Information and Event Management) 기능을 도입하여 클라우드 및 네트워크 로그를 실시간으로 수집하고 분석했습니다.
  • 잘못된 리소스 설정이나 보안 위협을 탐지하면 Slack으로 즉각 알림을 보내는 자동화 시스템을 구축했습니다.
  • CSPM(Cloud Security Posture Management)을 통해 클라우드 리소스의 설정 상태를 평가하고, 보안 규정을 위반하는 항목을 빠르게 식별했습니다.


결과: ZTA 도입 후 레브잇의 변화

ZTA 아키텍처 도입을 통해 레브잇은 다음과 같은 성과를 이루어냈습니다:

  1. 보안 강화
    • 최소 권한 원칙이 철저히 적용되면서 불필요한 접근이 완전히 차단되었습니다.
    • Okta와 Tailscale을 통해 사용자 및 기기 인증이 강화되었고, 보안 취약점이 줄어들었습니다.
  2. 운영 속도 향상
    • Tailscale 도입 후 네트워크 접근 시간이 약40% 단축 되었으며, VPN의 성능 문제도 사라졌습니다.
    • GitOps 기반 접근 정책 관리로 네트워크 변경 작업이 50% 이상 빠르게 진행되었습니다.
  3. 실시간 위협 탐지 및 대응
    • Datadog을 통해 보안 위협 탐지 시간이 60% 단축되었고, 잠재적인 보안 사고를 사전에 예방할 수 있었습니다.
    • CSPM 도입으로 클라우드 리소스의 설정 오류가 감소하면서 감사 및 컴플라이언스 대응도 수월해졌습니다.
  4. 팀 생산성 향상
    • 온보딩 시간이 단축되면서 새로운 팀원이 빠르게 업무에 투입될 수 있게 되었습니다.
    • 개발 팀과 운영 팀이 더 이상 네트워크 설정이나 접근 권한 문제로 시간을 소모하지 않게 되었습니다.

결과적으로 3개월 동안 ZTA 도입을 성공적으로 마쳤어요. 단순히 보안을 강화하는 데 그치지 않고, 이 프로젝트를 통해 보안을 강화하면서도 운영 속도와 효율성을 유지할 수 있다는 것을 증명했다고 생각해요. 앞으로도 레브잇이 더욱 안전하고 효율적인 환경에서 빠르게 성장할 수 있도록 지속적으로 지원할 계획입니다. 

레브잇에서 가장 풀기 어려웠던, 도전적인 목표는 무엇인가요?

아무래도 위에서 말씀드린 3개월 동안의 ZTA(Zero Trust Architecture) 도입과 최적화였습니다. 특히 기존의 Bastion Host와 PEM 키 기반 접근 방식은 레거시 시스템에 가까웠기 때문에 이를 불편함 없이 변화하는 과정이 매우 까다로웠어요.


기존 네트워크 접근 모델을 VPN 대신 Tailscale로 전환하는 과정에서 가장 큰 어려움은, 기존 시스템을 운영하면서 새로운 보안 모델을 도입하는 것이었어요. 중단 없는 운영을 보장하면서 보안 환경을 개선해야 했기 때문에 서비스 가용성과 팀원들의 개발 속도를 저해하지 않는 방향으로 점진적으로 시스템을 이전하는 데 큰 노력이 필요했습니다.


또한, 인증과 권한 관리를 Okta와 AWS Identity Center로 통합하는 과정에서도 다양한 팀의 요구사항과 리소스별 접근 권한을 세분화하는 일이 만만치 않았습니다. "모든 접근을 철저히 검증한다"는 ZTA 원칙을 구현하면서도 팀원들이 불편함을 느끼지 않도록 사용자 경험을 고려한 설계가 필요했기 때문이죠. 이 과정에서 많은 시행착오가 있었지만, 결과적으로 더 안전하고 효율적인 접근 관리 모델을 구축할 수 있었습니다.

재곤님이 레브잇에서 제일 크게 느끼시는 가치나 장점이 무엇인지 궁금해요.

레브잇에서 가장 큰 가치는 뛰어난 동료들인 것 같아요. 조직의 인재 밀도가 높기 때문에, 함께 일하는 팀원들에게 항상 신뢰를 느껴요. 함께 많이 협업하는 DevOps나 DBOps 분들도 각자의 영역에서 뛰어난 전문성을 발휘해주기 때문에 제가 제 업무에 더욱 집중할 수 있는 환경이 조성됩니다.


특히 레브잇은 채용 과정에서 오너십이 부족한 영역을 채우는 데 초점을 맞춰왔습니다. 그래서 각 분야에서 탁월한 분들이 합류해주셨고, 서로가 서로를 신뢰하고 의지하며 일할 수 있는 팀 문화가 자리 잡혔다고 생각해요. 이는 개인적으로도, 조직적으로도 큰 강점이라고 느낍니다.

레브잇에서 앞으로 풀고 싶은 문제/이루고 싶은 꿈이 있다면 무엇인가요?

제가 앞으로 레브잇에서 풀고 싶은 문제는 "보안이 개발 속도를 방해하지 않고, 오히려 가속화하는 환경을 만드는 것"입니다. DevSecOps 엔지니어로서 제가 중요하게 생각하는 목표는 "보안을 자동화"하고, "개발 프로세스에 자연스럽게 녹아들게" 하는 것입니다.

이를 위해서 다음과 같은 목표를 가지고 있습니다:


  1. 보안 점검 자동화 및 고도화

    SAST(정적 분석), DAST(동적 분석), 그리고 SCA(소프트웨어 종속성 분석)를 CI/CD 파이프라인에 완벽히 통합해 개발 초기 단계부터 보안 이슈를 빠르게 발견하고 해결할 수 있는 시스템을 만들고 싶습니다.

  2. 개발자가 신뢰할 수 있는 보안 환경 구축

    보안이 장애물이 아닌 개발 속도를 지원하는 도구가 되도록 개선하고 싶습니다. 이를 위해 개발자들이 보안 체크를 수월하게 통과할 수 있는 가이드라인과 도구를 제공하고, 반복되는 보안 작업은 최대한 자동화할 계획입니다.

  3. 레브잇의 글로벌 확장에 맞춘 보안 체계 구축

    레브잇이 글로벌 비즈니스로 성장하게 되면 더 많은 규제와 보안 요구사항에 대응해야 할 것입니다. ZTA와 함께 규정 준수(CSPM), 데이터 보안, 위협 탐지를 강화해 레브잇의 글로벌 성장에 보안이 걸림돌이 되지 않도록 완벽한 기반을 마련하는 것이 제 꿈입니다.

마지막 질문이에요!

현재 팀원을 채용하고 계신데 어떤 동료와 함께하고 싶으신가요?

첫 번째는 협업이 가장 중요하다 생각해요. 보안팀만의 목표가 아니라 개발팀, 운영팀과 함께 협력하며 더 나은 시스템을 만들어 나가야 합니다. 함께 문제를 정의하고 솔루션을 만들어 나가는 과정에서 서로 신뢰하고 열린 마음으로 소통하는 것을 가장 중요하게 생각합니다.


또 빠르게 실행 하면서도 의미 있는 결과나 가치를 만들어내는 동료와 함께하고 싶습니다. 단순히 "일을 끝내는 것"이 아니라, 무엇이 문제이고, 이 문제를 왜 해결해야 하는지를 고민하고 실행하는 사람과 협업할 때 가장 큰 시너지가 난다고 믿습니다.


마지막으로는 배움을 두려워하지 않는 분입니다. 기술은 늘 빠르게 변화 하잖아요. 새로운 도구나 아키텍처를 배우고 적용하는 과정에서 실패를 두려워하지 않고, 그 실패에서 배울 수 있는 동료와 함께하고 싶습니다. 레브잇처럼 실패를 회고하고 학습하는 조직 문화에서 이러한 가치를 공유하는 동료는 큰 자산이라고 생각합니다.