Configurare il firewall locale

In questo argomento è illustrato come configurare il firewall nel computer sul quale esegui Tableau Server.

Per proteggere Tableau Server nelle distribuzioni a nodo singolo e multi-nodo è necessario abilitare un firewall locale sul sistema operativo. In un’installazione distribuita (multinodo) di Tableau Server, la comunicazione tra nodi non avviene in modo sicuro. Sui computer che ospitano Tableau Server è pertanto necessario abilitare i firewall.

Consigliamo configurare il firewall in modo che solo due porte siano accessibili al traffico esterno: la porta gateway e la porta tabadmincontroller. Per impostazione predefinita, queste porte sono rispettivamente 80 e 8850. Inoltre, se stai utilizzando una versione distribuita, dovrai aprire l’intervallo di porte 27000-27009 in modo che la gestione licenze possa comunicare tra i nodi.

La porta gateway è utilizzata per la connessione HTTP a Tableau Server. Consigliamo di utilizzare SSL per la porta gateway. Se utilizzerai SSL, la porta dovrà essere 443, perché Tableau Server non supporta altre porte per SSL. Nelle procedure riportate di seguito viene descritto come configurare il firewall per la porta gateway. Configura il gateway di Tableau Server (Configurare le impostazioni iniziali dei nodi) in modo che corrisponda alla porta impostata qui.

Negli esempi seguenti viene descritto come configurare il firewall nelle distribuzioni singole e multi-nodo di Tableau Server in esecuzione sulle distribuzioni RHEL/CentOS. Gli esempi utilizzano Firewalld, ovvero il firewall predefinito di CentOS.

Configurazione del singolo nodo

  1. Apri una shell bash ed esegui il seguente comando TSM per recuperare il numero di porta della porta tabadmincontroller:

    tsm topology list-ports

    Prendi nota della porta tabadmincontroller. Per impostazione predefinita, questa porta è 8850.

  2. Avvia firewalld:

    sudo systemctl start firewalld

  3. Verifica che la zona predefinita sia una zona ad alta sicurezza, ad esempio public. In caso contrario, è consigliabile modificarla scegliendo una zona ad alta sicurezza.

    sudo firewall-cmd --get-default-zone

    sudo firewall-cmd --set-default-zone=public

  4. Aggiungi le porte per gateway e tabadmincontroller. Nell’esempio di seguito vengono utilizzate le porte predefinite (80 e 8850).

    sudo firewall-cmd --permanent --add-port=80/tcp

    sudo firewall-cmd --permanent --add-port=8850/tcp

  5. Ricarica il firewall e verifica le impostazioni.

    sudo firewall-cmd --reload

    sudo firewall-cmd --list-all

Configurazione del cluster multi-nodo

Oltre ad abilitare le porte e configurare il firewall in un cluster multi-nodo, sono richiesti passaggi aggiuntivi per garantire che i nodi possano comunicare tra loro.

Prima di iniziare

Dovrai avere l’indirizzo IP per ogni nodo del cluster. L’esempio mostrato in seguito utilizza <node1IP> come variabile metasintattica per l’indirizzo IP del nodo iniziale, <node2IP> e <node3IP> come variabili metasintattiche per gli indirizzi IP dei due nodi aggiuntivi.

Passaggio 1: configura il nodo iniziale.

  1. Apri una shell bash ed esegui il seguente comando TSM per recuperare il numero di porta della porta tabadmincontroller:

    tsm topology list-ports

    Prendi nota della porta tabadmincontroller. Per impostazione predefinita, questa porta è 8850.

  2. Esegui i seguenti comandi per determinare l’intervallo di numeri di porta che TSM può selezionare in modo dinamico. Dovrai specificare questo intervallo più avanti in questa procedura. Annota l’intervallo di porte.

    tsm configuration get -k ports.range.min

    tsm configuration get -k ports.range.max

    Un intervallo tipico è da 8000 a 9000.

  3. Avvia firewalld:

    sudo systemctl start firewalld

  4. Verifica che la zona predefinita sia una zona ad alta sicurezza, ad esempio public. In caso contrario, è consigliabile modificarla scegliendo una zona ad alta sicurezza.

    firewall-cmd --get-default-zone

    sudo firewall-cmd --set-default-zone=public

  5. Aggiungi le porte per gateway e tabadmincontroller. Nell’esempio di seguito vengono utilizzate le porte predefinite (80 e 8850). Inoltre, devi aggiungere un intervallo di porte (27000-27010) per consentire alla gestione licenze di comunicare tra i nodi.

    sudo firewall-cmd --permanent --add-port=80/tcp

    sudo firewall-cmd --permanent --add-port=8850/tcp

    sudo firewall-cmd --permanent --add-port=27000-27010/tcp

  6. Configura il firewall per consentire tutto il traffico proveniente da altri nodi del cluster. Nell’opzione porte, specifica l’intervallo annotato nel passaggio 2. Esegui il comando per ciascun nodo aggiuntivo del cluster. Ad esempio:

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node2IP>/32 port port=8000-9000 protocol=tcp accept'

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node3IP>/32 port port=8000-9000 protocol=tcp accept'

  7. Ricarica il firewall e verifica le impostazioni.

    sudo firewall-cmd --reload

    firewall-cmd --list-all

Passaggio 2: configura i nodi aggiuntivi

Ogni nodo del cluster deve essere in grado di comunicare con il nodo iniziale e con gli altri nodi.

Esegui questa procedura per ogni nodo aggiuntivo del cluster. In questo esempio, il nodo con l’indirizzo IP <node2IP>, comunica con il nodo iniziale su<node1IP> e il terzo nodo su <node3IP>.

  1. Avvia firewalld:

    sudo systemctl start firewalld

  2. Verifica che la zona predefinita sia una zona ad alta sicurezza, ad esempio public. In caso contrario, è consigliabile modificarla scegliendo una zona ad alta sicurezza.

    firewall-cmd --get-default-zone

    sudo firewall-cmd --set-default-zone=public

  3. Configura il firewall per consentire a gateway e tabadmincontroller di accedere agli altri nodi del cluster. Ad esempio:

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node1IP>/32 port port=80 protocol=tcp accept'

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node1IP>/32 port port=8000-9000 protocol=tcp accept'

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node3IP>/32 port port=80 protocol=tcp accept'

    sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=<node3IP>/32 port port=8000-9000 protocol=tcp accept'

    In questo esempio, poiché la porta di tabadmincontroller (8850) è inclusa nell’intervallo di porte, non viene specificata esplicitamente in un comando.

  4. Ricarica il firewall e verifica le impostazioni.

    sudo firewall-cmd --reload

    firewall-cmd --list-all

Grazie per il tuo feedback.Il tuo feedback è stato inviato. Grazie!