Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
暇に任せてProxmoxコンソール 作ってみました
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
karugamo
December 11, 2024
Programming
1.1k
2
Share
暇に任せてProxmoxコンソール 作ってみました
JPmoxs勉強会#5 LT2での登壇資料です。
karugamo
December 11, 2024
More Decks by karugamo
See All by karugamo
Proxmoxをまとめて管理できるコンソール作ってみました
karugamo
1
840
Other Decks in Programming
See All in Programming
ソースコード→AST→オペコード、の旅を覗いてみる
o0h
PRO
1
130
Spec-Driven Development with AI Agents (Workshop, May 2026)
antonarhipov
3
330
AIを導入する前にやるべきこと
negima
2
340
WebAssembly を読み込むベストプラクティス 2026年春版 / Best Practices for Loading WebAssembly (Spring 2026)
petamoriken
5
1.1k
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
360
Import assertionsが消えた日~ECMAScriptの仕様はどう決まり、なぜ覆るのか~
bicstone
2
180
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
480
JAWS-UG横浜 #100 祝・第100回スペシャルAWS は VPC レスの時代へ
maroon1st
0
220
2026年のソフトウェア開発を考える(2026/05版) / Software Engineering Scrum Fest Niigata 2026 Edition
twada
PRO
22
11k
クラウドネイティブなエンジニアに向ける Raycastの魅力と実際の活用事例
nealle
2
250
ふにゃっとしない名前の付け方 〜哲学で茹で上げる、コシのあるソフトウェア設計〜
shimomura
0
110
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
1.6k
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
180
Designing for Timeless Needs
cassininazir
0
220
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
920
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
350
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
250
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
180
Designing Experiences People Love
moore
143
24k
AI: The stuff that nobody shows you
jnunemaker
PRO
6
630
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
380
Transcript
暇に任せてコンソール 作ってみました カルガモ JPmoxs勉強会#5 LT2
自己紹介 名前:カルガモ 情報系の大学生(3回生) LT初登壇 X(旧Twitter):@karugamosenpai Qiita:@karugamosenpai 1
きっかけ 友人にサーバを布教したいけど... 難しすぎない??? 2
求める要件 ユーザ目線 • ユーザから見てとにかく簡単・シンプル • 複雑なネットワーク設定などが不要 →DHCPなど必須 • WordPressの構築程度ができる環境 開発(自分)目線
• フロントからバックエンドまで広く浅く • 比較的モダンなものを活用 • 外部のセキュリティサービスを使用 • できるだけタダで • いい勉強教材にする 3
ということで作ってみました https://www.ouchi.cloud/ 以下からデモを実際に 試していただけます 4
構成 コンソール • Cloudflareの無料枠の範囲 • ProxmoxAPIをFastAPIでリレー • GoogleアカウントのOAuth2を使用 5
構成 Proxmox • 各ノードにpfSenseを配置 • ユーザごとにvmbr上のVLANを割り当て 6
機能紹介 VM作成 • FastAPI経由で各ノードでcloud-initで 作成 • CloudflareにもVNCのURLを登録 (認証情報はユーザ登録時に実施) 7
機能紹介 VNC • RDP通信としてCloudflaredのVNCで トンネリング /etc/pve/qemu-server/<vmid>.conf args: -vnc 0.0.0.0:77 8
VNCの動作 • サイトにiframeで埋め込み • CloudflareのVNCコンソールはCSPで iframeの埋め込みできない • Cloudflareの変換ルールでレスポンス ヘッダのContent-Security-Policyを変換 9
機能紹介 ポート • http通信をpfSenseで1:1NAT 宅内のIP VLAN内のアドレス • VMはDHCPでIP払出し • ポート用に宅内IPと1:1NAT
• QEMU-Guest-agentでアドレスを管理 10
今後の展望 SSH • httpと同じ要領で実装できそう... • CloudflareのSSHクライアントもある • 鍵の管理をどうするのか? 11
今後の展望 VM間通信 • 現状同じノード内のみで可能 • SDNにタグ付き通信を流せない? • 各ノードごとのpfSenseが不要? 12
まとめ • Proxmoxは慣れたら使いやすいが,初見では難しい... • ProxmoxのAPIを外部サービスから叩くのは難しい気がする • ネットワーク周りをもう少しシンプルにしたい • Cloudflareの無料プランでもProxmoxをもっと便利にできそう 人数増えてきたら有料プランかな...
13
ありがとうございました! 14