[aws] 아마존 웹서비스 mac으로 ssh를 통한 간단 접속하기

core·2022년 8월 25일
0
post-thumbnail

아마존 웹서비스에서 새로운 인스턴스를 만들고 mac 환경에서 터미널을 열고 인스턴스의 서버로 연결을 하는 단계이다. 이 글은 왜 이렇게 설정을 해야 하는지 원리 설명은 따로 안하고 서버를 접속할 수 있는 방법들 위주로 설명을 할 것이다. 추가적으로 궁금한 내용들은 구글링을 통해서 찾아보는 것을 추천한다.


mac을 통한 인스턴스 서버의 접속 방법

  1. 만들어진 인스턴스의 아이디를 클릭해서 인스턴스 정보로 이동한다.그림에서 connect를 클릭
  2. ssh client로 들어간다.
  3. mac에서 터미널을 열고, cd ~/.ssh를 입력하여 .ssh 디렉토리로 이동. 필자의 경우는 iterm2를 사용한다. 그리고 ls -al명령어를 통해서 인스턴스에서 받은 pem 키가 있는지 확인한다. 만약 없다면 인스턴스를 만들었을 때 새로 키를 발급받았다면 Downloads 디렉토리로 가서 해당 키를 .ssh 디렉토리로 옮겨준다. 참고로 보통은 mv (받은 키 경로) (.ssh 경로)명령어로 키를 옮길 수가 있다.
  4. 이제 2번의 그림에서 3번의 내용을 복사해서 터미널에 붙여넣기 해주고, Example에 있는 명령어를 복사 붙여넣기를 진행해서 서버가 잘 접속 되는지 확인한다.
  5. 접속이 되는 경우도 있지만 접속이 안되는 경우도 있다! 그럴 때는 Example이 적혀있는 명령어 앞에 sudo를 붙여서 실행을 해보면 실행이 될 것이다.
  6. 만약 이런 상황에도 실행이 안된다면 아쉽지만 인스턴스를 다시 만들어야 할 것 같다. 필자 같은 경우는 인스턴스를 다시 만들었다.

mac 터미널로 좀 더 간단하게 서버에 접속하기

기본 과정

  1. ".ssh" 디렉토리로 이동한다. 이 디렉토리에서 config파일을 열어서 내용을 추가해준다. 만약에 config 파일이 존재하지 않다면 vi config 또는 nano config명령어를 통해서 config파일의 내용을 수정해준다. 필자는 전자의 명령어로 내용을 수정하였다. 아래 그림은 config의 내용이다. -> cat config를 통해서 config의 내용을 출력했다. #은 주석 내용으로 신경 안 써도 된다.
  • Host부분에 자신이 변경하고 싶은 명령어를 입력하는 부분이다. 예를 들어서 Host temp라고 내용을 입력했으면 서버 접속 시 ssh temp를 입력하면 서버로 접속할 수가 있다.
  • Hostname 부분에는 자신이 만든 aws 서버의 ip 주소를 입력한다. 만약 탄력적 ip 주소를 등록했다면 탄력적 ip를 입력하도록 한다.
  • User부분에는 만든 인스턴스의 사용자 이름을 입력한다. 만약 인스턴스를 설정시 ubuntu로 만들어주었다면 ubuntu로 입력을 해주면 된다.
  • 마지막으로 IdentityFile 부분에는 자신이 만든 pem 키의 위치를 지정하면 된다.
  1. 이제 어느 디렉토리에서든 ssh (자신이 만든 명령어 이름)을 통해서 서버 접속을 할 수가 있다.
  2. 하지만 이 방법으로도 접속이 안되는 경우가 있다. 그 경우는 "mac을 통한 인스턴스 서버의 접속 방법"의 5번의 sudo를 통한 접속 경우이다.

sudo 권한 없이 서버 접속할 수 있도록 설정하기

  1. 먼저 sudo를 통한 서버 접속("mac을 통한 인스턴스 서버의 접속 방법"의 5번)을 하고 cd /etc/ssh로 이동하고 ls -al을 통해서 파일들을 확인해준다. 다양한 파일들이 나오는데 여기서 이 파일의 내용을 봐야한다.
    검은색으로 칠해져 있는 부분은 숫자이다.

  2. 맨 마지막에 "root@ip주소" 부분이 있는데 이 내용을 제외한 그 전의 내용들을 전부 복사해준다.

  3. exit명령어를 통해서 서버를 나와 로컬로 돌아온다. ".ssh"디렉토리에서 "known_hosts"파일을 찾는다.

  4. vi known_hosts로 서버에서 복사한 내용들을 맨 밑에 추가해준다. (필자는 known_hosts의 적혀있는 내용들의 맨 마지막에 추가했다.) 그리고 추가한 내용의 앞에다 자신이 만들어준 자신이 만든 인스턴스의 ip 주소를 입력해준다!
    -> "인스턴스 ip주소(탄력적 ip 주소가 존재하면 탄력적 ip입력)" "복사한 내용"

  5. :wq를 통해서 저장을 하고 자신이 받은 pem 키의 권한 변경을 해야한다!
    -> chmod 600 (자신의 pem 키)

  6. 이제 ssh (자신이 만든 명령어)를 통해서 접속을 시도해보면 접속이 잘 되는 것을 확인할 수가 있다!

profile
코어의 서버 탐험기

0개의 댓글