트러블 슈팅

배포과정중 외부포트 문제 해결

티코딩 2023. 7. 24. 18:41

분명 기존 인바운드 규칙에서 포트는 전체로 고정되어있었다.

그래서 나는 절대로 포트 문제는 아니라고 생각했는데,
인바운드 규칙을 새롭게 만들고 포트를 8080으로 했더니 포스트맨으로도 api 호출이 가능해졌다.

원래 EC2 내에서 curl 명령어로는 api가 잘 호출이 됐었다.
하지만 포스트맨으로 테스트하려고하면 timeout이 되면서 연결이 안됐던게 바로 외부 포트가 연결이 안되어있었기 때문이다.

 

여기서 의문이 든다.

 

 

분명 기존 인바운드 규칙에서 포트범위는 전체였다.

그런데 왜 닫혀있었던걸까?

  1. 포트 포워딩 설정: EC2 인스턴스 내부에서 애플리케이션이 동작하는 포트와 보안 그룹의 인바운드 규칙에 설정된 포트가 일치하지 않을 수 있습니다. 예를 들어, 애플리케이션이 8080 포트에서 동작하고 있지만 보안 그룹의 인바운드 규칙이 8080 포트가 아닌 다른 포트를 열어놓았을 경우에는 API 호출이 제대로 동작하지 않을 수 있습니다.
  2. 로컬 방화벽 설정: EC2 인스턴스 내부에서 로컬 방화벽 설정이 되어있을 경우에도 API 호출이 막힐 수 있습니다. 로컬 방화벽에서 해당 포트를 차단하거나 특정 IP 주소에서의 접근을 허용하지 않은 경우에는 외부에서의 API 호출이 막히게 됩니다.

이러한 이유가 있다고 한다.