본문 바로가기
Programming & Machine Learning/Linux & Git

Linux, Mac에서 AWS ssh, sh 스크립트 만들기

by Yamarae 2017. 8. 7.

AWS ssh 접속 자동 스크립트








AWS instance 접속하는 Mac terminal ssh 자동 스크립트가 포스팅의 기준이다.

먼저 AWS instance pem키를 다운로드 , 안전한 경로에 파일을 저장한다. 일반적으로는 ssh 관련 폴더에 저장한다.


AWS에서 지정하는 방식으로 최초 로그인을 1 진행한다. (Connect 버튼을 누르면 다음과 같은 튜토리얼을 제공)




원활한 진행이 되지 않는다면, pem키를 가지고 있는 경로에 권한이 부여되지 않았을 가능성이 높다. 아마존에서 제공하는 위의 튜토리얼만 따라하자.


chmod 400 [path]


다음으로 ssh 명령어 자동화를 진행한다.

자동화를 위해서는 다음과 같은 명령어로 ssh 폴더에 config 파일을 수정한다.


sudo vi ~/.ssh/config 




수정내용은 다음과 같이 작성.


Host [접속할 명령어 이름]

HostName [호스트 도메인 혹은 아이피 주소]

User [ssh접속할 환경의 user name]

IdentityFile [pem키의 경로]


가장 기본적인 내용은 위의 4가지 설정이고, 추가적인 스크립트는 보안과 기능에 따라 추가될 수도 있다. 


이제 terminal home에서 ssh [name] 입력하면 간단하게 연결된다.










sh 스크립트









명령어를 실행해줄 sh 스크립트를 작성하는 방법. (Python Django background에서 기본으로 runserver 시켜주는 예제)


sudo vi runserver.sh


위와 같은 명령어를 입력하면 runserver.sh 파일이 생성된다.

상단에 #!/bin/bash 명령어 이름 #runserver.sh을 입력해준 ,

terminal(console) 통해서 실행시킬 명령어를 입력해주면 된다.

예제의 경우 가상환경의 python으로 Django default runserver nohup 버전으로 실행시켜주는 자동 스크립트의 예제이다.


#!/bin/bash

#runserver.sh


sudo nohup /home/ubuntu/chatenv/bin/python /home/ubuntu/Chat/chatbot/manage.py runserver 0.0.0.0:80 &