인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

제임스리님의 프로필 이미지
제임스리

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

EC2 생성하기

ssh 명령어 port 22: Connection timed out

작성

·

17K

1

안녕하세요. 제로초님!

좋은 강의 잘 수강하고 있습니다. 

 

ec2 생성하기 영상에서 배포에 필요한 첫 단계로 aws 인스턴스를 만들어 ssh 연결을 하는 과정에서 어려움이 발생했습니다.  스스로 최대한 해결하려고 시도해봤지만, 안타깝게도 그러지 못 하고 며칠간 삽질만 했습니다. 

 

삽질한 내용을 이 곳에 담기 어려워보여
개인 기술 블로그에 작성하였으니 해당 내용을 보시고 조언을 해주시면 감사하겠습니다. 

 

https://juicyjerry.tistory.com/283

 

좋은 강의를 만들어 주셔서 감사드리고

오늘도 좋은 하루 보내세요

답변 4

1

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

일단 처음부터 인바운드 22포트는 허용 상태셨죠?

허용상태였다면 공유기때문에 진짜 막혔을 수도 있으니 222로 바꾸신 것 같은데

222로 바꾸는 작업을 aws ec2 내부에서 하신 게 맞나요?

ubuntu virtualbox로 되어있는데 그게 ec2가 맞나요? 느낌이 질문자분의 컴퓨터만 222로 시도하게끔하신것같고

ec2는 그대로 ssh를 22번 포트에서 연결하고 있을 것 같아서요.

0

제임스리님의 프로필 이미지
제임스리
질문자

빠른 답변 감사합니다.

제로초님 덕분에 3일 삽질이 보람(?)으로 귀결돼 다행입니다. 

 

제로초께서 알려주신 내용은 이미 한 번 검색해 봤던 페이지였지만,  이전에 해보고 안 됐다는 이유만으로 그저 지나치는 정보 중 하나라고 인식했던거 같습니다. 또한, 제가 아직 관련 지식이 부족하여 이해가 부족한 부분이 있었습니다.  

 

 

거두절미하고 말씀드리면, 연결을 성공했습니다. 

 

 

0. 순서는  알려주신 내용을 참고했습니다. 다만, 해당 내용에서  추가로 

1. ec2를 지웠다가 새로 만든 것과

2. 방화벽 설정을 다시 해준 것  (status: inactive -> active)

3. 와이파이를 공유기가 아닌 스마트폰 핫스팟으로 잡았다는 점입니다. 

 

 

0, 1, 2번 과정까지 했는데 또 connection timed out 이 떴습니다.

혹시나 하는 마음에 인터넷을 바꿨더니 바로 됐습니다. 

검색하다보니 공유기 별로 해외 사이트 유입을 차단하는 기기가 있다고 하던데.. 

sk 브로드밴드 공유기만 그런건지 뭔지 자세한 내용은 평일에 고객센터에 문의할 계획입니다. 

 

아무튼 덕분에 문제도 해결하고 

많이 배웠습니다. 앞으로도 잘 부탁드립니다.

늘 감사합니다. 

 

참고한 내용  https://gist.github.com/tusharf5/89a094de01321880fdf44bf1d4e4ea4c

0

제임스리님의 프로필 이미지
제임스리
질문자

빠른 답변 감사합니다.

 

제로초님께서 말씀해주신 내용을 이해했다고 생각이 듭니다. 다만, 말씀하신 'ec2 서버에 접속 후 포트 번호를 수정한다'는 것이 저는 'aws 접속 - ec2 인스턴스 - 해당 인스턴스 인바운드 규칙에서 222번 포트 추가(나머진 제거) 하는 것'으로 이해했습니다.


혹시 몰라 검색도 해봤는데 맞는거 같습니다.  혹시 제 말이 틀리다면,  괜찮으시다면 aws ec2 서버에서 ssh 수정하는 레퍼런스를 알려주시면 혹은 관련 키워드를 던져주시면 더 좋을거 같습니다. 

 

* 아래는 인바운드 규칙 수정 후 이미지입니다.


제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

제임스리님 컴퓨터 - 방화벽(인바운드) - EC2

이렇게 있을 때 제임스리님 컴퓨터와 방화벽만 222 포트로 바꾸신 셈입니다. 정작 EC2는 계속 22번에서 ssh 접속을 대기하고 있는 겁니다.

https://gist.github.com/tusharf5/89a094de01321880fdf44bf1d4e4ea4c

이걸 따라하시면 됩니다(포트는 922대신 222로)

접속은 ssh가 현재 안 되니 ec2 화면에서 인스턴스 누르고 연결 눌러서 접속하시고요

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

방화벽(인바운드)과 EC2는 별개의 존재입니다

0

제임스리님의 프로필 이미지
제임스리
질문자

빠른 답변 감사합니다.

 

1. 처음에 인바운드 22포트는 허용 상태였습니다.

2. 222로 바꾸는 작업을 aws ec2 내부에서 하신 게 맞나요?   

=> 말씀하신 aws ec2 내부 작업이란 의미가 아래 보이시는 인바운드 규칙을 의미하는 걸까요? 잘 이해가 안 되네요. 맞다면, 아래 이미지처럼 설정을 했습니다.

 

3. ec2는 그대로 ssh를 22번 포트에서 연결하고 있을 것 같아서요.

=> ssh 명령어를 -p 222  옵션을 붙이면 port 222로 접속을 시도하는거 같고, 단순하게 이런식으로 ssh -i "aws-es2-jaymarket.pem" ubuntu@ec2-3-37-130-36.ap-northeast-2.compute.amazonaws.com 하면 port가 22로 찍히더라구요...

 

 

 

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

제가 말씀드리는 건 이겁니다. 아무리 보내는 쪽에서 ssh를 222번 포트로 바꿔봤자 요청하는 쪽에서 바꾼 거라는 뜻입니다. 요청을 받는 ec2 서버는 222번 포트에서 ssh 요청을 받는다는 걸 아예 모릅니다. ec2 서버에 접속하셔서 ssh 22번 포트를 222번 포트로 바꾸셔야 합니다.

제임스리님의 프로필 이미지
제임스리

작성한 질문수

질문하기