기본 콘텐츠로 건너뛰기

버추얼박스(VirtualBox) 설치

1. VM(Virtual Machine)이란?
  일반적으로 물리적인 시스템 OS위에 논리적인 가상 OS를 올려서 독립적인 동작이 가능하도록 하는 시스템 차원의 가상 머신을 말한다.  또 다른 관점에서는 JVM이나 .NET과 같이 시스템내에 프로세스 수준의 가상화를 지원하는 애플리케이션 VM으로도 설명 할 수 있는데 여기서 설명하고자 하는 VM은 논리적/개념적인 컴퓨터 OS로서의 가상머신을 설명한다.

일반적으로 시스템 VM에서 VM이 설치되는 기본 OS를 호스트 OS라고 정의하고, 호스트OS 위에 설치되는 가상 OS를 게스트 OS로 정의 한다.

  물리적인 하드웨어상에 설치되는 OS의 다중 설치에는 멀티 부팅을 위한 다중 OS 설치와 VM을 이용한 게스트 OS 설치가 있는데 두가지의 차이점은 다음과 같다
  - 멀티 부팅 : 하나의 물리적인 H/W에 동일 레벨의 OS가 여러개 설치된 것으로 한 시점에서 하나의 OS밖에 사용할 수가 없지만 하나의 컴퓨터에서 여러 OS를 사용이 가능하다.
  - VM 부팅 : 하나의 물리적인 H/W위에 호스트 OS가 있고 이 호스트 OS위에 여러 게스트 OS를 올릴 수 있으며 하드웨어의 성능에 따라 동시에 여러 OS를 운영할 수 있는 장점이 있다.


2. 시스템 VM의 종류 및 비교

 구분
VirtualBox
Parallels 
 VMWare
Host OS
 Windows / Linux / Mac / Solaris /
FreeBSD등
 Windows / Linux / Mac
Windows / Linux / Mac 
 Guest OS
 DOS/Windows/Linux/
FreeBSD/Solaris등
 DOS/Windows/Linux/OS2
DOS/Windows/Linux/
FreeBSD/Solaris 
 제공사
Oracle 
 Parallels IP Holdings
 VMWare
라이센스 
 무료(오픈소스)
 유료(49$ ~ $79)
 쉐어웨어/상용($79 ~ $189)

3. 왜 VirtualBox?
  버추철 박스(VirtualBox)는 오라클(Oracle)사에서 제공하는 오픈소스 프로젝트로 기업을 위한 일부 기능에 대한 소스 폐쇄 외에 사용에 제한이 없는 오픈소스 라이센스 정책을 유지함에 따라 자유롭게 이용이 가능하다. 또한 다른 VM보다도 설치 용량이 작고 설치가 간단하며 호스트 OS의 주변기기의 거의 대부분을 쉽게 이용할 수 있다는 장점이 있고, 현존하는 거의 대부분의 OS를 게스트 OS로 지원이 가능하다는 점이 강점으로 가지고 있다. 그러나 국내 IT환경의 특징상 VM도 유행을 많이 타는 것으로 보이는데 국내 윈도우즈 호스트 OS 환경에서는 VMWare를 많이 선호한는 것으로 보이고, 맥(MAC)환경에서는 패러럴즈(Parallels)를 많이 사용하는데 이는 상용 VM으로서 마케팅에 한 발 앞서 있기 때문으로 생각 되어 진다. 필자는 MAC / Windows 호스트 OS상에서 버츄얼 박스를 설치하여 운영해 본 경험상 패러럴즈나 VMWare등 상용 VM과 큰 기능성, 편리성 등에 있어서 큰 차이를 느끼지 못하였다. 오히려 설치 및 관리 측면에서 버츄얼 박스가 용이한 측면이 있다. VM은 사실상 데스크탑용으로 보다는 서버용으로 설치하거나 어플리케이션에 대한 다양한 테스트 용도로 사용하는 측면이 강하기 때문에 안정성이 취약하지 않은 이상은 어떤 VM을 사용하더라도 운영상의 문제는 없을 것으로 보인다.

 4. 버츄얼 박스 설치

  이제 버츄얼박스(VirtualBox)를 설치해 보자

  가. 버츄얼박스 다운로드

  버츄얼 박스는 오라클사가 제공하는 VirtualBox 홈페이지에서 최신 버전을 다운로드 받을 수 있는데 다음 URL로 접속해보자.

  버츄얼박스 공식 홈페이지 : https:/www.virtualbox.com
  버츄얼박스 다운로드 페이지 : 다운로드 링크
  일반적으로 윈도우즈 환경에서 VM을 설치 한다고 가정 할 경우에 다음과 같이 VM과 VM-Extension Pack을 모두 설치해 주어야 호스트 OS의 주변기기를 게스트 OS에서 원할하게 활용할 수 있다.


  나. 버츄얼박스(virtualBox VM) 설치
      - 현재 시점(2014.09.12)의 최신 버전은 4.3.1로 "VirtualBox-4.3.16-95972-Win.exe"가 다운로드 된다. 
      - 설치 절차에 따라서 기본 옵션으로 설치하면 무리가 없겠다. 다만 설치 경로를 다르게 하려면 두번째 설치 화면에서 경로를 변경해 주자.

  나. 버츄얼박스(virtualBox VM) VM 이미지 생성
    - 버추얼박스 실행 초기 화면


  - 게스트 OS를 설치하기 위해서는 버추얼 박스에서 해당 OS를 담을 그릇이 필요한데 이를 위한 작업이 VM 이미지를 만드는 작업이다. 이는 게스트 OS를 설치할 컴퓨터를 가상으로 한 대 만드는 것과 같은 개념으로 이해하면 된다. 컴퓨터는 CPU,HDD,RAM,주변기기 등이 당연히 필요 할 것이다. 이에 대한 설정으로 보면 된다.

  - 이름 및 운영체제 지정 : 가상머신의 이름에 기존 운영체제명 Windows / Linux / FreeBSD등이 포함되면 자동으로 종류가 지정되는데 이는 수동으로 재지정 하여 가상 머신의 종류를 명확히 지정할 수 있다.(예제로 FreeBSD 버전 설치를 위한 VM을 만든다)
  - 운영체제의 버전 : 운영체제가 32bit CPU를 지원하는가 64Bit를 지원하는가에 대해 지정이 가능하다.




  - VM이미지가 사용할 RAM크기 지정


    - VM이미지가 사용할 Hard DISK(HDD) 생성 또는 지정
      추천하는 HDD 용량과 관계없이 향후 사용 목적에 적합한 용량을 지정하면 된다.
      새로 가상 HDD를 만들 수 있고, 기존에 생성된 가상 HDD가 있다면 별도 지정이 가능하다.


    - VM HDD 이미지 생성
      . Default : VDI(VirtualBox 디스크 이미지) : 버추얼박스에서 사용하는 기본 디스크 이미지
      . VMDK : VirtualBox만이 아닌 다른 가상머신에서도 사용할 디스크 이미지일 경우 선택
      . VHD / HDD : 버추얼박스에서 기본 디스크 이미지(VDI)외에 별도 가상 HDD를 추가할 수 있는데 이때 사용한다.

    - DISK생성 방식 지정(VM자체가 오버로드가 걸리기 때문에 고정크기 방식이 속도면에서 유리하다)

    - HDD크기 지정 / 생성 위치 지정(FreeBSD 테스트를 위해서는 20G면 아주 충분하다, FreeBSD는 커널 외에 군더더기 없이 필요한 모듈만 설치 관리할 수 있기 때문에 최소 용량으로 서버를 구축할 수 있는 장점이 있다)


    - 생성된 VM 이미지 최종 정보(상기 과정을 따랐다면 아래 화면과 같이 생성된 VM 이미지 정보를 확인 할 수 있다.)
    - 기 생성된 VM에 대한 세부 정보는 "설정" 버튼을 클릭하여 변경이 가능하다.



 5. 버츄얼 박스 확장팩 설치

  호스트 OS의 각종 주변기기(USB 등)를 활용하기 위해서는 버추어박스 확장팩(VirtualBox Extension Pack)을 설치 해야 한다.
상기 버추어박스 다운로드 링크에서 "All supported platform"을 클릭하면 확장팩을 다운로드 받을 수 있다.

  다운로드 받은 확장팩 파일(Oracle_VM_VirtualBox_Extension_Pack-4.x.x-xxxx.vbox-extpack)은 VirtualBox와 자동연결되어 더블클릭하면 버추어박스를 실행후 자동을 설치가 진행 된다.


주의) 64비트 윈도우의 경우 확장팩 설치시 다음과 같은 설치 오류가 나타나는데 이는 권한 문제로 여러가지 해결 방법이 있지만 VirtualBox.exe를 관지자 권한으로 실행시켜 주면 오류 없이 잘 설치 되니 당황하지 말자..
(C:\Program Files\Oracle\VirtualBox 경로에서 VirtualBox.exe를 선택 후 오른쪽 마우스 버튼을 클릭해서 "관리자권한으로 실행"을 클릭하면 된다


이때에는 VirtualBox의 "파일>환경설정" 메뉴를 클릭하여 환경설정에 들어가서 왼쪽 항목에서 "확장"을 선택하여 다운로드 받은 확장팩 파일을 지정해 주면 자동으로 설치 과정이 진행 된다.

댓글

이 블로그의 인기 게시물

SSH 크랙 , 보안 :: 메두사(Medusa) [소개, 사용법 ] [패스워드 크래킹]

외부에서 서버를 관리하기 위해서는 Telnet 과 같은 원격 쉘을 이용하게 됩니다. 이런 원격 쉘은 시스템에 직접 접근할수 있기 떄문에 특별한 관리와 보안이 필요합니다. 그래서 나온것이 SSH 바로 보안 쉘 입니다. 기본적으로 이동하는 패킷이 암호화 처리 되기 떄문에 TELNET보다는 매우 안전하다고 볼수 있습니다. 오늘은 이 SSH를 크랙하는 방법과 대책에 대해서 약간 알아보겠습니다. 이번에 소개할 툴은 메두사 입니다. 메두사는 Broute Force  공격에 사용되는 툴입니다. 설치 데비안계열 ( 데비안 , Ubuntu , 쿠분투 주분투 등등) 에서는 apt-get install medusa 로 간단하게 설치 할 수 있습니다. 메두사로 SSH서버를 크랙하는 방법에 대해 알아보겠습니다. 메두사의 메뉴얼입니다. 구조는 간단합니다. 상대 SSH서버를 확인한 후에 메두사로 무차별 대입공격을 시도합니다. 물론 상대 시스템에는 로그가 남을수 있겠지요.  일단 실험에 쓰일 노트북(공격자) 데스크탑(피해자) 입니다. 공격자 OS : Debian Net : wlan0 IP   : 192.168.0.26 피해자 OS : BackTrack4 Net : eth0 IP   : 192.168.0.3 ssh :  OpenSSh ( SSH1) 실험에 쓰일 피해자(backTrack)입니다.  현재 SSH서버를 가동하고 아무작업없이 대기중입니다. 공격자는 포트스캐너와 각종 툴들을 이용해 정보를 수집후  피해자가 SSH서버를 이용한다는것과 OpenSSH(SSH1)을 사용한다는 것을 알아냇다는 전제하에  시작하겠습니다. 공격자는 메두사 툴을 이용해 BruteForce공격을 시작합니다. medusa -h 192.168.0.3 -u root -P /home/noon/NOON/pass.txt -M ssh 사용된 옵션을 살펴 보자면 -h   :   호스트 주소입니다.  고로    타켓 주소 -u   :   크랙할 유저의 이름입니다.     유저 목록을 파일로 만들어서 사용할

OllyDbg 64bit 실행방법

OllyDbg 1.1 은 기본적으로 64bit 환경을 지원하지 못합니다. 책의 디버깅 실습은 거의 대부분 OllyDbg 를 이용해서 진행됩니다.  그러나 OllyDbg 1.1 은 64bit 환경을 지원하지 못합니다.  <그림 1. Windows 7 64bit 에서 OllyDbg 1.1 실행시 예외 발생> 64bit OS 에서 "2장 Hello World 리버싱" 실습 예제 파일 HelloWorld.exe 를 OllyDbg 1.1 로 실행시키면 <그림 1>과 같이 예외가 발생하면서 ntdll.dll 모듈 영역의 코드에서 멈춰버립니다. (이것은 OllyDbg 1.1 의 버그입니다.) 64bit 환경에서 OllyDbg 사용할 수 있는 2 가지 방법 #1. 64bit OS + OllyDbg 2.0 OllyDbg 2.0 버전에서는 64bit에서 정상 실행 되지 않는 버그가 수정되었습니다. 다운로드 링크 :  http://www.ollydbg.de/odbg200.zip * 참고 최신 버전 OllyDbg 2.01 beta 2 는 실행 과정에 약간의 문제가 있습니다. 문제가 해결될 때까지는 OllyDbg 2.0 을 사용해 주시기 바랍니다. 위 링크에서 파일을 다운받아 압축을 해제한 후 실행하면 <그림 2> 와 같은 화면이 나타납니다. <그림 2 - Windows 7 64bit 에서 OllyDbg 2.0 으로 HelloWorld.exe 를 띄운 화면> <그림 2>의 화면을 책의  <그림 2.3>  처럼 보이게 하려면 다음과 같이 작업해 주시면 됩니다. 1) 내부의 CPU 윈도우를 최대화 시킵니다. 2) Code/Register/Dump/Stack Window 의 폰트를 변경합니다.    (각각의 창에서 마우스 우측 메뉴 - Appearance - Font - System f

인터넷 웹페이지 디버깅 피들러(fiddler) 사용법

인터넷 디벌깅 툴 피들러 입니다. 개발자들은 인터넷 디버깅 툴을 많이 사용하고 있는데요 인터넷 익스플러워 , 사파리 구글크롬등 디버깅 툴은 내장되어 있습니다.  하지만 원하는 값을 얻기 어렵거나 사용하기 어려운 점도 있습니다. 그래서 사용하기도 간편하고 필요한 기능도 많도 원하는 값을 쉽게 확인 할수 있는 디버깅 툴을 소개 해드리려 합니다. 알고 계시는 분도 많겠지만 피들러 (fiddler) 라는 툴입니다.  피들러에 대하 알아보도록 하겠습니다.  피들러(Fiddler) 설치 피들러 설치를 하기 위해 아래 사이트에 접속합니다.   http://www.telerik.com/fiddler 사이트에 접속하시면 FreeDownload 버튼이 보입니다. 클릭을 해서 피들러 설치를 진행합니다. ▶ 피들러는 닷넷 프레임워크를 사용하는데요 window 7 이상 제품군이시면  Fiddler for NET4을 선택하시고 미만이면 .net2를 선택 하세요  이제 Download Fiddler를 선택합니다.  ▶ 피들러 설치 진행화면이 나옵니다. I Agree를 클릭합니다.    ▶ 설치할 폴더를 선택 후 Install을 클릭합니다.    ▶ 설치가 완료되면 Close 를 클릭합니다.    ▶ 설치가 완료되면 브라우저를 새로 실행 하시고 도구> Fiddler를 선택합니다. 도구메뉴가 안보이시면 Alt를 누르시면 보입니다.    ▶ 우측에도 피들러 메뉴가 있습니다.  도구를 클릭 후 피들러를 클릭합니다.   ▶ 실행이 되면 아래와 같은 화면이 나오는데요  좌측 하든을 보시면 Capturing 가 보입니다. 캡쳐를 진행하는 중이구요 키보드중 F12키를 누르면 캡쳐 중지 다시 F12키를 누르면 캡쳐가 진행됩니다.  원하는 부