Configurare i proxy per Tableau Server

Nella maggior parte delle imprese, Tableau Server deve comunicare con Internet. Tableau Server è stato progettato per operare in una rete interna protetta. Non configurare Tableau Server direttamente su Internet o in una DMZ. Al contrario, le comunicazioni tra la rete e Internet dovrebbero essere mediate da server proxy. I server proxy di inoltro mediano il traffico dall'interno della rete alle destinazioni su Internet. I server proxy inversi mediano il traffico da Internet a destinazioni all'interno della rete.

Destinatari dell'articolo

Questo articolo è destinato ai professionisti IT che hanno familiarità con soluzioni generali di rete e del proxy del gateway. L'articolo descrive come e quando Tableau richiede l'accesso a Internet e descrive come configurare la rete e Tableau per l'utilizzo dei proxy di inoltro e inversi per l'accesso da e a Internet. Sono disponibili molte soluzioni proxy di terze parti, pertanto alcuni dei contenuto dell'articolo sono necessariamente generici.

Prima di configurare un server proxy, consulta Comunicare con Internet.

Configurare un server proxy di inoltro

Per abilitare le comunicazioni da Tableau Server a Internet, distribuisci Tableau Server dietro un server proxy di inoltro. Quando Tableau Server deve accedere alla rete, non invia la richiesta direttamente a Internet. Invece, invia tale richiesta al proxy di inoltro, che a sua volta la inoltra. I proxy forward aiutano gli amministratori a gestire il traffico verso Internet per attività quali il bilanciamento del carico, il blocco dell'accesso ai siti, ecc.

Se utilizzi un proxy di inoltro, è necessario configurare i computer che eseguono Tableau Server all'interno della rete per inviare traffico al proxy di inoltro. Tableau Server non supporta l'autenticazione proxy manuale o pass-through.

Configurare Tableau Server su Linux per il funzionamento con un proxy di inoltro

È consigliabile configurare Tableau Server per l'utilizzo della soluzione proxy di inoltro come parte del processo di installazione. Nello specifico, configura Tableau Server quando esegui ./initialize-tsm come descritto in Installare e inizializzare TSM, oppure come parte di Installazione automatizzata di Tableau Server.

Nella procedura seguente viene descritto come creare un file di configurazione proxy di inoltro per Tableau Server su Linux.

Il file di configurazione è archiviato nella seguente directory:

~<unprivileged_user>/.config/systemd/tableau_server.conf.d

Per impostazione predefinita, Tableau Server crea l'utente senza privilegi, tableau. Di conseguenza, il percorso predefinito per la directory di configurazione è:

~tableau/.config/systemd/tableau_server.conf.d

Sia in questo argomento che nel file di configurazione riportato di seguito, il nome del file di configurazione proxy è definito come 20-proxy.conf. È possibile denominare questo file in base alla tua convenzione, ma deve utilizzare l'estensione .conf. systemd elaborerà i file memorizzati nella directory tableau_server.conf.d in ordine lessicale, in base al nome del file.

  1. Esegui il comando tsm stop.

  2. Avvia una sessione come utente senza privilegi. Per impostazione predefinita, tableau è l'utente senza privilegi creato da Tableau Server durante l'installazione. Esegui questo comando:

    sudo su -l tableau

  3. Crea o apri il file 20-proxy.conf nella directory tableau_server.conf.d. Se durante l'installazione è stato configurato il proxy di inoltro, allora il file 20-proxy.conf è già stato creato.

    • Crea il file. Esegui questo comando:

      touch ~tableau/.config/systemd/tableau_server.conf.d/20-proxy.conf

    • Apri il file 20-proxy.conf in un editor di testo.

  4. Copia il contenuto del file di configurazione del proxy nel file. Se stai modificando un file esistente, presta attenzione a non eliminare la configurazione. Il contenuto del file di configurazione del proxy include istruzioni su come impostare le configurazioni proxy di inoltro. Dopo aver modificato e salvato il file, vai al passaggio 5.

  5. Contenuto del file di configurazione del proxy
                                            
    # Always edit this file on Tableau Server as the unprivileged user. By default, tableau, is the unprivileged user created by Tableau Server during installation.
    # Set environment variables http_proxy and https_proxy to point to your proxy host.
    # For example, to set the proxy to example-host for ports 80 and 443, run the following commands:
    #
    http_proxy=http://example-host:80/
    https_proxy=http://example-host:443/
    #
    # Take care to use 'http' when you specify the URL for the https_proxy environmental variable.  
    # Do not specify the 'https' protocol for the value of  the https_proxy environmental variable.
    #                   
    # To bypass the proxy server, specify exceptions in the no_proxy variable. Use this variable if your proxy server does not route internal addresses. 
    # You must also add exceptions to this proxy configuration to guarantee that all communications within a local Tableau Server cluster (if you have one now or will have one later) do not route to the proxy server. 
    # Enter both the host name and the IP address for each computer. Additionally, include the cannonical host name (localhost) and IP address (127.0.0.1) for the local computer.
    # For example, to specify exceptions for a three-node cluster:
    #
    no_proxy="localhost,127.0.0.1,hostname1,hostname2,hostname3,IP1,IP2,IP3"
    #									
    # Where "hostname1" is the actual hostname of node 1, and "IP1" is the actual IP address of node 1, etc.
                                        
  6. Esci dalla shell Tableau. Esegui questo comando:

    exit

  7. Riavvia i servizi aziendali TSM. Esegui il seguente script:

    sudo /opt/tableau/tableau_server/packages/scripts.<version>/start-administrative-services

  8. Riavvia TSM.

    tsm restart

Strumento di segnalazione degli arresti anomali del server

Se la tua organizzazione utilizza un server proxy per la connessione a Internet, devi configurare lo strumento di segnalazione degli arresti anomali di Tableau Server per l'utilizzo del proxy. Anche se Tableau Server è già stato configurato per l'utilizzo di un proxy, è necessario configurare separatamente anche lo strumento di segnalazione degli arresti anomali del server. Per configurare il proxy per lo strumento di segnalazione degli arresti anomali del server, consulta Configurare lo strumento di segnalazione degli arresti anomali del server.

Il funzionamento di un proxy inverso con Tableau Server

Un proxy inverso è un server che riceve richieste da client esterni (Internet) e le inoltra a Tableau Server. Perché utilizzare un reverse proxy? La motivazione principale è la sicurezza. Un proxy inverso rende disponibile l'Admin Server per Internet senza dover esporre a Internet l'indirizzo IP singolo di tale server specifico. Un proxy inverso funge inoltre da dispositivo di autenticazione e pass-through, in modo che nessun dato venga archiviato in posizioni a cui possono accedere gli utenti esterni all'azienda. Questo requisito può essere importante per le organizzazioni che sono soggette a varie norme sulla privacy come PCI, HIPAA o SOX.

Il seguente diagramma illustra il percorso di comunicazione quando un client effettua una richiesta a Tableau Server, che è configurato per funzionare con un server reverse proxy.

  1. Un client esterno avvia una connessione a Tableau Server. Il client utilizza l'URL pubblico che è stato configurato per il server reverse proxy, come ad esempio https://tableau.example.com. Il client non sa che sta accedendo a un proxy inverso.

  2. Il proxy inverso esegue a sua volta il mapping della richiesta a una richiesta a Tableau Server. Il reverse proxy può essere configurato per autenticare il client (utilizzando SSL/TLS) come prerequisito per inoltrare la richiesta a Tableau Server.

  3. Tableau Server riceve la richiesta e invia la risposta al reverse proxy.

  4. Il reverse proxy rinvia il contenuto al client. Il client ha appena avuto un'interazione con Tableau Server e non ha modo di rilevare che la comunicazione è stata mediata dal reverse proxy.

Server ed SSL proxy

Per ottimizzare la sicurezza, dovresti configurare i server proxy in modo che utilizzino SSL per qualsiasi traffico esterno alla rete. Questo aiuta a garantire la privacy, l'integrità dei contenuti e l'autenticazione. A meno che non si siano implementate altre misure di sicurezza per proteggere il traffico tra il gateway Internet e Tableau Server, si consiglia di configurare SSL tra il proxy del gateway e Tableau Server. È possibile utilizzare certificati interni o autofirmati per crittografare il traffico tra Tableau Server e altri computer interni.

Accesso mobile

Tableau Server aggiunge un X-header a tutte le risposte HTTP per le sessioni di Tableau Mobile. Per impostazione predefinita, la maggior parte delle soluzioni proxy manterrà le X-header. Se la soluzione proxy non mantiene le X-header, dovrai configurare il server proxy per conservare l'intestazione seguente in tutte le risposte HTTP per le sessioni client mobile: X-Tableau: Tableau Server.

Se hai configurato l'autenticazione nel gateway del server proxy, allora il tuo server proxy deve rispondere alle richieste HTTP di Tableau Mobile con una risposta HTTP 302. 302 deve includere un reindirizzamento alla pagina di accesso dell'identity provider. Per visualizzare un diagramma che descrive la sequenza di autenticazione 302, consulta Tableau Mobile Authentication Sequence(Link opens in a new window) nella community di Tableau.

Proxy inverso e autenticazione utente

Tableau Server eseguirà sempre l'autenticazione degli utenti. Ciò significa che, anche se stai autenticando connessioni in ingresso al gateway per l'organizzazione, Tableau Server eseguirà sempre l'autenticazione dell'utente.

Non tutti i client tuttavia supportano l'autenticazione utente con un proxy inverso:

  • Per i browser Web supportati è possibile utilizzare SAML, OpenID Connect, Kerberos, Trusted Tickets o l'autenticazione manuale con un proxy inverso. È tuttavia consigliabile utilizzare uno scenario trasparente in cui le richieste utente non necessitano dell'autenticazione al gateway. Questo suggerimento non impedisce l'utilizzo di SSL per l'autenticazione a livello di client/sistema di server nel proxy del gateway, in effetti, consigliamo caldamente l'autenticazione SSL a livello di sistema.

  • Tableau Mobile supporta l'autenticazione SAML o manuale con un proxy inverso. La versione di iOS di Tableau Mobile supporta anche Kerberos con un proxy inverso. Si applica la stessa raccomandazione di cui sopra.

  • Tableau Desktop non supporta l'autenticazione con un proxy inverso. Per supportare l'accesso remoto con Tableau Desktop, utilizza una soluzione VPN o configura il proxy inverso per instradare il traffico da Tableau Desktop direttamente a Tableau Server per l'autenticazione.

Se l'organizzazione esegue l'autenticazione con Active Directory:

  • Active Directory con Abilita accesso automatico (SSPI) non è supportato con un proxy inverso.
  • È necessario configurare Tableau Server per il proxy inverso prima di configurare Tableau Server per Kerberos. Per maggiori informazioni, consulta Configurare Kerberos.

Configurare il server Tableau in modo che funzioni con un server reverse proxy

Prima di configurare Tableau Server, è necessario raccogliere le seguenti informazioni sulla configurazione del server proxy. Per configurare Tableau Server, utilizza il comando tsm configuration set. Le informazioni da raccogliere corrispondono alle opzioni necessarie quando esegui tsm.

La maggior parte delle opzioni di tsm seguenti viene utilizzata anche per configurare distribuzioni di Tableau Server che funzionano dietro un servizio di bilanciamento del carico. Per maggiori informazioni, consulta Aggiungere un bilanciamento del carico.

Voce Descrizione Opzione corrispondente di tsm configuration set
Indirizzo IP o CNAME

Per questa opzione è possibile immettere un indirizzo IP o un CNAME.

L'indirizzo IP pubblico o gli indirizzi del server proxy. L'indirizzo IP deve essere in formato IPv4, come ad esempio 203.0.113.0, e deve essere un IP statico.

Se non sei in grado di fornire un IP statico o se utilizzi proxy cloud o bilanciatori di carico esterni, puoi specificare il valore DNS CNAME (Canonical Name, nome canonico) che i client utilizzeranno per connettersi a Tableau Server. Per comunicare con Tableau Server, questo valore CNAME deve essere configurato sulla soluzione reverse proxy.

gateway.trusted
FQDN Il nome di dominio pienamente qualificato tramite il quale gli utenti si connettono a Tableau Server, come tableau.example.com. Tableau Server non supporta il cambio di contesto per questa opzione. Ad esempio, l'URL seguente non è supportato: example.com/tableau. gateway.public.host
Non-FQDN Qualsiasi nome di sottodominio per il server proxy. Nell'esempio di tableau.example.com, il nome del sottodominio è tableau. gateway.trusted_hosts
Alias Qualsiasi nome alternativo pubblico per il server proxy. Nella maggior parte dei casi, gli alias sono designati utilizzando i valori CNAME. Un esempio potrebbe essere un server proxy bigbox.example.com e le voci CNAME di ftp.example.com e www.example.com. gateway.trusted_hosts
Porte I numeri di porta per il traffico dal client al server proxy inverso.

gateway.public.port

Se utilizzi un'installazione distribuita di Tableau Server, esegui i comandi seguenti tsm nel nodo iniziale del cluster.

  1. Immetti il seguente comando per impostare l'FQDN che i client utilizzeranno per raggiungere Tableau Server attraverso il server proxy, dove name è l'FQDN:

    tsm configuration set -k gateway.public.host -v 'name'

    Ad esempio, se Tableau Server viene raggiunto immettendo https://tableau.example.com nel browser, immetti il seguente comando:

    tsm configuration set -k gateway.public.host -v 'tableau.example.com'

  2. Immetti il seguente comando per impostare l'indirizzo o il CNAME del server proxy, dove server_address è l'indirizzo IPv4 o il valore CNAME:

    tsm configuration set -k gateway.trusted -v 'server_ip_address'

    Se la tua organizzazione utilizza più server proxy, immetti più indirizzi IPv4, separandoli con delle virgole. Gli intervalli IP non sono supportati. Per migliorare l'avvio e il lancio di Tableau Server, riduci al minimo il numero di voci per gateway.trusted.

  3. Immetti il seguente comando per specificare nomi alternativi per il server proxy, come il nome di dominio pienamente qualificato, eventuali nomi di dominio non pienamente qualificati ed eventuali alias. Se ci sono più nomi, separali con una virgola.

    tsm configuration set -k gateway.trusted_hosts -v 'name1, name2, name3'

    Ad esempio:

    tsm configuration set -k gateway.trusted_hosts -v 'proxy1.example.com, proxy1, ftp.example.com, www.example.com'

  4. Se il server proxy utilizza SSL per comunicare con Internet, esegui il seguente comando, che segnala a Tableau che il server reverse proxy utilizza la porta 443 invece della porta 80:

    tsm configuration set -k gateway.public.port -v 443

    Nota: se il server proxy utilizza SSL per comunicare con Tableau Server, SSL deve essere configurato e abilitato su Tableau Server.

  5. Immetti il seguente comando per eseguire il commit della modifica di configurazione:

    tsm pending-changes apply

    Se le modifiche in sospeso richiedono il riavvio del server, il comando pending-changes apply visualizzerà un messaggio per segnalare che verrà eseguito un riavvio. Questo messaggio viene visualizzato anche se il server è stato arrestato, ma in questo caso il riavvio non viene eseguito. Puoi eliminare la richiesta usando l'opzione --ignore-prompt, ma questo non modifica il comportamento del riavvio. Se le modifiche non richiedono un riavvio, vengono applicate senza visualizzare alcun messaggio. Per ulteriori informazioni, consulta il paragrafo tsm pending-changes apply.

Configura il server reverse proxy in modo che funzioni con Tableau Server

Quando un client accede a Tableau Server tramite un proxy inverso, è necessario conservare intestazioni di messaggi specifiche (o aggiunte). In particolare, tutti i server proxy nella catena di messaggi devono essere rappresentati nelle impostazioni di gateway.trusted e gateway.trusted_hosts.

Nell'immagine seguente vengono illustrate le intestazioni di esempio per una catena di messaggi a hop singolo, in cui il server proxy comunica direttamente con Tableau Server:

Nell'immagine seguente vengono illustrate le intestazioni di esempio per una catena di messaggi a hop multiplo, in cui il messaggio attraversa due server proxy prima di connettersi a Tableau Server:

Nella tabella seguente vengono descritte le intestazioni e le modalità con cui sono correlate alle impostazioni di configurazione di Tableau Server:

Intestazioni Descrizione Impostazioni relative a Tableau Server
REMOTE_ADDR e X-FORWARDED-FOR (XFF) Tableau Server richiede queste intestazioni per determinare l'indirizzo IP di origine per le richieste. L'intestazione X-FORWARDED-FOR deve presentare la catena di indirizzi IP a Tableau Server nell'ordine in cui si sono verificate le connessioni. L'indirizzo IP impostato ingateway.trusted deve corrispondere all'IP presentato in REMOTE_ADDR. Se hai inviato indirizzi multipli in gateway.trusted, uno di questi deve corrispondere all'IP presentato in REMOTE_ADDR.
HOST e X-FORWARDED HOST (XFH) Queste intestazioni sono utilizzate per generare link assoluti a Tableau Server quando risponde al client. L'intestazione X-FORWARDED-HOST deve presentare i nomi di host a Tableau Server nell'ordine in cui si sono verificate le connessioni. I nomi host presentati nell'intestazione X-FORWARDED-HOST devono essere inclusi nei nomi host specificati in gateway.trusted_hosts.
X-FORWARDED-PROTO (XFP) Questa intestazione è necessaria se SSL è abilitato per il traffico dal client al proxy, ma non per il traffico proveniente dal proxy a Tableau Server.

Le intestazioni X-FORWARDED-PROTO sono importanti per gli scenari in cui HTTP o HTTPS non vengono mantenuti lungo ogni hop della route del messaggio. Ad esempio, se il reverse proxy necessita di SSL per le richieste esterne, ma il traffico tra il reverse proxy e Tableau Server non è configurato per utilizzare SSL, sono necessarie delle intestazioni X-FORWARDED-PROTO. Alcune soluzioni proxy aggiungono le intestazioni X-FORWARDED-PROTO automaticamente, mentre altre no. Infine, a seconda della soluzione proxy, potrebbe essere necessario configurare il port forwarding per tradurre la richiesta dalla porta 443 alla porta 80.

Articolo di KB correlato: Errore "Impossibile accedere" e "Nome utente o password non validi" con SAML dopo l'aggiornamento(Link opens in a new window).

La configurazione delle porte sul proxy inverso (connessioni in ingresso dal client e connessioni in uscita a Tableau Server) deve essere specificata nel parametro corrispondente: gateway.public.port, che corrisponde alla porta utilizzata dai client per connettersi al proxy.

Se il server proxy utilizza SSL per comunicare con Tableau Server, SSL deve essere configurato e abilitato su Tableau Server.

Convalida della configurazione del proxy inverso

Per convalidare la configurazione del proxy inverso, pubblica le cartelle di lavoro e le origini dati utilizzando il Web authoring di Tableau Server o Tableau Desktop. Se sei connesso con un browser Web a Tableau Server da Internet, verifica di utilizzare un browser consigliato(Link opens in a new window). Pubblicare e visualizzare le cartelle di lavoro che utilizzano origini dati esistenti oltre a un'origine dati che hai pubblicato. Utilizza i collegamenti seguenti per acquisire familiarità con Tableau Server come utente finale.

Attività Documentazione
Panoramica di Web authoring. Utilizzare Tableau sul Web(Link opens in a new window)
Accedi a Tableau Server da Tableau Desktop o da un browser Web. Accedere a Tableau Server o Tableau Online(Link opens in a new window)
Pubblica una cartella di lavoro su Tableau Server. Pubblicare una cartella di lavoro(Link opens in a new window)
Pubblica un'origine dati. Pubblicare un'origine dati(Link opens in a new window)
Apri una cartella di lavoro da Tableau Server. Aprire le cartelle di lavoro dal server(Link opens in a new window)
Disconnettiti dal server (con Desktop). Accedere a Tableau Server o Tableau Online(Link opens in a new window)
Scarica la cartella di lavoro da un browser Web. Scaricare le cartelle di lavoro(Link opens in a new window)
Verifica che tabcmd funzioni (da un client non-server). tabcmd

Argomenti correlati

Grazie per il tuo feedback. Si è verificato un errore durante l'invio del feedback. Riprova o scrivici.