로컬(Mac) 내 환경을 건들이지 않고, Node.js 환경을 사용하기 위해 AWS EC2 Ubuntu 16.04 LTS 서버를 할당받으려고 한다. 작업 방법은 다음과 같다.
터미널에서 AWS EC2 Ubuntu 16.04 LTS 서버로 접속할 때 다음과 같은 과정을 거친다.
chmod 를 통해 public key의 권한을 변경한다.
SSH를 사용해 서버로 접속한다.
ssh -i "study.pem" ubuntu@ec2-52-79-200-243.ap-northeast-2.compute.amazonaws.com
하지만 이와 같은 과정을 거침에도 불구하고 다음과 같은 에러가 발생했다.
ubuntu@ec2-52-79-200-243.ap-northeast-2.compute.amazonaws.com: Permission denied (publickey).
Stack Overflow 검색 시 이런 오류가 발생했을 시 크게 2가지 이유를 제시하고 있었다.
1번 가정을 전제로 키페어 및 서버를 다시 받아 접속하였고, 정상적으로 서버 안으로 들어갈 수 있었다. 한 기술 블로그에서 한 번 키페어를 삭제해버리면 다시 찾기 번거롭기 때문에 서버 및 키페어를 다시 발급받는 것을 추천하던 것을 참고하여 진행하였다. 간단하게 생각하면 새롭게 다시 받아 설정하는 방법으로 문제를 해결하였다. 그리 쿨한 방법은 아니지만 빠른 시간 안에 해결할 수 있어 다행이였다.
https://aws.amazon.com/ko/premiumsupport/knowledge-center/ec2-server-refused-our-key/