위 다이어그램은 실제 EC2 인스턴스 내에 서비스 되고있는 내부 서비스들의 구성 입니다. 내부 서비스들의 요청 / 응답은 전부 Nginx에서 리스닝 하고 각 포트에 맞는 서비스에게 프록싱 해주고 있습니다.
<aside> 💡 해당 문서 작성일 기준(2022.07.14)으로 내부 서비스 중 인증서를 사용하고 있는 서비스는 파트너 서비스(운영), 어드민 (운영) 이 있으며 Nginx 에서 인증서를 적용하고 있습니다
</aside>
인증서가 사용되고 있는 서비스들은 전부 Let’s Encrypt 에서 발급받고 있으며 CA 인증을 받은 발급기관 중 무료로 인증서를 발급해주는 몇몇 기관 중 가장 많이 사용되고 있고 와일드카드 사용이 가능하다는 장점이 있습니다. (유료 인증서 중에서도 와일드카드를 사용하면 평균 1년 사용료 40-80만원)
인증서 사용기간은 90일이며 만료되기 전 재발급 받는 형태로 사용하고 있으며 자동으로 cron 으로 30일마다 인증서 재발급 요청을 하고 있습니다.
참고
인증서 자동갱신 설정
인증서 오류 발생 사례
Let's Encrypt 인증서 갱신 오류 - Problem binding to port 80: Could not bind to IPv4 or IPv6 - Hanul
개발, 운영환경 모두 EC2 인스턴스(admin-2)에 배포되어 있으며 zam_dev.pem 파일을 사용하여 해당 인스턴스로 원격 접근할 수 있습니다.
# zam_dev.pem 파일이 있는 경로에서 아래 커맨드 실행
$ sudo ssh -i "zam_dev.pem" [email protected]