デモギャラリー

デモシナリオやアセットをまとめたページ

Zelogx Platform - デモギャラリー

Zelogx ミッション駆動型デモをお楽しみください - MSL Setup Pro ミッションガイド

デモの申し込みはこちらから→デモ予約

このページには、デモをお使いの Proxmox ホスト上でそのまま再現できる、ステップバイステップのシナリオがすべて含まれています。M2-2 MSL Setupのインストールを体験する。から読み進めていただくと、MSL Setup のインストール手順を一通り追体験できます。

目次

  1. Mission-1 VPNのセットアップを完了させる
  2. Mission-2 体験ミッション予定時刻になったら
  3. Mission-3 隔離環境にVMを構築
  4. Mission-4 完全隔離
  5. Mission-5 セルフケアダッシュボードの体験

Mission1 - VPNのセットアップを完了させる。目安:15分

M1-1 - 指示に従ってVPN Clientをインストールせよ。

VPNクライアントはPritunl Client/OpenVPN Clientどちらでも良い。

Pritunl clientはOpenVPN/Wireguardの両方で接続可能なclientである。 どちらを使うかはあなた次第

M1-2 - VPN Clientにdemoに接続するための設定を行え。

M1-3 - VPNが接続できることを確認せよ

PritunlクライアントまたはOpenVPNからVPN接続可能なことを確認するのだ。
Pritunlクライアントの場合、以下の二点が確認できれば接続OKだ。

Pritunlクライアントでの接続 →  Pritunl(OpenVPN)接続完了

接続出来たら以下のpingコマンドが成功することを確認せよ。
PingコマンドはWindows Terminalから実行できる。以下のように表示されればOKだ

PS C:\Users\urname> ping 172.16.21.254

Pinging 172.16.21.254 with 32 bytes of data:
Reply from 172.16.21.254: bytes=32 time=1ms TTL=64
Reply from 172.16.21.254: bytes=32 time=1ms TTL=64
Reply from 172.16.21.254: bytes=32 time=1ms TTL=64
Reply from 172.16.21.254: bytes=32 time=1ms TTL=64

Ping statistics for 172.16.21.254:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 1ms, Maximum = 1ms, Average = 1ms

M1-4 - VPNを切断し待機する。

これで、ミッション2以降の継続が可能となった。 PritunlクライアントまたはOpenVPNでVPNの切断(Disconnect)を行い体験ミッション予定時刻まで待機するのだ。

他のミッションが進行中の可能性がある。絶対に気付かれてはならない。速やかに切断せよ。

M1 ラップアップ

このミッションでは、以下を確認できました

—Mission1 Accomplished!—


Mission 2 - 体験ミッション予定時刻になったら。目安:30分

M2-1 VPN接続

次の指示は体験ミッション予定時刻の約一時間前にメールで通知される。 体験ミッション予定時刻までに、快適に作業できる場所まで移動し、準備を整えよ。 そして、体験ミッション予定時刻になったら、直ちにVPNを接続し次の指示に従え。

M2-2 MSL Setupのインストールを体験する。

以下のコマンドを実行し、20分以内にMSL Setupのインストールを完了せよ。

M2-2-1 Proxmoxダッシュボードにログイン

デモ環境では、既にProxmoxが起動しています。Proxmoxダッシュボードへログインせよ。

Proxmoxログイン
https://172.16.21.1:8006
User name:root
Password: (メール「デモ環境の準備が完了しました」で送られたproxmox root passwordを使用してください)
Realm:Linux PAM standard authentication

デモ環境ではsshでの接続は出来ないようになっています。

M2-2-2 Proxmox コンソールから、インストールの開始

Shellオープン手順1 →  Shellオープン手順2

apt install -y ipcalc jq

インストールコマンド実行の様子→ インストールコマンド実行の様子

cd msl-setup-pro-1.4.5_corporate/
# TUI Configurator の起動
./00_configNetwork.sh jp

以下のように対話式インストールが始まります。
TUI Installer

以降のミッションをスムーズに終わらせる事が出来るよう、ネットワークアドレスなどあらかじめ最適な値になっています。インストーラに表示された値をそのまま使用するようにしてください。
確認が終わったら[保存]を選択し、設定を保存します。
「Proxmox ノートにネットワーク図を追加しますか?」と聞かれたら「 [Y] はい」を選択してください。

# テナントネットワーク構築処理の起動
./01_networkSetup.sh jp

テナントネットワーク構築完了時、以下のメッセージが表示されます。

手動設定が必要です: ルーター設定 (手動操作が必要)

========================================
ルーター設定のお願い
----------------------------------------
以下の設定をルーターに適用してください(値は自動展開済み):
 - スタティックルート: 宛先 172.31.16.0/21 ゲートウェイ 172.16.21.1
 - ポートフォワード (OpenVPN): 11856-11863/UDP → 172.16.21.9
 - ポートフォワード (WireGuard): 15952-15959/UDP → 172.16.21.9
設定完了後、次のフェーズに進んでください

==========================================
フェーズ 1 完了: ネットワークセットアップ成功
次のステップ:
  1. ルーター設定を実施してください(前のステップで表示された指示に従う)
  2. ルーター設定完了後、以下を実行:
     ./02_vpnSetup.sh jp
==========================================

コンソールログに表示されたように、static routeとport forwardの設定をあなたの インターネットルータに設定する必要があります。目的は以下の通りです。

ただしデモ環境では該当するルータが無いため、今回は実際の設定は行いません。 このまま何もせず次に進んで構いません。

間違って設定してしまった場合、以下のコマンドでセットアップ前の状態に戻すことが 可能です。 ./0102_setupNetwork.sh jp --restore
リストア完了後、再度./01_networkSetup.shを起動する事により、再セットアップ が可能です。

次のコマンド。これで、VPNサーバのインストールを行います。

./02_vpnSetup.sh jp

本シェルの最後に出力された、URLにアクセスしてください。
URL: Proxmox dashboard
このURLを開くと、右上のnoteセクションにPritunlの初期ログインユーザ名と初期パスワードが 表示されています。
本デモでは不要ですが、このステップも以下のコマンドで実行前の状態に戻すことが可能です。
./0201_createPritunlVM.sh --destroy

それでは最後のセットアップに入ります。以下のシェルを実行することにより、 セルフケアダッシュボードのセットアップを行います。これによりVPNユーザが Proxmoxダッシュボードにアクセスできる様になり、VPNユーザが割り当てられている 隔離ネットワークに対してのみ、VMの作成、削除、起動、停止、スナップショット作成、 バックアップの取得等できるようになります。

では、実行してみましょう。

./0301_setupSelfCarePortal.sh jp

また途中、どのストレージをpoolに割り当てるか、対話形式で聞かれます。Enter(全て選択)を入力してください。

╔════════════════════════════════════════════════════════════════╗
║  IMPORTANT: Save these credentials immediately!               ║
╚════════════════════════════════════════════════════════════════╝

Project | Username        | Password
--------|-----------------|----------------------------------
pj01    | pj01Admin@pve   | EmaSeVzHeqoQnuuY
pj02    | pj02Admin@pve   | 5U7MV0QfaTHkO5af
...     | ...             | ...

これで、MSL Setupのインストールは全て完了しました。 次のステップへ進みましょう。

M2-3 作成された隔離ネットワークの確認

自動作成されたネットワークダイアグラムを見てみましょう!
Proxmox dashboard の左側ツリーのDatacenter->PVE16->Notesを選択します。

ネットワークダイアグラム確認

Proxmox ダッシュボードのPVEホストのnotesを見ることにより、今回あなたが作った ネットワークがネットワークダイアグラムとして表示されているのが確認できると思います。

M2-4 Operation Guideの確認

Proxmox dashboard の左側ツリーのDatacenter -> PVE16 -> 113(pritunl-msl) -> Summaryを選択します。
画面右上にNotesセクションがあります。Pritunlの初期パスワードが確認可能です。

Operation Guide表示例

Pritunl Setup Credentials
Initial Username: pritunl
Initial Password: xxxxxxxxxxxx

また、その下にはPritunl Manual Configuration Referenceとして、Day 1 operation guide が表示されています。 この内容はこれから実行していきます。
PritunlダッシュボードへアクセスするURLもリンクで表示されていることを確認して下さい。

M2-5 Pritunl VMに組織、ユーザを作成しましょう。

M2-5-1 ログイン

以下のURLにアクセスしてください。前ステップのリンクをクリックしてもOKです。
今回のデモでデフォルト設定で作成されていれば、URLは以下の通りです。
https://172.16.21.9
ユーザ名:pritunl
パスワード: <先ほどのステップ(M2-4)で確認した初期パスワードを指定します>

Pritunlログイン画面

初回表示される画面は後からでも変更可能ですが、ここでパスワードを 変更しておくのがお勧めです。 今回のデモ環境で生成されるパスワードは、 デモ終了後全て破棄されるので、あなたの好きなパスワードにしても構いません。

初回表示される画面はSaveボタンを押して終了します。

M2-5-2 Organizationの確認

Usersタブを開くと、以下のような画面が表示され、pj01-pj08という名前のorganizationが作成されていることが判ります。 このOrganizationは、作成したプロジェクト(テナント)に1対1で対応しています。

組織追加3

M2-5-3 VPN userの作成

プロジェクトpj01へアクセスするVPNユーザを追加してみましょう。
ユーザを登録します。Add Userボタンから登録する事が可能です。

ユーザ名:testuser1
organization:pj01 (ここではpj01としますが、勿論他のorganizationでも構いません)

Userは、各隔離環境にリモートからVPNアクセスするユーザが増減するタイミングで、 毎回設定する必要があります。

ユーザ作成画面

M2-5-4 VPNユーザの鍵管理

ユーザを作成すると以下のような画面になります。

Profile download画面

ユーザ名の右側にClick to download profileというアイコンがあるのでクリックしてみましょう。
tar形式でVPNクライアントのクライアントキーがダウンロードされます。
あとは、これをリモートユーザにメールなど(安全な方法)で送付します。

ユーザは、このプロファイルを使ってPritunl VPNクライアントまたはOpenVPNクライアントを使用してVPN接続することが可能です。
今あなたがデモ環境に接続している方法と全く同様です。

M2 ラップアップ

このミッションでは、以下を確認できました

—Mission2 Accomplished!—


Mission 3 隔離環境にVMを構築してみましょう。目安:10分

ProxmoxでVMを構築したことがある人は、ポイントだけ確認してスキップしても構いません。
ポイントは以下の2点です。

M3-1 Create VM

隔離されたネットワークPJ01にVMを作ってみましょう。

M3-1-1 ISO download

このステップは不要なので削除されました。

M3-1-2 VM作成

Datacenter -> pve16 -> “Create VM”をクリックすると以下の画面になります。

M3-1-2-1 General

作成するVMの以下の値を設定し、nextをクリックしてください。
Name:testvm
Resource Pool: pj01 <---- ここが重要です。pj01のテナントネットワークに属するようpool名にpj01を指定してください。
Nextをclickしてください。

General設定

M3-1-2-2 OS

作成するVMのOSのISOファイルを指定します。

OS設定

M3-1-2-3 System

Nextをclickしてください。

System設定

M3-1-2-4 Disks

Nextをclickしてください。

Disk設定

M3-1-2-5 CPU

Cores:4を指定 Nextをclickしてください。

CPU設定

M3-1-2-6 Memory

Nextをclickしてください。

Memory設定

M3-1-2-7 Network

以下の値を設定し、nextをクリックしてください。
Bridge: vnetpj01 <---- ここが重要です。隔離されたテナントネットワークvnetpj01に属するように指定しましょう。

Network設定

M3-1-2-8 Confirm

Finishを押してください。

Confirm画面

M3-1-3 作成されたVMの確認

Datacenter -> pve16 の下にtestvmが作成されていることを確認して下さい。
さらに、Datacenter -> pve16 -> pj01 -> Membersを確認してtestvm(101)がpj01のメンバとして登録されていることを確認して下さい。

ここが通常のフラットに置かれたVMと異なる部分です。

VM作成確認2

M3-2 OSのインストール。

ミッション4では、シェルで1分以内に3つのVM作成を行っていただきますので、
ここは実施してもしなくとも構いません。
または、時間が余っている場合は、後でここに戻ってきて実施しても構いません。

OSのインストールを実行するには以下を実施します。
Datacenter -> pve16 -> VM114(testvm)を選択し、右側のStartボタンをクリックします。
そして、Consoleをクリックします。

VM作成確認3

既にProxmoxでVMにLinuxをインストールした経験がある方は以下だけ確認しても良いかもしれません。
インストールしてみる場合、重要なことは、IPv4アドレスを手動で割り当てることです。
DHCPではなく、Manualで静的IPアドレスを指定してください。
今回はPJ01の隔離ネットワークに作成したので、指定するIPアドレスは以下のように設定が必要です。

IPv4 method: Manual
Subnet: 172.31.16.0/24
Address: 172.31.16.1~172.31.16.253までのどれか
Gateway: 172.31.16.254   <----- 各隔離ネットワークともにGWアドレスは.254
# 割り当てたネットワークアドレスのブロードキャストアドレスとGWアドレスを除いた最後のアドレスになります。
# また、以降のミッションで172.31.16.200, 172.31.16.201を使用するので、これも使わないでください。
Name: Server: 1.1.1.1    <----- このミッションでは1.1.1.1を使用してください。

Ubuntu 24.04 ServerのIPアドレス割り当て画面
Ubuntuインストール手順1

インストール完了後のreboot時、インストール媒体を取り外す必要が出てきます。
Datacenter -> pve16 -> VM101(testvm) -> Hardware -> CD/DVD Driveをダブルクリックし、
Do Not use any mediaをクリックし媒体を取り出します。
Ubuntuインストール手順2

M3 ラップアップ

このミッションでは、以下を確認できました

—Mission3 Accomplished!—


Mission 4 隔離された環境間でVMが通信できない事を確認し完全隔離を体験しましょう。目安:20分

M4-1 このミッションについて

ここでは、VM自動プロビジョニングシェルを実行し、以下3つのVMを自動構築します。

Proxmox shellを表示してください。
Proxmox shellはMission2-2で開いていました。閉じてしまった方は以下を参考にしてください。

参考:Proxmoxコンソールへの接続方法。
https://172.16.21.1:8006
User name:root
Password:(メール「デモ環境の準備が完了しました」で送られたproxmox root passwordを使用してください)
Realm:Linux PAM standard authentication

ログインしたら、左のtreeから
Datacenter -> pve16 を選択
右側情報の”>_ Shell”をクリックしてください。Proxmoxコンソールが開きます。

M4-2 このミッションに必要なVMを3つを自動構築します。

以下のコマンドを投入しVM3つを自動構築しましょう。 約1分程度で3つのVM構築が完了します。

cd /root/msl-setup-pro-1.4.5_corporate/
./demo_create_vm11.sh
./demo_create_vm12.sh
./demo_create_vm2.sh

この自動VM構築シェルは製品には付属しておりません。

M4-3 作成されたVMの確認

Datacenter -> pve16 の下に以下の3つのVMが作成されていることを確認して下さい。

さらに、Datacenter -> pve16 -> pj01 -> Membersを確認して以下のVMが pj01のメンバとして登録されていることを確認して下さい。

VM一覧確認

Datacenter -> pve16 -> pj02 -> Membersも確認して以下のVMが pj02のメンバとして登録されていることを確認して下さい。

ここが通常のフラットに置かれたVMと異なる部分です。 それぞれのVMがpj01という隔離環境とpj02という隔離完了に配置されている事が確認できます。

Members確認

M4-4 VM1から疎通確認を実施

Datacenter -> pve16 -> 1000(demo-vm11)をダブルクリックで、VMのコンソールが 開きます。開いたら、以下のクレデンシャルを使用してログインしてください。
User:ubuntu
Password:zelogx

ログインが完了したら、以下のコマンドを投入し同じプロジェクトに属するVM12に通信できている ことを確認します。

ping 172.31.16.201       #<----同じPJに属するVM12のアドレスです。
# 以下のように表示されたら通信できています。
PING 172.31.16.201 (172.31.16.201) 56(84) bytes of data.
64 bytes from 172.31.16.201: icmp_seq=1 ttl=64 time=0.249 ms
64 bytes from 172.31.16.201: icmp_seq=2 ttl=64 time=0.218 ms
64 bytes from 172.31.16.201: icmp_seq=3 ttl=64 time=0.201 ms
64 bytes from 172.31.16.201: icmp_seq=4 ttl=64 time=0.087 ms
# <CTRL+C>で停止

通信できている事を確認できましたか。 sshなどで、確認してみても構いません。また、詳しい方はarpテーブルを見てみるのも良いかもしれません。

次は以下のコマンドを投入し別PJに属するVM2に通信できないことを確認します。

ping 172.31.17.200       #<----同じPJに属するVM12のアドレスです。
# 以下のように表示されて止まったら、通信できていません。
PING 172.31.17.200 (172.31.17.200) 56(84) bytes of data.
# <CTRL+C>で停止

通信できない事を確認できましたか。

同様に、以下のコマンドを投入し同じPJに属するGWに通信できている ことを確認します。

ping 172.31.16.254       #<----同じPJに属するGWのアドレスです。
# 以下のように表示されたら通信できています。
PING 172.31.16.254 (172.31.16.254) 56(84) bytes of data.
64 bytes from 172.31.16.254: icmp_seq=1 ttl=64 time=0.249 ms
64 bytes from 172.31.16.254: icmp_seq=2 ttl=64 time=0.218 ms
64 bytes from 172.31.16.254: icmp_seq=3 ttl=64 time=0.201 ms
64 bytes from 172.31.16.254: icmp_seq=4 ttl=64 time=0.087 ms
# <CTRL+C>で停止

通信できている事を確認できましたか。

VM11,VM12,VM2どれも同じクレデンシャルでログイン可能です。 時間があったら、逆向きのpingでの通信確認、FirewallなどがVMで起動してない事 などお好きにご確認ください。

M4 ラップアップ

このミッションでは、以下を確認できました

—Mission4 Accomplished!—


Mission 5 Proxmox セルフケアダッシュボードの体験。目安:20分

Proxmoxダッシュボードはそれぞれの隔離されたネットワーク内から。開くことが出来ます それぞれの隔離環境上のアクセスURLは以下の通りです。
なお、現在あなたはMainLanに接続されているため、全てのダッシュボードにアクセスが可能です。

M2-2の最後に表示されたユーザ名、パスワードを使ってpj01にログインしてみましょう。

セルフケアダッシュボードログイン

ログインしたら以下を確認して下さい。
vmbr0上に作られたプロジェクト共有のVMであるPritunl VM(VMID:113)は、この画面には表示されていません。テナントpj01のVMではないからです。
そしてMission4でpj01上に作成したVMだけが見えています。

pj01Admin view
このユーザはここに表示されたVMに対してだけ、起動、停止、スナップショット作成、バックアップ等の操作が可能です。 つまりこのユーザは、他テナントのVMを触る事が出来ない。PJ01に属しているVMしか操作することが出来ないという事です。

同様に今度はpj02にログインしてみましょう。まずはログアウトします。
logout

User name:pj02Admin
Password:<M2-2で表示されたパスワード>
Realm: “Proxmox VE authentication server” <----- 注意

pj02Admin view
Mission4でpj02上に作成したVMだけが見えています。

また、各VMを右クリックすれば、shutdown操作や、起動操作、スナップショット作成、バックアップ作成などが可能である事が判るともいます。
更に、各隔離環境の中にVMを更に作成、削除する事も可能です。

M5 ラップアップ

このミッションでは、以下を確認できました

Mission 6 - VM整理ミッション(目安:30分)

本デモでは、以下のVMが現在すべて vmbr0 上に接続された状態になっています。
これらのVMを各テナントへ割り当て、ネットワーク構成を整理してみましょう。

これらのVMには実際のOSはインストールされていません。

100 (pj1-haproxy-vm1)
101 (pj1-web-server)
102 (pj2-web-server)
103 (pj1-db-server1)
104 (pj2-db-server)
105 (pj3-ollama)
106 (pj1-bi-server1)
107 (pj2-staging-web-server)
108 (pj2-staging-db-server)
109 (pj3-alpaca)
110 (pj3-langchain)
111 (squid-proxy-common)
112 (bind-dns-common)

既存のVMをテナントへ割り当てるには、以下の操作を行います。

本デモではVMにOSが割り当てられていないため、IPアドレスの変更は出来ませんが、実際のVMでは更にIPアドレス、サブネット、GWアドレスの変更などが必要になります。

これにより、公開したいVMだけを対象テナントへ収容し、他の無関係なVMを見えない状態にできます。
結果として、他社や他チームへも安心して公開できる構成になります。


Mission accomplished! これで、デモは完了しました。 最後にラップアップをしましょう。 あなたは今回のミッションで以下を確認しました。

  1. VPNユーザがどのようにしてVPNサーバに接続するのか。
  2. MSL Setupの実際のインストールを体験。
  3. Pritunlの初期セットアップ
  4. VPNユーザの管理の容易さ。(OpenVPN、WireguardでのCLIでのプロファイル管理はもう必要ありません)
  5. 各VPNユーザのVPNプロファイルのダウンロード方法の容易さ。
  6. 各隔離環境上へのVM構築方法の容易さ。
  7. セルフケアポータルで、各隔離環境上のVMを管理する方法。

お疲れさまでした。VPNは切断して構いません。
また、VPNプロファイルもミッション時間終了時にサーバ上から自動削除されるので、クライアントから削除して構いません。
なお、本デモにおいてフィードバックを頂けると嬉しいです。
フィードバックは[email protected]にメールで送信してください。