Proxmox Node Front Page

crankshaft

New Member
Mar 8, 2023
2
1
3
I thought that I would add a menu to the proxmox node management page so that I could view the front page / web console of the node that is running on it.

This is early work and I have only been using it for a couple of days, but most seem to work.

I do have a problem with esphome websockets that is yet to be resolved but others appear to be working.

This inserts an iframe into the working panel on the right and uses nginx reverse proxy to display the pages in the iframe.

In order to get it to work I had to override the default CORS headers so this might introduce a security risk, particularly if your server is web facing.

I would not recommend using this if your proxmox host is web facing and, of course you use it entirely at your own risk.

to install:

Code:
git clone https://gist.github.com/1602c3b520d4595a41df59f8673d019c.git pve-fp
cd pve-fp;
chmod +x proxmox-frontpage.sh;
./proxmox-frontpage.sh;

basically here's what it does:
  1. Installs nginx
  2. creates nginx reverse proxy configs in /etc/nginx/snippets and /etc/nginx/conf.d
  3. copies a javascript file frontpage.js to the /usr/share/pve-manager/js folder
  4. appends the <script> source to /usr/share/pve-manager/index.html.tpl for the file above js file.
After installation, proxmox will be available on port 80.

You should see a new menu "Front Page" appear in the menu for each Node.

In order to activate the front page for a node you will need to add a new entry to nginx/conf.d like this:

Code:
## /etc/nginx/conf.d/8101_plex.conf

server {
  include snippets/pveprox.conf;
  listen 8101 ssl;
  location / {
    proxy_pass http://plex.local:32400/;
  }
}

The file name is not important, after adding the entry you can test it with nginx -t and restart nginx with systemctl restart nginx

USE OF THIS IS ENTIRELY AT YOUR OWN RISK

If there are any serious security concerns raised then I will delete this thread.


pve-fp-1.png
 
Last edited:
  • Like
Reactions: Lukas Wagner
You will need to install git: apt update && apt -y install git

You may need to edit the nginx entries in /etc/nginx/conf.d to match your local server name & local domain name:

Code:
# /etc/nginx/conf.d/proxmox.conf

upstream proxmox {
    server proxmox.local;
  }

for example, you proxmox hostname might be pve and your local domain local in which case it would be:

Code:
upstream proxmox {
    server pve.local;
  }

I will improve the installer to prompt for the hostname and change it accordingly.
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!