Contents

보안/해킹 관련 뿐만 아니라 개발 환경도 가상 환경으로 설정해서 사용한다.

Docker와 별개로 별도의 OS 자체를 설치해서 가상으로 구동한다.


VirtualBox 다운로드 받는 곳

https://www.virtualbox.org/wiki/Downloads


VirtualBox 대시보드에서 "New" 아이콘을 클릭해서 Linux/Ubuntu 정보를 입력하고 VM을 생성한다.

vm01.png



새로 생성된 VM을 선택하고 설정창(Cmd+S)을  열어 Network 탭에서 "Bridged Adapter"를 선택한다.

"NAT"가 기본 값이지만 현재 로컬의 IP 대역을 그대로 사용하기 위해서는 Bridged Adapter로 선택한다.

vm02.png



VM을 설정했다면 우분투 리눅스 이미지를 다운로드 해서 설치한다.

우분투 IOS 다운로드 받는 곳 (HTTPS 아님 ㅠㅠ)

http://releases.ubuntu.com/16.04/


Server install image for 64-bit PC (AMD64) computers (standard download) 파일로 설치했다.

ubuntu-16.04.6-server-amd64.iso



VM을 더블클릭해서 실행하고 IOS 파일을 선택한다.

(ISO 파일은 우분투 리눅스의 설치 CD인 것)

vm03.png



이미지로 부팅이 되고 다음과 같이 Ubuntu Linux 설치 화면이 나온다.

vm04.png


설치 화면에 나오는대로 하면 된다.

호스트 입력, 관리 계정/패스워드 입력, 홈 디렉토리를 암호화 할 것인지, 타임존, 디스크 파티션/LVM  등등..

그래서.. 리눅스 설치 화면은 생략!


설치가 거의 끝나면 다음과 같은 화면이 나오는데,

SSH 접속을 위해 부팅시 OepnSSH Server를 자동으로 실행하도록 체크한다.

vm05.png


Ubuntu 16.04.5 LTS amd64 (server) VDI + 100GB HDD + Bridged Network Interface + CPU (2+)


SSH로 접속하기 위해 VM의 고정 IP(Static IP)를 설정한다.

Bridged Network Interface를 선택했기 때문에 현재의 호스트와 동일한 네트워크 환경일 것이다.

인터넷 공유기를 사용한다면 보통의 경우 192.168.0.xxx 이거나 192.168.1.xxx 일 것이다.

여기에서는 192.168.1.xxx 환경이라 가정..


/etc/network/interfaces 파일을 열어서 다음과 같이 편집한 후 네트워크를 재시작 한다. (또는 재부팅)

vm07.png


재부팅 후 ifconfig 명령을 통해 IP를 확인할 수 있다.

vm08.png



로컬 호스트에서 다음과 같은 명령어를 이용해 VM 윈도우 없이 백그라운드에서 실행할 수 있다.

그리고 위에서 설정한 IP로 SSH를 통해 접속할 수 있다.

$ VBoxManage startvm "VM name" --type headless (해당 VM을 백그라운드로 실행하는 명령)

$ VBoxManage controlvm "VM name" poweroff (해당 VM을 종료하는 명령)

$ VBoxManage list vms (등록/설치된 VM 리스트를 보는 명령)

$ VBoxManage list runningvms (현재 실행중인 VM 리스트를 보는 명령)


첨부된 쉘 스크립트 파일(*.sh)들은 위의 기본 명령을 이용해 편리하게 VM을 관리할 수 있게 작성된 스크립트이다.


sudo apt install numix-gtk-theme numix-icon-theme
alias vm='~/bin/vm_manage.sh'
alias gg='~/bin/vm_console.sh'
alias zz='~/bin/vm_desktop.sh'
alias console='~/bin/vm_console.sh'
alias desktop='~/bin/vm_desktop.sh'
alias ll='ls -p'




?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
1141 Develop [php] 3 Ways to Detect Mobile or Desktop in PHP file hooni 2020.01.28 4468
1140 Develop 자주 쓰는 Docker 명령어 alias hooni 2020.01.10 278914
1139 Develop [python][django] request.cookie 읽어오기 ㅋㅋㅋ (쓰기) hooni 2019.12.06 2231
1138 System/OS SSH Passwordless Login Using SSH Keygen in 5 Easy Steps file hooni 2019.11.22 2231
» System/OS [virtualbox] VirtualBox에 Ubuntu 설치하기 file hooni 2019.11.22 1553
1136 Database [mysql] MySQL 데이터베이스 추가 및 사용자 추가 hooni 2019.11.22 1227
1135 Database [oracle] Oracle 사용자 추가 절차 hooni 2019.11.22 1191
1134 Database [mysql] MySQL 백업 및 복구 hooni 2019.11.22 1383
1133 Database [mysql] MySql DB/테이블 사이즈 확인을 위한 쿼리 hooni 2019.11.22 1243
1132 Database SQL JOIN 정리 (Inner Join & Outer Join) file hooni 2019.11.22 2391
1131 Develop [python] 파라미터 앞에 *, ** 의 의미? (*args, **kwargs) hooni 2019.11.22 2081
1130 Develop 링크들 보고 지울 내용 secret hooni 2019.11.21 0
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 99 Next
/ 99