해결된 질문
작성
·
324
·
수정됨
0
서버 구성하기 미션을 진행중입니다.
서버 실행을 하고 curl http://localhost:8080 명령어에 의해서 응답까지는 옵니다.
외부망 보안그룹에서 다음과 같이 설정했습니다.
브라우저에서 요청이 가는지 확인하고
https의 443 포트는 tls 설정을 하지 않으면 접속이 안되는걸로 알고 있어서
브라우저에서 요청하기 위해서 80포트를 전체대역대에 대해서 열어줬습니다.
인터넷 게이트웨이도 생성이 되어있고, 외부망의 라우팅 테이블에서 인터넷게이트에 대해서 전체대역대로 설정이 되어있습니다.
curl명령어를 통해서 요청을 보내봤는데 connection refuesed 가 뜹니다.
브라우저에서 http://3.36.115.136:80 으로 보내봤는데도
3.36.115.136에서 연결을 거부했습니다.
와 같은 오류가 뜹니다.
ping 체크 잘 되고
port 체크에서도 telnet: Unable to connect to remote host: Connection refused 와 같은 오류가 발생합니다.
어떤점을 더 체크해봐야할까요?
3tier 구성하기 강의를 들으면서 진행하다가 미션을 하지 않을것을 확인하고 중간에 미션을 진행하고 있는데
혹시 이점에서 문제가 있었을까요?
답변 2
0
해결했습니다.
nginx를 띄우지 않고
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
위 명령어를 통해서 80포트에 대해서 8080포트로 포트포워딩 하니까 연결 됐습니다.
그런데 질문이 있습니다.
보안그룹에서 80포트에 대해서만 전체대역대로 열어줬는데
위와 같이 80 포트에 대해서 8080 포트로 포트 포워딩 설정을 하고나니까
curl ip 80
cur lip 8080
80포트와 8080포트가 둘다 포트 체크가 됩니다.
브라우저로 접속할 경우 80포트에 대해서만 접속이 가능하고 8080포트에 대해서는 접속이 되지 않구요.
혹시 이유를 알 수 있을까요?
0
안녕하세요, 인프런 AI 인턴입니다.
김동현님의 서버 실행 후 외부에서 curl 명령어로 접근 시 ‘connection refused’ 오류가 발생하는 상황에 대해 질문해주셨네요. 해당 문제는 보안 그룹, 인터넷 게이트웨이 설정, 서버 설정 등 여러 요소에서 발생할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
AWS pem 접속시 22번 포트 에러가 발생합니다. 관련 문제에 대한 지식공유자님의 답변으로, 소개된 답변에서는 SSH 포트 접근과 관련된 문제 해결 방법이 제공되었습니다. 이와 유사하게 네트워크 설정 문제를 진단할 때 몇 가지 점검해볼 수 있는 요소들을 언급했습니다. 우선, 서버가 올바르게 실행되고 있는지 확인하고, 보안 그룹이나 네트워크 ACL 설정에서의 문제를 점검해보세요. 그리고, 인스턴스에 할당된 공인 IP 주소와 보안 그룹 설정이 올바른지 다시 한 번 확인하는 것도 중요합니다.
혹시 보안 그룹 설정, 인터넷 게이트웨이 구성, 서버의 HTTP 서비스 실행 여부 등을 이미 확인하셨으나 문제가 계속된다면, 구체적인 서버 구성, 보안 그룹 및 네트워크 ACL 설정 상세 정보를 질문에 추가 제공하시면, 커뮤니티가 더 구체적이고 실질적인 도움을 드릴 수 있을 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
아이코.. 제가 이 질문을 너무 늦게 확인했네요 ㅠㅠ 죄송합니다.
지금 상황을 보면, 보안그룹에는 전체대역에 대해 80, 443 포트 허용정책이 추가되어 있네요
그리고 80 포트로 들어온 요청에 대해 8080 포트로 요청이 전달되도록 포트포워딩을 걸어뒀구요.
확인했던건, curl 명령어로 80과 8080에 대해 확인해보신거 같은데요.
IP로 넣은 값이 무엇일까요?
만약 해당 서버에서 테스트를 진행했고, IP가 127.0.0.1 이었다면 로컬호스트에 대해 iptables로 별도의 정책을 추가하지 않는한 요청에 대한 응답이 왔을거에요.
브라우저에서 접속하는 것은 인터넷 환경에서 접근하는 것이기 때문에, 80 포트에 대한 정책만 추가되어 있으므로 8080포트에 대해서는 접근이 안되는 것이 맞습니다.
혹시 추가로 궁금한 점이 있다면 문의 남겨주세요.
감사합니다.