AWS

AWS EC2 인스턴스 ssh접속방법 (Putty)

난쏘공돌이 2021. 7. 28. 02:09

이 포스팅을 찾아오신분들은 그냥 리눅스 쓰듯이 aws 가상머신에 ssh접속을 하시려다

실패의 쓴맛을 보시고 찾아오신 분들이라고 생각이 됩니다.

 

아마 키페어. 즉 비대칭키 혹은 ssh의 개념을 잘 이해하지못하셔서 그럴수도 있을거라 생각합니다.

저도 그랬으니까요 ㅎㅎ

 

저의 경우에는 ~~~~~~(계정 및 서버정보) : Permission denied (publickey) 라는 오류창에 당황했습니다.


먼저 SSH에대해 간단하게 설명을 드리겠습니다. 

SSH은 네트워크 상에 다른 컴퓨터로 접근(로그인) 하여 원격 으로 커맨드를 실행하거나, 다른 시스템으로 파일을 복사할 수 있도록 해 주는 응용 프로그램 또는 그 프로토콜을 가리킵니다.

 

이 SSH에는 key라는 것이 존재합니다.

인증을 하기 위함인데요.

정보보안에서 인증이라는 것은 이 접근을 요청하는놈이 진짜 그놈이 맞는가를 판별하는 과정입니다.

 

요 키를 사용하는 방법은 크게 두가지입니다. 대칭키 , 비대칭키

자세한것은 다른 블로그를 참고해주시면 좋을것 같은데요.

 

간단히 설명하자면 대칭키는 서버와 클라이언트가 같은걸 쓰기때문에 둘중 하나라도 털리면 다 털리게 됩니다.

반면 비대칭키의 경우, 서버는 자신의 키를 공개하고 그에 접근하는 클라이언트들은 각각의 개인키를 가지고 접근을 합니다. 개인키만 꽁꽁 지키면 되는거죠.

 

이러니 보안상 비대칭키가 기밀성 측면에서 좀 더 안전합니다.

SSH도 역시 비대칭키를 사용합니다.


그렇기 때문에 서버에도 키를 만들어야하고 클라이언트도 키가 있어야 합니다.

이 과정이 AWS ec2에서의 키페어 생성입니다.

키페어 생성은 인스턴스를 생성하고 가장 마지막 단계에 물어보게 됩니다.

그때 생성하셨다면 아마도 위의 사진에서 저 노란색으로 표시된 키페어 로 들어가시면

이런 화면이 나올겁니다.

 

혹.. 없으시다면 키를 생성하셔서 기존 인스턴스에 추가하셔야 하는데, 중간에 추가하는것보다 환경구축을 아직 덜 하셨다면 그냥 새 인스턴스만드시는게 더 빠를것 같습니다.

 

혹시 이미 있는 인스턴스에 생성하시려면 

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/WindowsGuide/ec2-key-pairs.html

 

Amazon EC2 키 페어 및 Windows 인스턴스 - Amazon Elastic Compute Cloud

프라이빗 키 파일은 안전한 장소에 저장합니다. 인스턴스를 시작할 때 퍼블릭 키의 이름을 제공하고, 인스턴스에 연결할 때마다 해당 프라이빗 키를 제공해야 합니다.

docs.aws.amazon.com

공식문서를 확인해주세요

 

이제 이 다음부터는 인스턴스에 키페어가 등록되어있는 상태라고 가정하고 설명하겠습니다.

그 경우에는 여러분 뭔지는 모르겠어도 키페어 등록할때 .pem 혹은 .ppk를 다운받지 않으셨나요?

 

그 파일이 바로 개인키입니다. 굉장히 중요해요. aws 공식 레퍼런스 문서에서도 다운받을수 있는건 그때 한번뿐이라고 나옵니다

우리가 사용하려는 putty의 경우 .ppk파일이 필요합니다.  openssh의 경우 .pem이 필요하구요

 

먼저 putty의 경우를 보겠습니다.

 

이런 질문이 있을수 있겠네요. "저는 .pem밖에 없는데요?"

걱정마세요 .pem을 ppk로 변환해주는 프로그램이 있답니다.

 

putty key generator (PuTTYgen)이라는 프로그램입니다

실행시켜주면

이런 창이 나오는데, Load 눌러주시고

이후 본인이 저장한 .pem을 찾아주시면 됩니다.

default 설정이 .ppk만 나오게 되어있으니까요 all files 설정해주면 나옵니다.

 

이제 save private key눌러서 변환된 .ppk를 자신이 잊어버리지 않을만한 곳에 보관해주세요

이제 다왔습니다.

 

이제 Putty를 실행해주시고 좌측 카테고리에서 SSH -> Auth로 접근하신 후에 

하단의 Private key file~~~~~~~~~ 에다가 만드신 .ppk 넣어주세요.

 

그상태로 Session으로 돌아가셔서

공인ip입력해주시고 open눌러주세요~~~!

 

내용이 너무 길어져서 .pem은 다음 포스팅으로 넘기겠다