엘라스틱 빈스톡 실행환경
Corretto 8 running on 64bit Amazon Linux 2/3.4.9
사건 발단
엘라스틱 빈스톡으로 환경을 구성하고 서비스 로그를 확인하기 위해 MobaXterm으로 접근하려하는데
Permission denied가 뜨며 접근이 불가하였습니다.
해결 방안
몇 가지 가설을 세웠습니다.
1. RSA 개인키에 문제가 생겼다.
2. 22 포트로 접근이 제한되어 있다.
3. aws vpc에 접근이 외부접근이 제한된다. (aws 지식부족)
이와 같은 가설을 세웠고 관련 부분을 다 찾아봤습니다. RSA 키를 다시 만들어 새로 빈스톡 환경을 만들기도 하였고,
보안그룹도 다시 살펴보았습니다. vpc 관련해서는 아직 지식이 혼재하여 반드시 안된다라고 결론을 짓기가 힘들었습니다.
이러한 문제를 더 살펴보다가 aws의 공식 문서를 살펴보았습니다.
https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/openssh.html
OpenSSH를 통해서 ec2 인스턴스에 접근하는 방법입니다. 전 빈스톡을 이용하기 전에 개인적으로 우분투 환경의 ec2 인스턴스를 사용하여보았습니다. 그때는 뭣도 모르고 username을 ubuntu로 지어 사용하였는데 이 문서를 보니
ssh -i /path/key-pair-name.pem instance-user-name@instance-public-dns-name
개인키와 인스턴스유저네임, 인스턴스 주소를 요구하였습니다. 이렇게 인스턴스 환경에 접근할 땐 기본적인 유저네임이 정해져있는 것 같습니다. 그러나 저는 매번 접근할 때 마다 임의의 닉네임을 넣고 접근을 하니 계속해서 오류가 발생하였다고 생각이 들었습니다.
이러한 instance-user-name, instance-address 를 얻어내기 위한 방법도 다음과 같이 문서가 있습니다.
그리고 빈스톡에서 환경을 생성하며 설정하였던 실행환경은 Corretto 8 running on 64bit Amazon Linux 2/3.4.9으로
Amazon Linux임을 알 수 있습니다. 그래서 user-name에 Amazon Linux의 default name인 ec2-user을 넣고 시도를 하니 정상적으로 접근이 가능했습니다.
openssl 접근 시 public-dns-name은 주황색 글씨의 것을 참고하시면 되고
제가 MobaXterm으로 접근할 때는 빈스톡 환경에서 설정한 퍼블릭 IPv4 주소를 통해서 접근하였습니다.
향후 방침, 행동
공식문서를 확인한다는 것은 정말 중요한 것 같습니다. 지금까지 넷서핑으로만 의존하는 경우가 많았는데 AWS의 공식문서 퀄리티에 놀랐습니다. 답답함이 큰 문제였기에 그만큼 더 큰 교훈을 얻은 것 같습니다.
댓글