迷える子羊ためのProxmox VE入門 ep2 ~VM構築&インポート編~

はじめに

前回:迷える子羊ためのProxmox VE入門 ep1~インストール編~ではProxmox VEのインストール方法について紹介しました。
今回はVMの構築とインポート方法について紹介します。

1. VM構築

まず初めに、VMの構築方法について紹介します。
Proxmox VEもESXi と同様にISOファイルをストレージにアップロードして、仮想マシンを構築します。
今回はParrot OSのSecurityエディションの構築を例に紹介します。
下記URLからParrot OSのSecurityエディションをダウンロードしてください。

www.parrotsec.org

1. ISOのアップロード

ステップ1

WebUIにログインして、図のようにストレージアイコンのlocalを選択します。

ステップ2

ISOイメージを選択します。

ステップ3

「アップロード」をクリック

ステップ4

「ファイルを選択」をクリックして、事前にダウンロードしたParrot OSのSecurityエディションをアップロードします。

ステップ5

「アップロード」をクリックします。

ステップ6

アップロードが完了するとリストに表示されます。

2. VMの構築

1. 作成

VMを作成」をクリックします。

2. 全般

名前に任意のVM名を入力して、「次へ」をクリックします。

3. OS

「CD/DVDイメージファイル(iso)を使用する」を選択します。
「ISOイメージ」はアップロードしたParrot OSのSecurityエディションを選択して、「次へ」をクリックします。

4. システム

グラフィックカードなどの設定します。
既存の設定で問題ない場合は、「次へ」をクリックします。

5. ディスク

ディスクサイズを任意のサイズに設定して、「次へ」をクリックします。

6. CPU

ソケット数、コア数、種別を任意の値に設定して、「次へ」をクリックします。

7. メモリ

メモリサイズをを任意のサイズに設定して、「次へ」をクリックします。

8. ネットワーク

ブリッジを任意のネットワークに選択して、「次へ」をクリックします。

9. 確認

問題なければ、「完了」をクリックします。 これでVMの構築は完了です。あとはインストーラーに沿ってVMをインストールします。

2. OVAのインポート

次はISOからの構築ではなく、OVAファイルからVMを作成する方法です。
今回はVulnHubのPOTATOの構築を例に紹介します。
下記URLからpotatoのOVAファイルをダウンロードします。

www.vulnhub.com

1. 仮想マシンの作成

まずは仮想マシンを構築します。基本的には前段で紹介した手順と同じですが、
OSの設定は図のように「メディア」を使用しないを選択して、VMを作成します。

2. 作成したVMのディスクを削除

ステップ1

作成したVMを選択して、「ハードウェア」をクリックします。

ステップ2

ハードディスクを選択して、「デタッチ」をクリックします。

ステップ3

「はい」をクリックします。

ステップ4

未使用のディスクを選択して、「削除」をクリックします。 

ステップ5

「はい」をクリックします。

3. OVAファイルの展開とインポート

ステップ1

ダウンロードしたOVAファイルを7zipなどで展開します。

ステップ2

展開したOVAファイルのVMDKファイルをProxmoxの任意フォルダにアップロードします。

ステップ3

qm importdiskを使って、VMDKファイルをインポートします。

qm importdisk <VMID> <vmdkファイル名> <ストレージ名> -format qcow2

各オプションは以下のような意味です。

オプション 説明
Proxmoxのツリー表示で表示される数字
<vmdkファイル名> インポートするVMDKファイル
<ストレージ名> インポートするストレージの名前
-format qcow2 フォーマットの指定
今回はqcow2形式にします。

今回VMID110のPotatoにインポートする場合は、下記のようになります。

qm importdisk 110 Potato-disk001.vmdk local-lvm -format qcow2

4. VMに割り当て

ステップ1

ハードウェアから未使用のディスクを選択して、編集をクリックします。

ステップ2

バス/デバイスSATAに変更します。

ステップ3

認識されると下記のように表示されます。

5. ブートオプションの変更

ステップ1

オプションを選択して、次にブート順を選択して、編集をクリックします。

ステップ2

sataの有効チェックボックスをクリックし、ドラッグ・アンド・ドロップで一番上に変更して、OKをクリックします。
VMを起動します。

トラブルシューティング

VulnHubのやられサーバをインポートする場合、元々は VirtualBox または VMware で作成しているため、
VM作成時のネットワークインターフェース名とインポート時ネットワークインターフェース名が一致しない事象があります。
IPが割り当てられないなどの事象が発生した場合は、 GRUB ブートローダー オプションを起動して、ネットワークインターフェース名を修正します。

1. GRUB ブートローダー オプションの起動

仮想マシンの起動直後のGRUB処理中にESCキーを押します。

2. 編集

キーボードの「e」を押して、ブートの構成を編集します。
編集の内容は、linux~と表示されている行を下記のように編集します。

linux /boot/vmlinuxz-・・・・ ro quiet
linux /boot/vmlinuxz-・・・・ rw quiet init=/bin/bash

CTRL + XをおしてVMを起動します。

3. シングルモードの起動とネットワークインターフェース名の編集

図のようにシングルユーザモードで起動します。

catコマンドでネットワークインターフェース名の確認

cat /etc/netplan/00_installer_config.yaml

図ではenp0s3となっていることが分かります。

ip linkでネットワークインターフェース名を取得します。

ip link

図では、ens18というネットワークインターフェース名ということが分かります。
enp0s3がens18と一致しないため、ネットワークにアクセスできないということが分かりました。 viコマンドでネットワークインターフェース名を修正します。

vi /etc/netplan/00_installer_config.yaml

正しいネットワークインターフェース名に修正します。
修正後下記コマンドを実行したら完了です。

exec /sbin/init

次回

次回はシンプルなペネトレーションテスト環境を作成しようと思います。