Skip to main content

Vagrant로 VM Linux 실행하기

· 2 min read
te
Sofrware Engineer

VMware Fusion의 GUI로 매번 칼리 리눅스를 실행하는게 번거로워,
Vagrant를 통해 CLI로 칼리 리눅스를 실행해보고자 합니다.

Mac M3 Sequoia 최신 버전을 기준으로 작성했습니다.

Vagrant​

Vagrant는 가상 머신(VM)을 생성하고 관리하는 하이퍼바이저Hypervisor를 사용하여 개발 환경을 자동화 및 관리해주는 도구입니다. 관련 글
VM 실행 환경을 Ruby 파일로 설정하고, vagrant ssh로 vm 환경과 터미널로 연결하여 사용할 수 있습니다. 사용 목적은 개인적으로 Kali Linux에서 거의 대부분 작업을 CLI로 하고 있어 번거롭게 느껴진 부분이 많았기 때문입니다.

Steps​

1단계​

사전 준비

VMware Fusion 설치: VMWare Fusion을 다운로드 받아 설치합니다.

  • Rosetta 설치 (Mac ARM 환경): M1/M2/M3 등 ARM 기반 Mac의 경우, Rosetta를 먼저 설치해야 합니다.
/usr/sbin/softwareupdate --install-rosetta --agree-to-license
  • Vagrant 설치: Homebrew를 사용하여 Vagrant를 설치합니다.
brew install vagrant
  • vagrant-vmware-utility: vmware fusion을 vagrant에서 실행하기 위해 필요합니다.
  • Vagrant-vmware-desktop 플러그인 설치: Vagrant와 VMware를 연결하기 위한 플러그인을 설치합니다.
brew install --cask vagrant-vmware-utility
vagrant plugin install vagrant-vmware-desktop

2단계​

Vagrant 설정 및 실행

VMware Fusion 실행: 처음 실행 시 시스템 설정에서 VMware를 허용해야 할 수 있습니다.

Vagrantfile 생성: Vagrantfile은 가상 머신의 설정 파일로, Ruby로 작성됩니다. 프로젝트 디렉토리에서 vagrant init 명령어로 생성합니다. 아래 명령어로 Kali Linux 전용의 Vagrantfile을 생성합니다.

vagrant init kalilinux/rolling
vagrantfile

Box 지정: Vagrantfile에서 사용할 운영체제 이미지를 지정합니다. 가상 머신 생성 및 실행: vagrant up 명령어를 실행하여 가상 머신을 생성하고 시작합니다. 이후 SSH 접속 vagrant ssh 명령어로 생성된 가상 머신에 접속할 수 있습니다

vagrantfile
vagrant up
vagrant ssh
vagrantfile

vagrant up으로 kalilinux/vagrant.box를 받는 것이 생각보다 오래 걸립니다. vagrant 실행이 완료되면, VM Fusion이 열립니다.