안녕하세요, 김대우입니다.

지난 포스팅에 이어 이번에는 SSH 키를 생성해 리눅스 가상머신에 접속하는 방식을 소개.


Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (1)

Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (2)

    

1. Windows Azure의 리눅스 가상머신에 윈도우 – PuTTY & SSH로 접속

여러 제공되는 방법으로 openssl로 X509 인증서를 2048비트 RSA key pair로 만들고, 공개키를 Azure 포털에서 업로드. 이후, SSH client로 PuTTY를 쓸 경우 puttygen에서 개인키를 ppk 포맷으로 만들고 PuTTY로 접속한다.

 

(1) openssl 설치 - 윈도우

msysgit, GitHub, cygwin을 이용하라고 공식 문서는 가이드 하고 있음. 개인적으로, openssl 설치를 위해 cygwin은 좀 오버 같은 느낌. 이 포스팅에서는 msysgit 설치 진행

http://msysgit.github.com/ 링크에서 msysgit 설치 진행.


msys를 설치해 bin 폴더로 가거나, 명령프롬프트로 설치한 폴더의 bin 폴더로 이동 후 아래 명령 실행.

개인적으로는, 명령프롬프트로 실행

openssl.exe req -x509 -nodes -days 365 -newkey rsa:2048 -keyout c:\temp\myPrivateKey.key -out c:\temp\myCert.pem


image_thumb.png


인증서에 필요한 정보를 적절히 입력 한다.

c:\temp 폴더에 키를 생성. 공개키인 myCert.pem은 Windows Azure 가상머신 생성시 업로드 하고, 개인키는 PuTTY 접속시 이용한다.

이제 가상머신 생성 진행

 

(2) 가상머신 생성 – 생성 중 인증을 위한 SSH 인증서 업로드

image_thumb_1.png

가상컴퓨터 구성 단계에서 사용자 이름과 SSH 키 업로드에서 위에서 생성한 SSH 공개키 파일을 업로드 한다.

가상머신 생성을 완료 한다.

 

(3) PuTTY로 접속하기 위해 PuTTYgen으로 키 변환 과정 실행

먼저, PuTTY가 요구하는 PPK로 개인키를 변환 해야 한다.

PuTTY 다운로드 페이지에서 Puttygen을 다운로드 하고 실행한다.

image_thumb_2.png

Puttygen의 file – Load private key 선택 후 행성한 개인키를 지정 필요할 경우 리스트되는 확장자를 *.*로 바꿔야 한다.

 

image_thumb_3.png

생성되었다. 가능하다면, 여기서 꼭 Key passphrase를 지정해 추가적인 보안을 제공 받는다.

Save Private Key를 클릭해 저장한다.

 

(4) PuTTY로 리눅스 가상머신에 접속

PuTTY 다운로드 페이지에서 PuTTY를 다운로드 후 Putty를 실행하고, Connection 화면의 SSH - Auth에서 화면처럼 PuTTYgen에서 변환한 SSH 키를 선택한다.

image_thumb_5.png

ppk 파일을 선택한다.

 

image_thumb_6.png

Session에서 가상머신에 접속을 진행한다.


image_thumb13_5.png

참고로, 가상머신 접속 정보는 Windows Azure 관리자 포털의 해당 가상머신 - 대쉬보드에서 볼 수 있다.

 

image_thumb_9.png

SSH 접속 완료. 따로, Key passphrase로 추가 암호를 지정하지 않았다면 바로 접속된다.

 

2. Windows Azure의 리눅스 가상머신에 리눅스로 SSH 접속

각 리눅스 배포판이 제공하는 패키지 관리자로 openssl을 설치해 키를 생성하고, 이어서 가상머신에 SSH로 접속하면 된다.

 

(1) openssl 설치 – 리눅스

각각의 배포판이 제공하는 패키지 관리자를 이용해 설치 가능

Redhat/CentOS: yum install openssl
Debian: apt-get install openssl
Ubuntu: apt-get install openssl

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout myPrivateKey.key -out myCert.pem

명령으로 X509 인증서를 2048비트 RSA key pair로 생성.

 

chmod 600 myPrivateKey.key

옵션 - 퍼미션을 변경해 개인키 보호

 

(2) 리눅스에서 Windows Azure의 리눅스 가상머신에 SSH 접속

image_thumb13_5.png

Azure 관리자 포털 화면 가상머신 대쉬보드에서 SSH 링크 및 포트를 확인 후 SSH로 접속

 

ssh -i myPrivateKey.key -p <port> username@servicename.cloudapp.net

 

이렇게 해서, Windows Azure에서 리눅스 가상머신을 생성하고 접속하는 두 가지 방법을 모두 알아 보았다.

감사합니다.

 

참고링크

Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (1)

Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (2)

How to Log on to a Virtual Machine Running Linux

How to Use SSH with Linux on Windows Azure

Introduction to Linux on Windows Azure

Create a Virtual Machine Running Linux

Putty 다운로드 링크





profile

부족하지만, SQLER의 누군가와 함께한 나눔을 통해 제가 더 많이 즐거웠습니다.
SQLER와 함께 즐거워 할수록, 그 나눔을 통해 더 많은 기회와 가치를 발견하게 되었습니다.
나눔의 생각이 앞으로도 계속, SQLER를 움직일 것입니다.

코난, 김대우 / SQLER 운영자 / 골라먹는 SQLER RSS 정보 구독 / 실시간 SQLER 소식 uxkorea 트위터