LoginSignup
15
11

More than 1 year has passed since last update.

proxmoxのWEB GUIをCloudflareを使って外からアクセスできるようにする

Posted at

経緯

proxmoxというサーバー仮想化ソフトウェアがある。
自宅でAWSのEC2のように仮想マシンが建てれて便利なのだが、管理画面に外からアクセスするのが大変という問題がある。
自宅でアクセスする際もhttps://サーバーのip:8006にアクセスする必要があり、分かりにくいのとオラオラ証明書なのでどうにかしたかった。
そこでCloudflare Tunnelsとnginx、Cloudflare Accessを使って自宅の外にいるときもアクセスできるようにした。

nginxのセットアップ

proxmoxは既に構築されているものとする。
proxmoxはHTTPSを無効化することが出来ないため、8006番で待ち受けているproxmoxのWEB GUIをnginxを使って80番ポートにリバースプロキシを設定する。

proxmoxはDebianベースのため、aptでnginxをインストールする。
/etc/nginx/nginx.confを開き、http {の中に以下を追加する

server {
        listen 80;
        server_name _;
        location / {
                proxy_set_header Host $http_host;
                proxy_pass https://localhost:8006;
        }
}

設定を確認し問題なければ反映する

nginx -t
nginx -s reload

Cloudflare Tunnelsの設定

80番のWEB GUIをCloudflare Tunnelsで拾う。
公式ドキュメントに従ってDashbordのAccess→Tunnelsから作成する。

基本的にはドキュメント通りで良いが、ServiceTypeHTTPURLlocalhost:80とする。

Cloudflare Accessの設定

このままではだれでもアクセスできるため、Cloudflare Accessで認証を追加する。
DashbordのAccess
Applications
Add an applicationからApplicationsを追加する。
その後Tunnelsから対象のTunnelを選択しConfigure
Public hostname
→対象のhostnameを選択しConfigure
Additional application settings
Access
Protect with Accessを有効にし、先ほど作成したApplicationを選択する

おわり

これで認証付きのprxmox WEB GUIが認証付きで外からアクセスできるようになっているはずだ。

15
11
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
11