[INFRA] EC2 서버 접속하기 (Mac & Linux)
Mac
Mac 구매를 기념하여 Mac에서 EC2 서버에 빠르게 접근할 수 있는 방법에 대해 정리하려 한다. Mac에서 AWS와 같이 외부 서버로 SSH 접속을 위해서는 ssh 명령어를 사용해야 한다.
ssh?
보안적으로 취약했던 기존의 telnet등을 대체하기 위해 설계된 Secure shell의 약자이다. 기본적으로 22번 포트를 사용하여 다른 리눅스 서버로 접근이 가능한 프로토콜이다. 기본 암호화 방식을 지원하고 중간에 암호가 해킹을 당해도 원본을 알 수 없고 강력한 인증 방식을 지원하는 프로토콜이다.
ssh -i /path/my-key-pair.pem my-instance-user-name@my-instance-public-dns-name
하지만 매번 이렇게 명령어를 입력하여 접속하는 것은 매우 불편하다.
.ssh
~/.ssh/ 디렉토리로 pem 파일을 옮겨 두면 ssh 실행 시 pem 키 파일을 자동으로 읽어들여 접속을 진행한다.
cp (기존 pem 키를 내려 받은 위치) ~/.ssh
해당 pem key 파일에 권한을 변경해준다.
chmod 600 ~/.ssh/pem키이름
권한이 변경된 것을 확인하였다. 완료되었으면 .ssh 디렉토리에 config 파일을 생성해야 한다.
vim ~/.ssh/config
해당 config 파일에는 자신이 원하는 Host를 등록해야 한다. Host는 앞으로 접속할 수 있는 키값과 같은 역할을 하게 된다.
Host springboot-test
HostName (ec2의 탄력적 IP 주소)
User ec2-user
IdentityFile ~/.ssh/(pem키 이름)
작성된 config 파일은 실행 권한이 필요하기 때문에 추가적인 권한을 설정한다.
chmod 700 ~/.ssh/config
실행 권한이 설정되면 아래와 같은 명령어로 ec2 서버에 접근이 가능하다.
ssh springboot-test
정리
이렇게 간단한 설정을 추가하여 Mac & Linux 환경에서 ssh 프로토콜을 활용하여 외부 서버에 접근하는 방법에 대하여 정리하였다. 윈도우의 경우 putty와 같은 추가적인 파일이 필요하기 때문에 버거로운 점이 많았다. Mac은 이런 부분에서 많은 이점을 가지고 있는 것 같다.