自宅のPVEにマルチテナント化ツールを入れてみました。使い道編
今回は自宅のProxmoxをバージョンアップ(9.0.11から9.1.4)したかったので、PBSを建てて全てのコンテナとVMをバックアップしました。
そしてバージョンアップのついでに、マルチテナント化ツール(MSL Setup)というのを入れてみました。
**パブリッククラウドからのプライベートへの回帰がはやっているようですが、**今回もプライベートクラウドの話です。
前回は使い道編でした。
記事の内容は以下を参照してください。
今回は実際のインストール編
早速ですが、インストール方法です。
使用したのは以下
- Proxmox 9.0.11 - 大量にVMが既にデプロイされております。インターネットに接続済みである必要があるります。
- インターネットルータの設定知識 インストール中、static route, port forwardの設定が必要になります。
- MSL Setup Personal -> https://www.zelogx.com/ja/
- (必須ではないが念のため)VMはPBSで既にバックアップ済み (別の機会にVMではなくproxmoxサーバ自信をPBSにバックアップする方法でも投稿したいと思ってますが、今回は違います。
インストール手順
公式インストール手順は以下の通り。
私がインストールしてみた手順は以下の通り
1. Proxmoxにrootでログイン
2. MSL Setupに必要なパッケージと、MSL Setup本体をダウンロード
apt update -y
apt install -y ipcalc jq zip
apt install -y git
git clone https://github.com/zelogx/msl-setup.git
cd msl-setup
./01_networkSetup.sh jp
ここでインストールが始まります。
2.1. 最初は対話式にネットワークアドレスの設定です。
以下の図と説明を見ながら、ネットワークアドレスなどを指定していきます。
** 結果、自分の場合は、全部画面に表示されたままEnterを押すだけでした。**
一つだけ注意ですが、最後のUDPポート番号は、ちゃんとそのポートが利用可能かどうか確認して下さい。
ちなみにですが、最初の対話式の部分でテナントを何個作るか聞かれますが、8個くらいが無難です。テナント数の2倍(OpenVPNをWireguard用)の個数のポートフォワード指定が必要になります。
というのも、ポートフォワード指定できる数が自分のルータ(WXR-5950AX12)では32個が最大。
私の場合、最初16を指定してしまい、他のポートフォワードを合わせると、32個以上必要になってしったため設定できませんでした。
きっとYAMAHAのルータなどプロ志向の強いルータだと余裕なんでしょう。
2.2. 対話式の指定が終わると、いよいよ実際の設定に入ります。
特に何もすることはありませんでした。エラーが発生しないか見ているだけ。
どちらかというと、Proxmoxのダッシュボードを見ていると、随時、現時点のインストール状況が見えるので楽しいです。自動的にゾーンが増えて行ったり、ホストレベルのFirewall設定が自動的に設定されるのがリアルタイムで見えます。
結果、以下のような画面になります。
バックアップ状態に復元中(追加されたリソースを削除中)...
Deleting VPN pool route........ [OK]
Deleting subnets not in backup.. [OK]
Deleting VNets not in backup.... [OK]
Deleting zones not in backup.... [OK]
Aligning DC firewall options.... [OK]
Aligning host firewall options.. [OK]
Deleting extra host FW rules..... [OK]
Deleting IPSets not in backup.... [OK]
SDNゾーンを作成中........ [OK]
SDN VNetを作成中........ [OK]
SDNサブネットを作成中........ [OK]
SDN設定を適用します... [OK]
IPSet作成を開始します...
IPSetを作成中: devpjs..... [OK]
IPSetを作成中: mainlan.. [OK]
IPSetを作成中: vpn_guest_pool.. [OK]
IPSetを作成中: all_private_ip..... [OK]
Setting datacenter firewall options... [OK]
[INFO] [2026-02-01 12:00:37] Enabling host firewall and nftables on node pve13...
[INFO] [2026-02-01 12:00:38] Host firewall and nftables enabled successfully
Host firewall/nftables........... [OK]
Creating host-level FW rules.......... [OK]
Adding VPN pool route............ [OK]
ちなみにこのステップのみを再実行したい場合は、なんと中でバックアップを取得しているようで、以下のコマンドでも手動で戻すことが出来ました。また、単純に以下のコマンドを実行すると自動的に最初の状態までロールバックされ、そこから再度実行してくれます。
./01_networkSetup.sh jp --restore
2.3. 設定が終わると、一旦停止します。
そしてコンソールに以下のような表示が出ます。
手動設定が必要です: ルーター設定 (手動操作が必要)
========================================
ルーター設定のお願い
----------------------------------------
以下の設定をルーターに適用してください(値は自動展開済み):
- スタティックルート: 宛先 172.19.16.0/22 → ゲートウェイ 192.168.77.60
- ポートフォワード (OpenVPN): 15952-15955/UDP → 192.168.77.29
- ポートフォワード (WireGuard): 15956-15959/UDP → 192.168.77.29
設定完了後、次のフェーズに進んでください
この画面の指示に従って、スタティックルートとポートフォワードの設定を自分のインターネットルータに設定します。
この部分は、各自使用しているルータによって設定画面が大きく異なると思うので、ここでは説明を割愛します。
このステップを飛ばしてしまうと、次のVPNサーバの設定が正常に動作しませんので、必須のステップです。
2.4. ルータの設定が終わったら次のステップ。
以下のコマンドで次のステップを実行(VPNサーバのインストール)を実行します。
./02_vpnSetup.sh jp
このステップでは、cloudinitを使ってUbuntu VMを自動インストールし、その後、PritunlをそのVMの上にインストールしてくれているようです。
推測ですがこのステップの凄いところは、PritunlのVMを作る前に、そもそもVMから各ネットワークへReachabilityがあるかどうかを確認してからPritunlのインストールを行っているようで、しかもルータから本当にポートフォワード出来ているのかも内部で確認しているようです。(画面の表示から推定)
2.5. 前のステップが終わったら
以下のような画面が表示されます。
===============================================
Pritunl Configuration Reference
===============================================
The configuration reference has been saved to the
Proxmox VM notes section.
View it here:
https://192.168.77.60:8006/#v1:0:=qemu%2F100:4:=notes
===============================================
[INFO] [2026-02-01 12:35:33]
[INFO] [2026-02-01 12:35:33] ==============================================
[INFO] [2026-02-01 12:35:33] Phase 3 Automated Setup: COMPLETED
[INFO] [2026-02-01 12:35:33] Logs: /root/dev/proxmox-msl-setup/logs/msl-setup_20260201_123158.log
[INFO] [2026-02-01 12:35:33] ==============================================
[INFO] [2026-02-01 12:35:33]
[INFO] [2026-02-01 12:35:33] Snapshot checkpoint saved for future retries
==========================================
フェーズ 2 完了: VPN セットアップ成功
セットアップ完了!
==========================================
2.6. これで、Personal エディションのインストールは終わりです
まずコンソールログに書いてある、URLを開いて見ましょう。Pritunl VMのNotesセクションに、Pritunl VMへろログイン方法と、クレデンシャルが表示されています。
以下のような画面です。

そして、さらにホストレベルのNotesには今回増築された部分のネットワークの詳細がネットワーク図として表示されてます。以下のような画面です。
3. この後実施する事
はい。ここまででセットアップ作業は一旦終わりです。
各テナントにリモートから入って内部のVMを触るためには、Pritunl VMのUIから、Pritunlへユーザ登録をする必要があります。
また、vmbr0上に構築されたVMを隔離ネットワークに移動するには、一旦VMを落として、NICの設定をvmbr0からvnetpjXX(XXはテナント番号 00, 01, 02,....)に繋ぎ変えればOKです。なお、VMに静的IPで、そのテナント用のセグメントのIPアドレスを振ってやる必要があります。
この辺はまた時間があったら、運用編という感じで説明しようかと思います。
4. まだ終わりません笑
Corporate版にはこのあとにセルフケアポータルのインストールが出来るようです。
実行は以下のとおりなのですが。。。。。
./0203_setupSelfCarePortal.sh en # Language: en|jp (default en)
そしてなんとなんと、Personalエディションでも自分でセルフケアポータルを手動で構築できてしまいます。その記事が以下です。
Reddit r/Proxmox
まとめ
今回は、自宅のProxmox(PVE)をアップグレードするついでに、MSL Setup(マルチテナント化ツール)を実際にインストールしてみた記録です。
やったことは大きく2つで、
- (1) 対話式ウィザードでネットワーク設計値を確認→SDNゾーン/VNet/IPSet/ホストFWなどを自動構築
- (2) ルータ側でスタティックルート+UDPポートフォワードを設定してから、Pritunl(VPN)VMを自動展開してVPN入口まで完成
という流れ。結果として、プロジェクトごとにL2分離された“隔離ネットワーク”+プロジェクト別VPN入口が自宅PVE上に一気に増築され、ProxmoxやVMのNotesに「構成メモ/ネットワーク図/Pritunlログイン情報」まで残るので、あとから見返すのが楽でした。
次回は、テナント内にVMを移設して実運用する手順(ユーザ追加、VMのNIC差し替え、IP設計など)を書いていく予定です。
リンクまとめ
- 前回の記事 (使い道編)
マルチテナント化ツールは以下で紹介されていました。
- Reddit #1:
- Reddit #2:
- オフィシャルWEBサイトらしい
- ダウンロードページ(Githubリポジトリ)

