Kamal + SSM으로 GitHub Actions에서 EC2에 배포하기
· 4 min read
이전 글에서 EC2를 public subnet에 두더라도 올바르게 구성하면 안전하다고 했다. 그 구성에서는 보안 그룹 인바운드에 CloudFront prefix list의 443만 허용하고, 관리 접속은 SSM Session Manager로 처리한다. SSH 포트는 열려 있지 않다.
하지만 Kamal은 SSH로 EC2에 접속해서 Docker 명령어를 실행한다. SSH 포트 없이 Kamal 배포를 어떻게 할 수 있을까. 이 글은 OIDC, SSM, 일회성 SSH 키를 조합해서 이 문제를 해결하는 방법을 다룬다.