Cloud2013.02.27 23:22

몇일전에 LG Xnote X360 시리즈의 울트라북을 하나 샀다. 정말 얇고 슬림한것이 기존에 들고 다니던 노트북에 비하면 무겁지도 않고 속도도 상당히 빠르다. 여하튼 노트북 샀다고 자랑하려고 이 글을 쓰는 건 아니구, ...


노트북을 구매하고 가상화를 하기 위해 Virtual Box를 설치했다. 그리고, Windows가 설치되어 있는 Host OS에서 Virtual Box에 설치한 Ubuntu 12.04 Server Guest OS로 SSH 연결이 잘 안되어 이틀동안 삽질하다가 오늘에서야 어떻게 연결을 하면 되는지 알아냈다. 그래서 그 방법을 적어놓어 놓고자 한다. 다음에 또 이런일이 발생하게 되면 분명히 또 기억이 안 날 것이기 때문에,... ^^;;


1. 나는 우선 무선 네트워크인 Wifi 환경에서 Virtual Box를 설치했다. 이렇게 되면 Network 속성에 Virtual Box Host Only Network가 생성이 된다. 이 Virtual Box Host Only Network와 Wifi를 연결해 Network Bridge를 만든다. 아래 그림처럼 말이다.


2. 이렇게 Network Bridge를 생성하고 DOS창에서 IP 정보를 확인한다. 



3. 그리고서 Virtual Box에서 Ubuntu 인스턴스를 하나 생성한다. 이때 네트워크 설정은 기본 NAT에 아래그림처럼 추가로 VirtualBox Host-Only Network를 하나를 더 선택한다.


4. 위와 같은 정보로 Ubuntu를 설치한 후 "/etc/network/interfaces"의 네트워크를 정보를 아래와 같이 변경한다.

** 통신을 하기 위해서는 IP 주소가 같은 Network 대역안에 존재해야 한다. 그러므로 address를 Windows에 확인한 IP의 같은 네트워크 주소대로 설정해야 한다.


5. 위와 같이 네트워크 정보를 수정한 후 Neworking을 Restart 하거나 서버를 재부팅한 후 HOST PC은 Windows의 DOS 창에서 ping을 한번 테스트 해 본다.


이때 Ping 테스트가 잘 되면 SSH 로 Guest OS인 Ubuntu에 접속이 가능하다. 단 Wifi는 장소에 따라 자주 변경이 일어나므로 추천을 하지는 않는다. 그러나, 회사에서 테스트를 하게 될 경우에는 대부분 고정 IP를 받아 사용하게 되므로 무선 네트워크로 설정할 때보다 안정적이다.

Posted by 나리 짱!!! naleejang
OpenStack2012.11.21 10:47

오랜만에 Openstack에서 할당 받은 VM Instance에 접속을 할 일이 생겼습니다. 그것도 Ubuntu Command 로 말입니다.

VM을 할당할때 받아두었던 key.pem 파일을 다시 Ubuntu Server로 올리고서 할당받은 Ubuntu VM Instance에 ssh 접속을 하려니 자꾸 에러가 나더군요~!! 그래서, 역시 Google에서 물어봤죠~!! 안 나오더군요~!! 내 검색 키워드에 문제가 있는 건지는 잘 모르겠지만 말이예요~!!


오늘은 그래서 어떤 문제가 발생했길래 그 쉬운 ssh 접속도 제대로 못하나 어떤 에러를 접했고, 어떻게 하면 되는지를 여러분들께 알려드리도록 하겠습니다. 실은 제가 너무 잘 까먹어서 다음에 제가 다시 보고 하기 위해서이기도 해요~!! ^^;;;;



1.우선 OpenStack에서 Ubuntu Instance를 할당받으려면 public key가 필요합니다. 그래서 keypairs에서 key를 하나 생성을 해 줍니다. 여기까지는 다들 아시겠죠~!!


2. 할당 받은 Key를 가지고서 Ubuntu Instance를 하나 생성을 합니다. 이제 생성을 했으니 접속을 해 봐야겠죠~!! ssh로 말입니다.


3. ssh 접속을 하려면 22번 포트가 열려 있어야 합니다. 다들 아시죠~!! Security Groups에서 22번 포트를 추가해 줍니다.


4. 아까 keypairs에서 할당 받은 public key 기억하시죠~!! 그걸 Ubuntu Server에 올려줍니다.


5. 그리고서는 ssh -i key.pem root@10.4.128.132 하고 명령을 내리면 아래와 같은 메시지가 출력이 되면서 접속이 안됩니다.

# ssh -i testkey.pem root@10.4.128.132

The authenticity of host '10.4.128.132 (10.4.128.132)' can't be established.

ECDSA key fingerprint is 53:36:11:29:9f:6c:70:57:26:24:95:9c:e7:8a:fe:3e.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added '10.4.128.132' (ECDSA) to the list of known hosts.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Permissions 0644 for 'testkey.pem' are too open.

It is required that your private key files are NOT accessible by others.

This private key will be ignored.

bad permissions: ignore key: testkey.pem

Permission denied (publickey).

해석을 해보면 가장 윗줄에 나온 3줄은 한번로 해당 호스트로 접속한 적이 없어 신뢰할 수 없는데 그래도 계속 접속을 하겠느냐 라는 뜻입니다. 당연히 yes 라고 입력을 하고 접속을 강행을 합니다. 

이때 해당 호스트의 접속 권한을 추가하려고 하는데 private key file이 unprotected 되었다고 메시지가 뜹니다. protect 가 보호하다 라는 뜻을 가지고 있죠~!! 그런데 unprotected라고 하면 보호되지 않았다. 이런 뜻이 되는 겁니다. 

왜 그런가하고 아래 줄을 봤더니 권한이 너무 많이 오픈되었다고 하네요~!! 다른 사용자들이 접근할 수 없는 권한이 있어야 한다고 아래줄에 나오는거 보이시죠~!! 그래서 이 private key file은 무시될 꺼라고 하네요~!!


6. 그럼, 우리는 여기서 chmod로 key.pem 파일의 권한을 빼 주어야 하는 겁니다. 그럴려면 chmod 의 속성들을 알야야 겠죠~!! 

chmod 명령어를 어떻게 쓰는건지 까지 여기서 설명하면 너무 글이 길어지므로 다음에 제가 다시 설명을 드리도록 하겠습니다.

chmod 에 대한 설명은 이곳에서 >> (http://naleejang.tistory.com/56)


7. 정답은 600 입니다. 여기서 100번대는 소유주, 10번대는 그룹, 1번대는 다른 사용자에게 권한을 주겠다는 뜻입니다. 나만 사용할 수 있어야 하니까 당연히 100번대에만 권한을 줍니다. 이때 읽기는 4, 쓰기는 2, 실행은 1입니다. 읽고 쓰기가 가능해야 하므로 4+2 = 6 해서 chmod 600 이 되는 것입니다. 

# chmod 600 testkey.pem

# ssh -i testkey.pem root@10.4.128.132


The programs included with the Ubuntu system are free software;

the exact distribution terms for each program are described in the

individual files in /usr/share/doc/*/copyright.


Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by

applicable law.


Welcome to Ubuntu 12.10 (GNU/Linux 3.5.0-18-generic x86_64)


 * Documentation:  https://help.ubuntu.com/


  System information as of Wed Nov 21 01:17:43 UTC 2012


  System load:  0.08              Processes:           64

  Usage of /:   35.1% of 1.96GB   Users logged in:     0

  Memory usage: 9%                IP address for eth0: 10.0.0.4

  Swap usage:   0%


  Graph this data and manage this system at https://landscape.canonical.com/


0 packages can be updated.

0 updates are security updates.


Get cloud support with Ubuntu Advantage Cloud Guest

  http://www.ubuntu.com/business/services/cloud

root@ubuntu:~#


여러분 보이시나요? 접속이 된것을... 답은 "chmod 600 key.pem" 이였습니다.


우리 다음부터는 이런것으로 삽질말자구요~!! 그럼 오늘 하루도 모두들 파이팅입니다.

Posted by 나리 짱!!! naleejang