티스토리 뷰

반응형

VirtualBox on Linux / pfSense

 

VirtualBox on Ubuntu Linux / pfSense / Configuration Secure Boot

 

윈도 VirtualBox는 아직 MS Store를 통한 설치 및 자동 업데이트가 지원되지 않아 업데이트를 위해 다시 프로그램을 설치해야 하는 번거로움이 있습니다. 그래서 업데이트의 번거로움을 피하기 위해 Ubuntu Linux를 선호하게 되는 것 같습니다.

리눅스에서는 단순히 명령어 한 줄만 입력하면 프로그램 설치가 시작되고 업데이트도 자동으로 되는 편리함이 있습니다. 하지만 처음 설치하는 사용자의 경우 Configuration Secure Boot (BIOS에 Secure boot - enabled 상태인 경우)에서 막혀서 가상 머신 설치에 애먹는 경우가 있습니다. 

Configuration Secure Boot에서 막혀 진행을 못하는 문제 해결방법 (Stuck on Configuration Secure Boot Solution ) 먼저 살펴보고 pfSenser 설치 및 webConfigurator 진입 방법에 대해서 살펴보도록 하겠습니다.

 

VirtualBox on Ubuntu Linux (Stuck on Configuration Secure Boot)

 

VirtualBox, vagrant 설치 명령어

 

먼저 터미널(Terminal)로 진입하기 위해, 단축키 ctrl + alt + t를 입력합니다.
터미널(Terminal)이 시작되면 다음 명령어를 입력합니다.

 

sudo apt-get install virtualbox vagrant -y

# vagrant 프로그램의 경우, docker처럼 Virtualbox 이미지를 쉽게 다운로드, 실행 관리할 수 있는 프로그램입니다.
# vagrant에 대해서 모르시면 설치가 불필요합니다. 굉장히 훌륭한 프로그램이니 같이 설치하는 것도 좋습니다.

 

Configuration secure boot 해결방법 (Solution for stuck at configuration secure boot)

 

you must choose a password now and then confirm the change after reboot using the same password, in both the “Enroll MOK” and “Change Secure Bootl State” menus that will be presented to you whe this system reboots.

 

Secure boot가 활성화된 BIOS에서는 VirtualBox 설치 중간에 'Configuration secure boot'  메뉴가 나오게 됩니다.
이 메뉴에서는 비밀번호(password)를 설정하고 설치를 마무리하시면 됩니다. 

이제 가장 중요한 단계가 하나 남았습니다. 컴퓨터를 재부팅합니다.

처음 보는 Grub 메뉴가 화면에 나타날 것입니다. 이 메뉴에 "Enroll MOK"라는 메뉴를 선택하세요. [중요]

Enroll MOK(Machine Owner Key)는 Secure boot에 사용자가 직접 sign을 등록(Registration)하는 메뉴입니다.
해당 메뉴를 선택하면 비밀번호(Password)를 물어보는 화면이 나타나게 됩니다. 이 비밀번호는 VirtualBox 설치 도중 우리가 입력했던 비밀번호를 입력하시면 됩니다.

이 단계를 안 하시면 VirtualBox에서 가상 머신이 부팅이 안됩니다. Enroll MOK를 못하셨다면 Secure boot를 Diabled로 바꾸는 방법도 있습니다.

 

pfSense 설치 및 webConfigurator 설정 방법

 

pfSense iso download(Community Edition)

 

pfSense 최신 버전 AMD64(64-bit) iso 이미지를 공식 홈페이지에서 다운로드합니다. 이때 iso 이미지와 함께 sha256 파일도 함께 다운로드해 주세요.

 

Download iso and sha256

 

sha256 파일에는 프로그램의 sha256 hash값이 들어있습니다. 미러 사이트를 통해 받은 설치 iso 이미지에 문제가 없는지 sha256 -c 옵션을 사용해서 파일의 무결성을 확인할 수 있습니다.

 

sha256sum check option

 

sha256 -c 옵션 뒤에 sha256 파일 이름을 입력하면, 자동으로 sha256 hash를 확인하여 일치하는 경우 'OK'라고 안내해줍니다.

-c 옵션 없이 다운로드한 gz 파일 이름을 입력하면 sha256 hash 값을 추출해 줍니다. 편한 방법을 사용하여 hash 값을 확인하고 진행하시는 것이 좋겠습니다.

 

sha256sum 실행

 

가상 머신 생성 (Create Virtual Machine)

 

pfSense(Create Virtual Machine)-1

 

가상 머신 생성 메뉴에서는 Type: BSD, Version: FreeBSD(64-bit)를 선택합니다. Name, Machine Foler는 사용자가 임의의 이름이나 경로를 지정할 수 있습니다.

 

pfSense(Create Virtual Machine)-2

 

Memory size에서는 메모리의 용량이 넉넉하다면 2GB, 4GB 미만의 메모리인 경우 1GB만 설정해주셔도 됩니다.
pfSense를 개인적인 학습 용도로 사용할 것 이기 때문에 그다지 큰 용량이 필요하지 않습니다. 나만 쓸 거니까..ㅜ,.ㅜ

 

pfSense(Create Virtual Machine)-3

 

'Create a virtual hard disk now' 메뉴를 선택하고 'Create' 메뉴를 선택합니다.

 

pfSense(Create Virtual Machine)-4

 

Hard disk file type 메뉴에서는 기본값이 VDI(VirtualBox Disk Image)를 선택하고 'Next'를 눌러주세요.

 

pfSense(Create Virtual Machine)-5

 

'Dynamically allocated' 메뉴를 선택합니다. 설치되는 용량에 따라 vdi 파일의 용량이 변동됩니다.

 

pfSense(Create Virtual Machine)-6

 

pfSense의 경우 최종 설치에 필요한 공간이 약 1.6GB 정도입니다. 2GB로 설정하셔도 되지만 이미 'Dynamically allocated' 메뉴를 선택했기 때문에 기본값이 16GB 그대로 두고 'Create'를 눌러주세요.

 

pfSense(Create Virtual Machine)-7

 

생성된 pfSense 가상 머신의 환경설정(Settings)으로 들어갑니다.

System 메뉴에서 Harddisk 부팅 순서를 CD보다 상위 단계로 변경시켜두시면 편리합니다.(꿀팁)

Network 메뉴에서는 Adapter 1 - Brided Adapter, Advanced 
                                 Adapter 2 - Internal Network, name(intnet) 

Storage - Empty 상태인 CD에 다운로드한 pfSense iso 파일을 마운트하고 pfSense 가상 머신을 부팅하여 설치를 진행합니다.

 

pfSense(Create Virtual Machine)-8

 

설치가 완료되면 pfSense를 종료하여 Storage - Storage Devices에서 iso 이미지를 제거(remove) 해주세요.
이 이미지가 마운트 상태로 다시 pfSense를 부팅하게 되면 다시 설치 단계로 진입하게 됩니다.

iso 이미지가 연결되지 않은 상태로 pfSense 가상 머신을 부팅합니다.

 

pfSense(Create Virtual Machine)-설치 진행

 

pfSense - webConfigurator 진입 및 설정 방법

 

pfSense - webConfigurator

 

pfSense가 실행되면 위와 같은 메뉴가 나타나게 됩니다. 지금 상태는 패킷이 필터링되고 있는 상황이라 webConfigurator로 진입하기 위해 8) Shell 메뉴에서 pfctl -d 명령어로 잠시 필터링을 중지시킵니다.

그리고 WAN에 나오는 IP를 웹 브라우저에 입력합니다.

'id: admin, pass:pfsense'를 입력하시면 pfSense webConfigurator 관리자 메뉴로 진입할 수 있습니다.

 

pfSense - webConfigurator -1

 

브라우저에서 자동으로 차단할 수 있습니다. 따라서 'Advanced' 메뉴를 눌러서 'Proceed to XXXXXX(unsafe)'로  관리자 페이지로 다소 불편하게 이동해야 합니다.

 

pfSense - webConfigurator -2

 

안내가 나오는 부분은 한 번 살펴보시고 'Next'를 눌러서 다음으로 진행하세요.

본격적으로 설정하는 부분은 Step 2 of 9 부분입니다.

 

pfSense - webConfigurator -3

 

Primary DNS Server에 1.1.1.1, Secondary DNS에는 1.0.0.1 또는 8.8.8.8을 입력합니다. 저는 Cloudflare를 primary로 Google DNS를 sencondary로 설정해봤습니다. 사용상 문제는 없습니다.

 

pfSense - webConfigurator -4

 

Time server hostname은 기본값으로 두시고, Timezone만 Asia/Seoul을 선택합니다.

선택 메뉴가 너무 많기 때문에 먼저 Asia 부분으로 이동하고 거기에서 Seoul을 찾는 방식으로 찾아가시면 됩니다.

 

pfSense - webConfigurator -5

 

마지막 부분에는 관리자 비밀번호 재설정하는 단계가 나오게 됩니다.
기본 비밀번호는 보안에 취약할 수 있습니다. 꼭 관리자 비밀번호를 변경해주세요.

 

pfSense - webConfigurator -6

 

비밀번호 재설정 이후에 다시 webConfigurator에 진입하시면, 위와 같은 메뉴를 확인할 수 있습니다.
다양한 방화벽 메뉴를 실습할 수 있으니 참 좋은 것 같습니다.

관리자 페이지에서 모든 설정이 끝났다면, 다시 Shell에서 pfctl -e 명령어를 실행하여 패킷 필터링을 활성화시켜주세요.

 

pfSense - webConfigurator -7

 

반응형
댓글