서론
먼저, EC2에 인스턴스를 배포 후 로컬 터미널로 접속을 하고자하였으나 지속적으로 오류가 발생하였고, 구글링을 해봐도 해결 방법을 여러 차례 시도해봐도 접속이 되지 않았었다.
단, AWS 콘솔에서 직접 EC2 Connect로 접속 시 정상적으로 접속이 가능한 상황이었다.
따라서 ssh 연결 시 ec2의 키가 올바르지 않게 구성이 되어있는지 확인해보고자 하였고 이를 통해 해결할 수 있었다.
해결 방법
로컬 터미널에서 ec2의 pem키가 있는 경로로 이동 후 아래 명령어를 실행시킨다.
ssh-keygen -f tigerbk.pem -y
그 다음 현재 EC2의 키 파일을 확인하여야한다.
1. AWS 콘솔 접속
2. 인스턴스 선택
3. Connect -> EC2 Connect를 통해 접속한다.
cat ~/.ssh/authorized_keys
이때 로컬 터미널에서의 결과와 위 EC2해서 확인한 결과가 서로 상이하다면 이를 수정해주어야한다.
EC2 터미널에서 아래와 같이 명령어를 입력한다.
vi ~/.ssh/authorized_keys
I를 누른 후 기존 값을 제거하고 로컬 터미널에서 확인한 결과값을 넣어준다.
이후 vim 사용 방법대로 Ctrl + C -> :wq 입력 후 나간다.
그 이후 로컬 터미넬어서 접속 한다면 정상적으로 접속이 되는 것을 확인할 수 있다!
참고
https://repost.aws/ko/knowledge-center/ec2-linux-fix-permission-denied-errors