AWS(Amazon Web Service)

[AWS] SSH 관련

yunseohhe 2024. 9. 14. 11:31

SSH

  • 명령줄 인터페이스 도구이다.
  • Mac과 Linux에서 사용할 수 있다.
  • Windows는 10이상의 버전에서 사용할 수 있다.

 

Putty(퍼티)

  • SSH 프로토콜을 사용해 EC2 인스턴스에 연결하도록 한다.
  • 모든 버전의 Windows에서 사용 가능하다.

 

EC2 Instance Connect

  • 터미널, 퍼티가 아닌 웹 브라우저로 EC2 인스턴스에 연결한다.
  • 모든 버전의 Mac과 Linux 그리고 Windows에서 사용 가능하다.

 

 

 

SSH 문제 해결

SSH 트러블 슈팅

 

1) 연결 시간 초과가 발생하는 경우

보안 그룹에 문제가 있는 경우 발생합니다. 모든 유형의 시간 초과(SSH뿐만 아니라)는 보안 그룹 또는 방화벽과 관련 있습니다. 보안 그룹이 다음과 같이 설정되었는지 확인하고, EC2 인스턴스에 올바르게 할당되었는지 확인해주세요.

2) 연결 시간 초과 문제가 계속해서 발생할 경우

위와 같이 보안 그룹이 올바르게 설정되었으나 여전히 연결 시간 초과 문제가 발생하는 경우, 회사 방화벽 또는 개인 방화벽이 연결을 차단한다는 뜻입니다. 다음 강의에서 설명하는 대로 EC2 Instance Connect를 사용하세요.

 

3)SSH가 Windows에서 동작하지 않을 경우

  • ssh command not found라고 뜨면 PuTTY를 사용해야 합니다.
  • 영상을 따라 하세요. 동작하지 않는다면 다음 강의에서 설명하는 대로 EC2 Instance Connect를 사용하세요.

 

4) 연결이 거부될 경우

이는 인스턴스에는 도달할 수 있지만 해당 인스턴스에서 SSH 유틸리티가 실행되고 있지 않다는 뜻입니다.

  • 인스턴스를 재시작하세요.
  • 여전히 동작하지 않는다면, 인스턴스를 종료하고 새 인스턴스를 만드세요. 반드시 Amazon Linux 2를 사용하세요.

 

5)권한 거부(publickey,gssapi-keyex,gssapi-with-mic)

이는 다음의 두 상황에서 발생합니다.

  • 보안 키가 틀렸거나 보안 키를 사용하지 않는 경우입니다. EC2 인스턴스 구성을 확인하여 올바른 키를 할당했는지 확인하세요.
  • 잘못된 사용자를 사용할 경우에도 발생합니다. Amazon Linux 2 EC2 인스턴스에서 실행했는지 확인하고, ec2-user 사용자를 사용하고 있는지 확인하세요. SSH 명령어 또는 PuTTY 구성에서 ec2-user@<public-ip> (ex:ec2-user@35.180.242.162) 코드를 실행할 때 지정해야하는 사항입니다.

 

6) 으아아악! 아무것도 작동하지 않아요!

 

당황하지 마세요. 다음 강의를 보고 EC2 Instance Connect를 사용하세요. 반드시 Amazon Linux 2를 사용하시고, 튜토리얼을 따라하세요. :)

 

7) 어제는 연결이 가능했는데 오늘은 되지 않습니다.

EC2 인스턴스를 중단했다가 오늘 다시 시작했을 경우, 이런 일이 발생할 수 있습니다. 이 경우, EC2 인스턴스의 퍼블릭 IP가 변경됩니다. 따라서 명령어 또는 PuTTY 구성에서 새 퍼블릭 IP로 업데이트하여 저장하세요.

 

성공적인 트러블 슈팅으로 해결하셨길 바랍니다!
(출처 : Stephane )