Puncte:0

apache2 vnc proxy la proxmox (cu aplicație php intermediară)

drapel mx

el are o aplicație php care are acces la proxmox și afișează consola vnc prin partajarea token-ului. acesta este pe un server apache2. Încercăm să trimitem cererile vnc în spatele apache, astfel încât utilizatorul final să nu aibă acces direct la proxmox. Problema bazată pe jurnalele că nu există un handler pentru apache:

AH01144: Niciun handler de protocol nu a fost valid pentru adresa URL /api2/json/nodes/server/qemu/vmid/vncwebsocket (schema „wss”). Dacă utilizați o versiune DSO a mod_proxy, asigurați-vă că submodulele proxy sunt incluse în configurație folosind LoadModule.

Problema mea este că modulul este încărcat și serverul a fost repornit:

root@server-01:~# apache2ctl -M
Module încărcate:
core_module (static)
so_module (static)
watchdog_module (static)
http_module (static)
log_config_module (static)
logio_module (static)
version_module (static) 
unixd_module (static)
access_compat_module (partajat)
alias_module (partajat)
auth_basic_module (partajat)
authn_core_module (partajat)
authn_file_module (partajat)
authz_core_module (partajat)
authz_host_module (partajat)
authz_user_module (partajat)
autoindex_module (partajat)
deflate_module (partajat)
dir_module (partajat)
dumpio_module (partajat)
env_module (partajat)
filter_module (partajat)
mime_module (partajat)
mpm_prefork_module (partajat)
negotiation_module (partajat)
php7_module (partajat)
proxy_module (partajat)
proxy_ajp_module (partajat)
proxy_balancer_module (partajat)
proxy_http_module (partajat)
proxy_wstunnel_module (partajat)
reqtimeout_module (partajat)
rewrite_module (partajat)
setenvif_module (partajat)
slotmem_shm_module (partajat)
socache_shmcb_module (partajat)
ssl_module (partajat)
status_module (partajat)

Implementarea se bazează pe următorul ghid: https://forum.proxmox.com/threads/working-novnc-with-reverse-proxy-on-5-1.43644/

configurația apache pentru proxy la proxmox este:

root@server01:~# cat /etc/apache2/sites-enabled/proxy-ssl.conf
<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
            ServerName app01-proxy
            ServerAdmin webmaster@localhost
            SSLProxyEngine activat
            LogLevel dumpio:trace7
            DumpIOInput activat
            DumpIOOutput activat
            <Locație />
                    ProxyPass https://proxmoxserver:8006/
                    ProxyPassReverse https://proxmoxserver:8006/
             </Locație>

            <LocationMatch ^/(api2/json/nodes/[^\/]+/[^\/]+/[^\/]+/vncwebsocket.*)$>
                    ProxyPass wss://proxmoxserver:8006/$1 retry=0
            </LocationMatch>

            <Locație /websockify>
                    ProxyPass ws://proxmoxserver:8006/
                    ProxyPassReverse ws://proxmoxserver:8006/
            </Locație>

            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combinat

            SSLEngine activat
            SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
            SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
            <FilesMatch "\.(cgi|shtml|phtml|php)$">
                            SSLOptions +StdEnvVars
            </FilesMatch>
            <Director /usr/lib/cgi-bin>
                            SSLOptions +StdEnvVars
            </Director>

    </VirtualHost>

iar cealaltă configurație pentru aplicația locală:

root@server-01:~# cat /etc/apache2/sites-enabled/console-ssl.conf
<IfModule mod_ssl.c>
    <VirtualHost _default_:443>
            ServerName app01
            ServerAdmin webmaster@localhost
            DocumentRoot /var/www/html/hyper-controller/public
<Directorul /var/www/html/hyper-controller/public>
        Opțiuni Indexuri FollowSymLinks MultiViews
        AllowOverride All
        Comanda permite, refuza
        permite de la toti
        Solicitați toate acordate
  </Director>
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combinat
            SSLEngine activat
            SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
            SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

            <FilesMatch "\.(cgi|shtml|phtml|php)$">
                            SSLOptions +StdEnvVars
            </FilesMatch>
            <Director /usr/lib/cgi-bin>
                            SSLOptions +StdEnvVars
            </Director>
php_flag log_errors activat
php_flag display_errors activat
php_value error_reporting 2147483647
php_value error_log /var/log/php.error.log
</VirtualHost>
</IfModule>

eroarea apărută la nivel de browser este: eroare

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.