Skip to content

LetsEncrypt Setup

Install nginx

Install nginx
apt install nginx -y

Remove Default Nginx Config

Remove Default Config
rm /etc/nginx/sites-enabled/default

Add proxmox.conf

add proxmox.conf
nano /etc/nginx/conf.d/proxmox.conf

Copy Contents

Need to Update for Server

Change pve00X to the correct server name.

nginx Config
upstream proxmox {
    server "pve00X.local.jonco.dev";
}

server {
    listen 80 default_server;
    listen [::]:80 default_server;
    rewrite ^(.*) https://$host$1 permanent;
}

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name _;
    ssl_certificate /etc/pve/local/pveproxy-ssl.pem;
    ssl_certificate_key /etc/pve/local/pveproxy-ssl.key;
    proxy_redirect off;
    location / {
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_pass https://localhost:8006;
        proxy_buffering off;
        client_max_body_size 0;
        proxy_connect_timeout  3600s;
        proxy_read_timeout  3600s;
        proxy_send_timeout  3600s;
        send_timeout  3600s;
    }
}

Test Nginx Config

Test Nginx
nginx -t 

Restart NGINX

Restart NGINX
systemctl restart nginx

Modify nginx.service

modify nginx.service
systemctl edit nginx.service

Copy Contents to nginx.service

copy into nginx.service
[Unit]
Requires=pve-cluster.service
After=pve-cluster.service