Proxmox上で、複数テナント向けの完全に分離されたラボネットワークおよびVPNサーバを構築できます。
Getting Started
Personal(FREE) クイックスタート
apt update -y
apt install -y git ipcalc jq zip
git clone https://github.com/zelogx/msl-setup.git
cd msl-setup
# Phase 0: TUI Network Auto Configuration (Check existing network + Automatic network config)
./00_configNetwork.sh en # Language: en|jp (default en)
# Phase 1: Network Setup (check config + SDN setup)
./01_networkSetup.sh en # Language: en|jp (default en)
# Phase 1完了後、Phase 2の前にルータの静的ルートとポートフォワードを設定してください。
# 手動設定後、次のステップに進んでください
./02_vpnSetup.sh en # Language: en|jp (default en)
# Phase 3 (Pro Corporate only): RBAC Self-Care Portal Setup
./0301_setupSelfCarePortal.sh en # Language: en|jp (default en)
# (任意)MSLセットアップを完全にアンインストールする場合は、以下のコマンドを実行してください。
./99_uninstall.sh en # Language: en|jp (default en)
# 実行内容:
# 1. Pritunl VM を削除します(0201_createPritunlVM.sh --destroy を実行)
# 2. ネットワーク設定をバックアップ時の状態に復元します(0102_setupNetwork.sh --restore を実行)
# (任意)クラスタ運用コマンド
# v2.0以降の初期セットアップ時にProxmoxクラスタをすでに有効化している場合は、以下の作業は不要です。
mslcm enable-cluster # Promote MSL Setup to a cluster-enabled configuration
mslcm disable-cluster # Revert MSL Setup to a single-node configuration
mslcm add-node <IP address> # Add a node to the MSL Setup cluster configuration
mslcm del-node <IP address> # Remove a node from the MSL Setup cluster configuration
Phase 0で確認または入力するアドレスの参照
ネットワークデザイン
(a) MainLan(vmbr0既設): (例:192.168.77.0/24 GW: .254)
会社・自宅ラボのメインのLANのネットワークアドレス。
(b) Proxmox PVEのmainlanのIP: (例:192.168.77.2)
インターネットルータへのstatic route追加時、宛先IPとなる。
(c) vpndmzvn(新設): (例:192.168.80.0/24 GW: 192.168.80.1)
VPNクライアントが各テナント用サブネットへアクセスするための経路
最低/30のネットワークアドレスで充分。
(d) クライアントへの配布IP: (例:192.168.81.0/24)
wgとovpnで分けられる。例:192.168.81.2-126/25, 192.168.81.129-254/25
(e) 作成するテナントの数(PJ数): (例:8)
最低2で2のn乗2,4,8,16などになっている必要がある。
(f) 各テナント(vnetpjxx)に割り当てるネットワークアドレス: (例:172.16.16.0/20)
テナント用セグメント。このIPレンジを「作成するテナントの数」で分割する。
(g) Pritunlのmainlan側のIP: (例:192.168.77.9)
インターネットルータへのポートフォワード追加時の転送先IPとなる。
(h) Pritunlのvpndmzvn側のIP: (例:192.168.80.2)
VPNクライアントが各テナントに出ていくときのサブネットです。
(i) UDP ports
作成するテナント用セグメントの作成数(PJ数) x 2 (OpenVPN+Wireguard分)
MSL Setup パーソナルライセンスの主な機能。
構築を自動化します。ルータの静的ルートやポートフォワードは手動となります。Pritunl VM の初期設定も自動化し、以前は数日かかっていた作業が通常約10分程度で完了します(ルータ手動変更や対話画面の待ち時間を除く)。
生成テナント数(例:2、4、8、16)を選択できます。ネットワークアドレス、Pritunl VMのIPアドレス、VPN のポート番号は柔軟に設定可能です。
ネットワークアドレスを自動検出し、既設ネットワークとの衝突を回避する提案を行います。また、実行前に SDN/ファイアウォール設定をバックアップして復旧可能とします。
Proxmox の SDN とファイアウォール設定の自動適用および復元をサポートします。またv2.0ではVXLAN ベースの分離テナントネットワークを提供します。
主要ルータのポートフォワード挙動を検証し、Pritunl VM が各分離ネットワークゲートウェイへ到達できることを確認する自動チェッカーです。
Pritunl VMのNotesに初期セットアップリファレンスを自動生成。ホストの Notes からネットワーク図を生成します。
VM を各分離ネットワークに接続する手順や、VPN アクセスユーザーの運用ガイドを提供します。
フリーランスや個人の分離環境に適した無償ライセンスです。