인생은 속도가 아니라 방향이다

[AWS] ssh Config 설정으로 AWS ssh 접속 간편하게 하기! 본문

백엔드(Back-end)/AWS

[AWS] ssh Config 설정으로 AWS ssh 접속 간편하게 하기!

기록하는 동구 2021. 5. 11. 09:31
반응형

 

문제 : 매번 키 파일 위치를 찾기는 너무 번거로워!

 

하나의 컴퓨터에서 여러개의 SSH키 파일을 유지하거나 하나의 키로 여러개의 서버로 접속한다는건 매우 번거롭습니다.

최근에 여러 클라우드 서비스 나 github, bitbucket 등 SSH키 인증을 사용하는 서비스가 늘고있어서 ssh 키 파일 관리가 필요한 상황입니다. 

 

ssh config 파일을 이용하면 도메인, ip혹은 서버의 alias명 별로 접속계정, SSH 키 파일, ssh 명령 속성을 설정할수있기 때문에 ssh 명령을 간결하게 유지할수 있습니다.

 

ssh 명령 기본 사용법

 

기본 ssh키 사용시 명령어


$ ssh 사용자아이디@서버주소
'

기본 ssh키(~/.ssh/id_rsa)가 아닌 다른 ssh키 파일을 사용해야한다면, 다음과 같이 -i 옵션을 사용합니다.

 

ssh -i /Users/joeykang/workspace/donggu.pem ec2-user@서버주소
cs

 

하지만 만약 복수개의 pem 키나 서버주소를 가지고있다면 매번위치, 유저, 서버주소를 입력해야되니까 관리가 귀찮아집니다. 어떻게하면 편하고 간단하게 접속할수있을까요? 

 

해결방법 : ssh_config 설정을 해줍시다. 

여러 ssh키 파일을 사용하거나, 여러개 서버에 접속하려는 상황에서 발생하는 문제는 config 파일로 해결할수있습니다.

 

1. ssh_config 파일이 있는곳으로 이동합니다.

여기다가 cd

cd /etc/ssh/
cs

2. ssh_config 파일을 열어 설정을 해줍니다.

 

vi ssh_config
cs

 

 

완성을 한다면 아래와 같이 구성되있습니다. 무슨 속성인지 알아볼까요? 

 
# dev
Host dev
        HostName ec2-12-34-234-234.ap-northeast-2.compute.amazonaws.com
        User ec2-user
        IdentityFile /Users/joeykang/workspace/donggu.pem
 
# ops
Host ops
        HostName ec2-12-56-234-234.ap-northeast-2.compute.amazonaws.com
        User ec2-user
        IdentityFile /Users/joeykang/workspace/donggu.pem
cs

 

Host : 접속할 정보 입력한 정보로 ssh 접속 시 $ssh dev 명령 시 아래 접속 정보로 ssh 접속이 실행됩니다.

HostName : 연결될 서버 호스트 명  (미 설정시 Host값이 HostName으로 사용됨)

User : 네트워크 커넥션에 사용되는 계정 명

IdentityFile : 키 파일 위치 

 

이렇게 설정해주고 나면, 

 

$ ssh dev
Last login: Wed May 12 09:43:42 2021 from 123.123.124.221
 
       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|
cs

 

$ ssh ops
Last login: Wed May 12 04:47:01 2021 from 123.123.124.221
 
       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|
cs

 

위와 같이 잘 성공이되는걸 볼수있습니다! 

반응형
Comments