すべての外部 HTTP トラフィックに対して SSL 暗号化通信を使用するように Tableau Server を構成できます。SSL を設定すると、Tableau Server へのアクセスのセキュリティを確保することができ、サーバーと Tableau クライアント (Tableau Desktop、REST API 分析拡張機能など) の間で渡される機密情報を確実に保護できます。このトピックでは、サーバーが SSL を使用するように構成する方法の手順が説明されています。まず、認証機関から証明書を入手し、この証明書ファイルを Tableau Server にインポートする必要があります。
相互 SSL 認証は Tableau Mobile ではサポートされていません。
SSL 証明書要件
Apache SSL 証明書を認証機関 (Verisign、Thawte、Comodo、GoDaddy など) から入手します。自社が発行する社内証明書も使用できます。SSL を同じドメイン内の多数のホスト名で使用できる、ワイルドカード証明書もサポートされています。
Tableau Server との双方向の外部通信を行うために SSL 証明書を入手する場合は、次のガイドラインおよび要件に従います。
-
証明書ファイルはすべて、拡張子
.crt
が付いた有効な PEM 暗号化 X509 証明書である必要があります。 -
SHA-2 (256 または 512 ビット) SSL 証明書を使用します。ほとんどのブラウザーでは SHA-1 証明書を提示するサーバーに接続できなくなっています。
-
証明書ファイルに加えて、対応する SSL 証明書キー ファイルも取得する必要があります。証明書キー ファイルは、有効な RSA または DSA 秘密キー ファイル (規則により拡張子
.key
を付加) である必要があります。キー ファイルをパスフレーズで保護することもできます。構成時に入力するパスフレーズが保存中に暗号化されます。ただし、SSL と SAML に同じ証明書を使用する場合は、パスフレーズで保護されていないキー ファイルを使用する必要があります。
-
SSL 証明書チェーン ファイル: 証明書チェーン ファイルは、Mac の Tableau Desktopと、Mac および Windows の Tableau Prep Builderに必要です。また、Tableau Server の証明書チェーンがモバイル デバイスの iOS または Android オペレーティング システムによって信頼されていない場合は、Tableau Mobile アプリのチェーン ファイルも必要です。
チェーン ファイルは、サーバー証明書の証明書チェーンを構成するすべての証明書を連結したものです。ファイル内のすべての証明書に PEM 暗号化 x509 証明書を指定し、ファイルには
.pem
ではなく.crt
拡張子を付ける必要があります。 -
複数のサブドメインがある場合、Tableau Server ではワイルドカード証明書もサポートされています。
-
クライアントが Tableau Server への接続に使用するドメイン、ホスト名、または IP アドレスが [サブジェクトの別名 (SAN)] フィールドに含まれていることを確認します。多くのクライアント (Tableau Prep、Chrome、Firefox ブラウザーなど) では、安全な接続を確立するために SAN フィールドに有効な値を入力する必要があります。
注: Tableau Server で SAML を使用したシングル サインオンを構成することを計画している場合には、SAML 要件のSAML での SSL 証明書およびキー ファイルの使用を参照し、SSL と SAML の両方で同一の証明書ファイルを使用するか判断してください。
クラスタの SSL を構成
Tableau Server クラスタを構成して SSL を使用することができます。最初のノードがゲートウェイ プロセスを実行する唯一のノードである場合 (既定で実行)、そのノードでのみ SSL を設定する必要があります。手順については、このトピックを参照してください。
複数ゲートウェイのある SSL
可用性の高い Tableau Server クラスタには、ロード バランサーが転送した複数のゲートウェイを含めることができます (詳細について)。このタイプのクラスタで SSL を構成する場合、次の方法があります。
-
SSL 用のロード バランサーを構成する: クライアント Web ブラウザーからロード バランサーへのトラフィックが暗号化されます。ロード バランサーから Tableau Server ゲートウェイ プロセスへのトラフィックは暗号化されません。ユーザーが Tableau Server で SSL 構成を行う必要はありません。この設定はすべてロード バランサーが行います。
-
Tableau Server で SSL を設定する。クライアント Web ブラウザーからロード バランサーへのトラフィック、およびロード バランサーから Tableau Server ゲートウェイ プロセスへのトラフィックが暗号化されます。詳細については、次のセクションに進んでください。
Tableau Server クラスター環境の追加構成情報
ゲートウェイプロセスを実行するすべての Tableau Server ノードで SSL を使用したいときは、以下の手順を実行します。
-
SSL パススルー用の外部ロード バランサーを構成します。
443 番以外のポートを使用する場合は、クライアントから標準以外のポートを切り離すように外部ロード バランサーを構成できます。このシナリオでは、443 番ポートで Tableau Server に接続するようにロード バランサーを構成します。サポートについては、ロード バランサーに提供されている文書を参照してください。
-
SSL 証明書がロード バランサーのホスト名に発行されていることを確認します。
-
初期 Tableau Server ノードの SSL を設定します。
-
相互 SSL を使用している場合は、SSL CA 証明書ファイルをアップロードします。
tsm authentication mutual-ssl <commands>
を参照してください。
構成プロセスの一部として、SSL 証明書とキー ファイルが各ノードに配布されます。
環境の準備
CA から証明書ファイルを取得するときに、それらを Tableau Server からアクセス可能な場所に保存し、証明書の .crt および .key ファイルの名前とそれらの保存場所を書き留めます。これらの情報は、SSL を有効化するときに Tableau Server に提供する必要があります。
Tableau Server での SSL の構成
最も精通している方法を使用します。
-
ブラウザーで TSM を開きます。
https://<tsm-computer-name>:8850詳細については、「Tableau Services Manager の Web UI へのサインイン」を参照してください。
-
[構成] タブで [セキュリティ] > [外部 SSL] を選択します。
注:既存の構成を更新または変更する場合は、[ リセット] をクリックして既存の設定をクリアしてから続行してください。
-
[外部 Web サーバーの SSL] で [SSL でサーバー通信を有効にする} を選択します。
-
証明書ファイルおよびキー ファイルをアップロードし、お使いの環境に必要な場合には、チェーン ファイルをアップロードして次のパスフレーズ キーを入力します。
Tableau Server を分散展開で実行している場合は、これらのファイルがクラスタ内の適切なノードのそれぞれに自動的に配布されます。
-
[保留中の変更を保存] をクリックします。
-
ページ上部の [変更を保留中] をクリックします。
-
[変更を適用して再起動] をクリックします。
証明書ファイルをローカル コンピューターにコピーし、以下のコマンドを実行します。
tsm security external-ssl enable --cert-file <path-to-file.crt> --key-file <path-to-file.key>
tsm pending-changes apply
tsm security external-ssl enable でコマンド リファレンスを参照して、external-ssl enable
の追加オプションを含めるかどうかを判断してください。Tableau は --protocols
オプションを含めることをお勧めします。
external-ssl enable command
は、.crt および .key ファイルから情報をインポートします。このコマンドを Tableau Server クラスター内の 1 つのノードで実行すると、他のゲートウェイ ノードにも情報が分配されます。
保留中の変更にサーバーの再起動が必要な場合は、pending-changes apply
コマンドの実行時に、再起動が行われることを知らせるメッセージが表示されます。このメッセージはサーバーが停止していても表示されますが、その場合には再起動は行われません。--ignore-prompt
オプションを使用してメッセージが表示されないようにできますが、そのようにしても再起動に関する動作が変わることはありません。変更に再起動が必要ない場合は、メッセージなしで変更が適用されます。詳細については、tsm pending-changes applyを参照してください。
ポート リダイレクトとロギング
SSL 用にサーバーを構成すると、非 SSL ポート (既定のポートは 80) に対する要求は受け入れられ、SSL ポート 443 へ自動的にリダイレクトされます。
注: Tableau Server では、ポート 443 のみがセキュア ポートとしてサポートされています。別のアプリケーションがポート 443 を使用しているコンピュータ上で Tableau Server を実行することはできません。
SSL エラーは次の場所に記録されます。検証や暗号化に関する問題をトラブルシューティングするには、このログを使用してください。
/var/opt/tableau/tableau_server/data/tabsvc/logs/httpd/error.log
SSL ポートのローカル ファイアウォールへの追加
ローカル ファイアウォールを実行している場合は、SSL ポートを Tableau Server 上のファイアウォールに追加する必要があります。以下の例は、RHEL/CentOS ディストリビューション上で稼働するファイアウォールの設定方法を説明しています。例では CentOS の既定ファイアウォールである Firewalld が使用されています。
-
Firewalld を起動します。
sudo systemctl start firewalld
-
SSL 用のポート 443 を追加します。
sudo firewall-cmd --permanent --add-port=443/tcp
-
ファイアウォールをリロードして、設定を検証します。
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
SSL 証明書の変更または更新
SSL を構成した後、証明書を定期的に更新しなければならないこともあります。場合によっては、IT 環境の運用上の変更に合わせて証明書の変更が必要になることもあります。いずれの場合も、TSM を使用して、外部 SSL 用に既に構成されている SSL 証明書を置き換える必要があります。
オペレーティング システムのファイル ディレクトリに新しい証明書を直接コピーしないでください。代わりに、TSM Web UI または tsm security external-ssl enable
コマンドを使用して証明書を追加すると、証明書ファイルが適切な証明書ストアにコピーされます。分散展開では、証明書はクラスター内のノード間でもコピーされます。
SSL 証明書を (必要に応じて、対応するキー ファイルと共に) 変更または更新するには、このトピックの前の方にあるセクション「Tableau Server での SSL の構成」の手順に従います。
証明書を変更した後、tsm pending-changes apply
を実行して、Tableau Server サービスを再起動する必要があります。また、SSL 証明書を使用するコンピューター上の他のサービスを再起動することをお勧めします。オペレーティング システムでルート証明書を変更する場合は、コンピュータを再起動する必要があります。