Filtri Menu 0 0.00

Configurazione Reverse Proxy Apache per KVM Cockpit

Configurazione Reverse Proxy Apache per KVM Cockpit

In questo articolo, vedremo come configurare un reverse proxy su Apache per accedere a Cockpit tramite HTTPS, con il supporto per WebSocket. Questa configurazione è utile per migliorare la sicurezza e l’accessibilità quando si utilizza Cockpit su una rete interna.

Prerequisiti

  • Un server con Apache installato e configurato per supportare HTTPS.
  • Cockpit installato su un server con un indirizzo IP interno (es. 192.168.1.100).
  • Certificati SSL validi per Apache.

Configurazione di Apache come Reverse Proxy

Modifica il file di configurazione di Apache o crea un nuovo virtual host per configurare il reverse proxy per Cockpit. La configurazione è la seguente:

;
ServerName esempio.dominio.com

ProxyPreserveHost On

# Impostazioni SSL tra il client e Apache
SSLEngine on
SSLProxyEngine On
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLCertificateFile /path/to/certificates/cert.crt
SSLCertificateKeyFile /path/to/certificates/key.key
SSLCertificateChainFile /path/to/certificates/chain.crt
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
SSLHonorCipherOrder On
SSLCipherSuite HIGH:!aNULL:!MD5
Header always unset X-Frame-Options

# Configura il Proxy verso Cockpit usando HTTP e WebSocket
ProxyPass / https://192.168.1.100:9090/ upgrade=websocket
ProxyPassReverse / https://192.168.1.100:9090/
ProxyPass /ws/ wss://192.168.1.100:9090/ws/
ProxyPassReverse /ws/ wss://192.168.1.100:9090/ws/

# Inoltra gli header per HTTPS
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Host "esempio.dominio.com"
RequestHeader set X-Forwarded-SSL "on"

# Compressione delle risposte
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript


SetOutputFilter INFLATE;DEFLATE
Order deny,allow
Allow from all


Spiegazione della Configurazione

  • ProxyPreserveHost On: mantiene il nome host originale.
  • SSLEngine on e SSLProxyEngine On: abilitano il supporto SSL per le connessioni tra Apache e il client e tra Apache e Cockpit.
  • SSLProtocol e SSLCipherSuite: limitano i protocolli e le suite di cifratura per migliorare la sicurezza.
  • ProxyPass e ProxyPassReverse per la gestione delle connessioni WebSocket e HTTPS tra Apache e Cockpit.
  • Il supporto per X-Forwarded headers per informare Cockpit che la connessione avviene tramite HTTPS.

Riavvio di Apache

Una volta completata la configurazione, riavvia Apache per applicare le modifiche:

sudo systemctl restart apache2

Conclusione

Questa configurazione permette di accedere a Cockpit in modo sicuro tramite un reverse proxy Apache. Assicurati di verificare la configurazione e controllare i log per risolvere eventuali problemi di handshake TLS o di connessione WebSocket.

Condividi:

Iscriviti alla newsletter

Iscriviti alla nostra newsletter per ricevere offerte di sconto anticipate, aggiornamenti e informazioni sui nuovi prodotti.
Top