N100搭載ミニPCとProxmox8.2(その3 OpenWRT)

この記事は約8分で読めます。

Proxmox環境が作成できたのでいよいよVMを作成していきます。

まずは、sshで接続し、Proxmox上で必要なソフトをインストールします。

# apt install unzip

OpenWRTのインストール概要

インストールの仕方は色々あるようですが、私は以下のような手順で行いました。

  • OpenWRT用のVMの作成
    イメージ展開用の環境を作ります。後でダウンロードしたOpenWRTイメージファイルをインポートします。
  • OpenWRTファイルのダウンロード
    x86用のファイルをダウンロードします。
  • OpenWRTファイルのインポート
    ダウンロードしたファイルをインポートします。
  • OpenWRTの設定
    必要な設定を行います。

OpenWRT用のVM作成

OpenWRTをインストールするためのVM環境を作ります。

「VMの作成」をクリックし、以下のように仮想マシンを作成していきます。

・全般

・OS
 「メディアを使用しない」にし、後でインポートします。

・システム
 マシンは「q35」、ファームウェアは「OVMF(UEFI)」

・ディスク
 デフォルトのディスクはゴミ箱マークで削除します。

                 ↓

・CPU

・メモリ

・確認

・VM作成後のハードウェア確認

OpenWRTファイルのダウンロード

OpenWRTの公式サイトのFirmwareのダウンロードからイメージファイル(x86)のダウンロード

# wget -O openwrt.img.gz https://downloads.openwrt.org/releases/23.05.5/targets/x86/64/openwrt-23.05.5-x86-64-generic-ext4-combined-efi.img.gz

イメージファイルの確認
# du -sh openwrt.img.gz
12M     openwrt.img.gz

イメージファイルの解凍
# gunzip ./openwrt.img.gz

イメージファイルの解凍後、サイズ確認
# du -sh openwrt.img
121M    openwrt.img

イメージ内のボリュームリサイズ
# sudo qemu-img resize -f raw ./openwrt.img 5G
Image resized.

イメージのインポート
user@pvehome:~$ sudo qm importdisk 100 openwrt.img local-lvm
importing disk 'openwrt.img' to VM 100 ...
  Logical volume "vm-100-disk-1" created.
transferred 0.0 B of 5.0 GiB (0.00%)
略
transferred 5.0 GiB of 5.0 GiB (100.00%)
Successfully imported disk as 'unused0:local-lvm:vm-100-disk-1'

・インポート後のVM上のハードウェア

・未使用ディスクの割り当て

・割り当て後

・「追加」ボタンをクリックし、「PCIデバイス」を選択

・前回、PCIパススルーしたデバイスを選択(ETH2)

・ETH3

・ハードウェアに追加されたことを確認

・ブート順の変更

・ブート順を変更(編集)し、有効にした「scsi0」(先ほどインポートしたディスク)を一番にする

                ↓

                ↓

VMを起動すると、OpenWRTが起動します。

※起動に失敗したため、VM起動時に「ESC」UEFI設定の画面に入り、「Secure Boot Configuration」から「Reset Secure Boot Keys」を実行すると起動できるようになりました。

OpenWRTの設定

 最初は初期の192.168.1.1で設定されています。PCのセグメントを192.168.1.x/24に設定し、コンソールからアクセスします。WANからsshとhttpを通すことで一旦LANからもアクセスできるようになります。

OpenWRTの設定

 あとは必要なopkgをインストールして必要な設定を行います。以下をインストールしておきました。

・WOL(Wake on Lan)
 OpenwrtからPCやNASを起動させ、Wireguardで接続した上でリモートデスクトップ接続をしています。

・Wireguard
 フリーのWifiを利用する時がメインですが、最近はほぼ一日中接続しています。自宅のAdguardHomeで広告ブロックが効くので便利です。

Wireguardの設定については、以前の記事で記載したためここではざっくり手順だけ紹介しておきます。

  • Interfaceの作成プロトコル:WireguredにしてInterfaceを作成します。
  • Generate new key pareで便宜上のサーバー側キーペアを作成します。
    (サーバ側public keyとサーバー側private key)
  • Listen Port、IP addressを設定します。
  • Firewallタブでファイアウォールのアサイン:lanを設定
  • ポートフォワードの設定をルーター上で行います。(Aterm上ではポートマッピング)
  • Peersタブでピア(相手先)設定を行います。
    Generate new key pareで便宜上のクライアント側キーペア(クライアント側public keyとクライアント側private key)、Generate Preshared keyでPreshared Key、Allowed IPsにトンネル用クライアントIPを設定、Route Allowed IPsのチェック
  • 設定後にInterfaceをrestartします。

今後

 これを導入した時にはProxmoxも8.2.2、Openwrtも23.05だったのがProxmoxの8.3が新しく出て、Openwrtも24.10のRelease Candidate(rc-02)になってます。Proxmoxはさておき、Openwrtは24.10にすることでカーネルのバージョンがあがり、ファームウェアもアップするだろうことからWifiを認識するのではないかと期待をしています。また出たら試してみたいと思っています。