서버 리뷰/Proxmox

Proxmox 폐쇄망 VM 구축 가이드

StWorld 2025. 5. 3. 11:19
728x90
반응형

 

이 가이드는 Proxmox VE에서 폐쇄망(외부 네트워크와 격리된 사설 네트워크) 환경의 가상 머신(VM)을 구축하는 방법을 설명합니다. 폐쇄망은 보안이 중요한 환경에서 VM 간 내부 통신만 허용하고 외부 접근을 차단하는 데 유용합니다.

1. Proxmox VE 개요

Proxmox VE는 Debian Linux 기반의 오픈소스 Type-1 하이퍼바이저로, KVM 가상화와 LXC 컨테이너를 지원합니다. 웹 기반 UI를 통해 VM과 컨테이너를 쉽게 관리할 수 있으며, 네트워크 설정을 유연하게 구성할 수 있습니다.

2. 폐쇄망 설정을 위한 준비

  • Proxmox VE 설치: 최신 버전의 Proxmox VE가 설치되어 있어야 합니다. 공식 사이트(proxmox.com)에서 ISO 이미지를 다운로드하여 설치하세요.
  • 네트워크 인터페이스 확인: 서버의 물리 네트워크 인터페이스(예: eno1)를 확인합니다.
  • IP 대역 계획: 폐쇄망에 사용할 사설 IP 대역(예: 10.10.20.0/24)을 결정합니다.

3. 폐쇄망용 가상 브리지 설정

폐쇄망을 위해 외부 네트워크와 연결되지 않은 가상 브리지(vmbr1)를 생성합니다. 이는 VM 간 내부 통신만 허용합니다.

3.1 네트워크 설정 파일 수정

Proxmox 호스트의 네트워크 설정 파일(/etc/network/interfaces)을 편집합니다.

sudo nano /etc/network/interfaces

아래와 같이 vmbr1을 추가합니다:


auto lo
iface lo inet loopback

iface eno1 inet manual

auto vmbr0
iface vmbr0 inet static
    address 192.168.0.84/24
    gateway 192.168.0.1
    bridge-ports eno1
    bridge-stp off
    bridge-fd 0

auto vmbr1
iface vmbr1 inet static
    address 10.10.20.1/24
    bridge-ports none
    bridge-stp off
    bridge-fd 0
        

설명:

  • vmbr0: 외부 네트워크와 연결된 기본 브리지(기존 설정).
  • vmbr1: 폐쇄망용 브리지로, 물리 인터페이스(bridge-ports none)와 연결되지 않아 외부 통신이 차단됩니다.
  • address 10.10.20.1/24: vmbr1에 할당된 사설 IP 대역.

3.2 네트워크 설정 적용

설정을 저장한 후 네트워크를 재시작합니다.

sudo systemctl restart networking

또는 서버를 재부팅합니다:

sudo reboot

4. VM 생성 및 네트워크 설정

Proxmox 웹 UI를 통해 VM을 생성하고 폐쇄망에 연결합니다.

4.1 VM 생성

  1. Proxmox 웹 UI(https://[Proxmox_IP]:8006)에 로그인합니다.
  2. 오른쪽 상단의 Create VM 버튼을 클릭합니다.
  3. VM 설정을 구성합니다:
    • General: VM 이름과 ID를 지정합니다.
    • OS: 사용할 OS의 ISO 이미지를 선택합니다(예: Ubuntu).
    • System: 기본 설정 유지.
    • Disks: 디스크 크기를 지정합니다.
    • CPU/Memory: 필요에 따라 CPU 코어와 메모리를 설정합니다.
    • Network:
      • Bridge: vmbr1 선택.
      • Model: VirtIO (성능 최적화).
      • Firewall: 선택적으로 활성화.
  4. 설정을 확인하고 VM을 생성합니다.

4.2 VM 내부 네트워크 설정

VM 내부에서 사설 IP를 수동으로 설정합니다. 예를 들어, Ubuntu VM의 경우:

sudo nano /etc/netplan/01-netcfg.yaml

다음과 같이 설정합니다:


network:
  version: 2
  ethernets:
    ens18:
      addresses:
        - 10.10.20.2/24
      gateway4: 10.10.20.1
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]
        

설정을 적용합니다:

sudo netplan apply

참고: ens18은 VM의 네트워크 인터페이스 이름으로, 환경에 따라 다를 수 있습니다. ip a 명령어로 확인하세요.

5. 폐쇄망 테스트

VM 간 통신을 테스트하여 폐쇄망이 정상적으로 작동하는지 확인합니다.

  1. 두 개 이상의 VM을 vmbr1에 연결하고 각각 다른 IP(예: 10.10.20.2, 10.10.20.3)를 설정합니다.
  2. 한 VM에서 다른 VM으로 ping 테스트를 수행합니다:
    ping 10.10.20.3
  3. 외부 네트워크(예: google.com)에 접근을 시도하여 차단됨을 확인합니다:
    ping google.com

참고: ping이 실패하면 VM의 방화벽 설정(iptables) 또는 Proxmox의 방화벽을 확인하세요.

6. (선택) NAT를 통한 외부 통신 활성화

폐쇄망 VM이 외부 네트워크에 접근해야 하는 경우(예: 소프트웨어 업데이트), NAT를 설정할 수 있습니다.

6.1 iptables 설정

Proxmox 호스트에서 iptables를 사용하여 NAT를 구성합니다:


sudo iptables -t nat -A POSTROUTING -s 10.10.20.0/24 -o vmbr0 -j MASQUERADE
sudo sysctl -w net.ipv4.ip_forward=1
        

설정을 영구적으로 저장합니다:

sudo apt-get install iptables-persistent

설치 중 규칙 저장 여부를 묻는 메시지에 동의합니다.

7. 보안 고려사항

  • 방화벽 활성화: Proxmox와 VM 내부에 방화벽을 설정하여 불필요한 포트를 차단합니다.
  • 스냅샷: VM 설정 변경 전 스냅샷을 생성하여 복구 가능성을 확보합니다.
  • 업데이트: Proxmox와 VM의 소프트웨어를 최신 상태로 유지합니다.

8. 참고 자료

반응형