Configurare i proxy attendibili
Negli ambienti che richiedono un livello di sicurezza elevato, la configurazione dei proxy attendibili è obbligatoria.
Quando Cyberwatch si trova dietro uno o più proxy (come un load balancer, un reverse proxy o un proxy di sicurezza), è necessario configurare la variabile TRUSTED_PROXIES per indicare a Cyberwatch quali proxy sono attendibili. Questa configurazione consente a Cyberwatch di ottenere gli indirizzi IP corretti dei client nelle sessioni e nei log, utilizzando le intestazioni HTTP appropriate (come X-Forwarded-For) anziché l’indirizzo IP del proxy.
Per determinare l’indirizzo IP reale del client verranno utilizzati solo gli indirizzi IP dei proxy attendibili. Assicurarsi di includere solo i proxy controllati e considerati affidabili.
Configurazione
Con Docker Swarm e Podman
Aggiungere la variabile d’ambiente
TRUSTED_PROXIESnel file/etc/cyberwatch/containers.env:TRUSTED_PROXIES=10.0.0.1,10.0.0.2È possibile specificare:
- Un solo indirizzo IP:
TRUSTED_PROXIES=10.0.0.1 - Più indirizzi IP separati da virgole:
TRUSTED_PROXIES=10.0.0.1,10.0.0.2,192.168.1.100 - Una o più reti CIDR:
TRUSTED_PROXIES=10.0.0.0/24
- Un solo indirizzo IP:
Riavviare Cyberwatch:
sudo cyberwatch restart
Con Kubernetes
Aggiungere la variabile d’ambiente
TRUSTED_PROXIESinweb.envnel filevalues.yml:web: env: ## Trusted proxy IP addresses or CIDR ranges ## Allows Cyberwatch to correctly identify client IP addresses when behind proxies TRUSTED_PROXIES: "10.0.0.1,10.0.0.2"È possibile specificare:
- Un solo indirizzo IP:
TRUSTED_PROXIES: "10.0.0.1" - Più indirizzi IP separati da virgole:
TRUSTED_PROXIES: "10.0.0.1,10.0.0.2,192.168.1.100" - Una o più reti CIDR:
TRUSTED_PROXIES: "10.0.0.0/24"
- Un solo indirizzo IP:
Riavviare Cyberwatch seguendo la procedura descritta in Riavviare e aggiornare il chart Helm
Verifica
Dopo la configurazione, è possibile verificare che gli indirizzi IP vengano rilevati correttamente consultando i log delle sessioni o controllando gli indirizzi IP registrati nell’interfaccia Cyberwatch.
Se la variabile TRUSTED_PROXIES contiene un valore non valido, l’applicazione non si avvia e i suoi log indicano il valore in questione.
Comportamento predefinito
Se la variabile TRUSTED_PROXIES non è definita, solo l’indirizzo 127.0.0.1 è considerato proxy attendibile. A partire dalla versione 15.7.2, gli indirizzi delle reti private elencate nella RFC 1918 non sono più considerati proxy attendibili per impostazione predefinita: se Cyberwatch si trova dietro un proxy non dichiarato, l’indirizzo IP registrato per i client è quello del proxy.
Il valore none produce lo stesso comportamento:
Per Docker Swarm:
TRUSTED_PROXIES=none
Per Kubernetes:
web:
env:
TRUSTED_PROXIES: "none"