I have NGINX working as a reverse-proxy for the web-based GUI and for VNC, but I am having trouble getting SPICE consoles to work.
Internally, I have a reverse-proxy set up directly on the PVE host and it's fine: SPICE works and so does the web GUI. For this, however, I did not have to set up a separate stream, and SPICE worked right away. Externally, I have a similar setup, but SPICE does not work. Below is my NGINX config for the external server:
on the external host, I do see a connection attempt in the NGINX access.log, which I do not see in the internal NGINX host. This is what the line looks like:
The connection is dropped immediately and virt-viewer states "Unable to connect to the graphic server filename.vv"
Any help with figuring out where the issue is would be appreciated. Thank you.
Internally, I have a reverse-proxy set up directly on the PVE host and it's fine: SPICE works and so does the web GUI. For this, however, I did not have to set up a separate stream, and SPICE worked right away. Externally, I have a similar setup, but SPICE does not work. Below is my NGINX config for the external server:
Code:
upstream proxmox {
server server1:8006;
}
upstream spice {
server server1:3128;
}
server {
listen 80;
server_name my.domain.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name my.domain.com;
ssl on;
ssl_certificate /etc/letsencrypt/live/my.domain.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/my.domain.com/privkey.pem; # managed by Certbot
proxy_redirect off;
location / {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass https://proxmox;
proxy_buffering off;
client_max_body_size 0;
proxy_connect_timeout 3600s;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
send_timeout 3600s;
}
}
server {
listen 3128;
server_name my.domain.com;
location / {
proxy_pass https://spice;
proxy_buffering off;
client_max_body_size 0;
proxy_connect_timeout 3600s;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
send_timeout 3600s;
}
}
on the external host, I do see a connection attempt in the NGINX access.log, which I do not see in the internal NGINX host. This is what the line looks like:
Code:
"CONNECT pvespiceproxy:609c40d6:212:server1::0feeb24e84a57ba7418452bb4233f729c6319012:61033 HTTP/1.0" 400 182 "-" "-"
The connection is dropped immediately and virt-viewer states "Unable to connect to the graphic server filename.vv"
Any help with figuring out where the issue is would be appreciated. Thank you.