VNC access from external network

horizn

Well-Known Member
Aug 21, 2017
34
2
46
44
Hi,
I have working Windows 10 VM, and I am able to access GUI using Console/noVNC. However, I have configured reverse proxy on Apache (with limited IPs allowed) to access Proxmox VMs remotely. Unfortunately I can't access Console/noVNC when I am outside of local network, which I understand is because VM has local IP address only. Is there any option to pass the traffic?

This is my Apache config:

Code:
<IfModule mod_ssl.c>                                                                                                                                
<Virtualhost *:80>                                                                                                                                      
        ServerName gdynia.domain.com                                                                                                      
        Redirect permanent / https://gdynia.domain.com/                                                                            
        LogLevel warn                                                                                                                                   
        SetEnvIf Remote_Addr "::1" dontlog                                                                                                  
        CustomLog "/var/log/apache2/gdynia.domain.com_custom.log" combined                                      
        ErrorLog "/var/log/apache2/gdynia.domain.com_error.log"                                                            
</Virtualhost>                                                                                                                                             
                                                                                                   
<Virtualhost *:443>                                                                                                                                   
        ServerName gdynia.domain.com
        SSLEngine On
        SSLProxyEngine On
        SSLProxyVerify none

        SSLProxyCheckPeerCN     off
        SSLProxyCheckPeerName   off
        SSLProxyCheckPeerExpire off

        SSLCertificateFile      /etc/letsencrypt/live/gdynia.domain.com/fullchain.pem
        SSLCertificateKeyFile   /etc/letsencrypt/live/gdynia.domain.com/privkey.pem

        Header always set Strict-Transport-Security "max-age=15768000"

        <Proxy "*">
                Require all denied
                Require ip 9.10.11.12/32
                Require ip 5.6.7.8/24
                Require ip 1.2.3.4/32
        </Proxy>

        ProxyRequests off
        ProxyPreserveHost on
        RequestHeader unset Accept-Encoding

        ProxyPass / https://192.168.100.1:8006/ connectiontimeout=5 timeout=300 retry=0
        ProxyPassReverse        /  https://192.168.100.1:8006/

        # Websocket
        ProxyPass / wss://192.168.100.1:8006/ retry=0
        ProxyPassReverse / wss://192.168.100.1:8006/

        LogLevel warn
        SetEnvIf Remote_Addr "::1" dontlog
        CustomLog "/var/log/apache2/gdynia.domain.com_custom.log" combined
        ErrorLog "/var/log/apache2/gdynia.domain.com_error.log"

</Virtualhost>
</IfModule>

SSLProtocol                             all -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite                          ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256
SSLHonorCipherOrder                     on
SSLCompression                          off
SSLSessionTickets                       off

SSLUseStapling                          on
SSLStaplingResponderTimeout             5
SSLStaplingReturnResponderErrors        off
SSLStaplingCache                        shmcb:/var/run/ocsp(128000)
 
Last edited:
Hi,
I have working Windows 10 VM, and I am able to access GUI using Console/noVNC. However, I have configured reverse proxy on Apache (with limited IPs allowed) to access Proxmox VMs remotely. Unfortunately I can't access Console/noVNC when I am outside of local network, which I understand is because VM has local IP address only. Is there any option to pass the traffic?

This is my Apache config:

I have configured the same for Nginx, as explained here:
https://pve.proxmox.com/wiki/Web_Interface_Via_Nginx_Proxy
and here:
https://forum.proxmox.com/threads/apache-proxypass-proxmox-webui-novnc-websockets.21050/

Now I am able to connect, but I am getting blank screen instead like others. Is there anyone who can share or confirm it is working with reverse proxy?
 

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!