配置外部 SSL
- 版本 :2022.1 及更高版本
本主题介绍了针对 SSL 配置服务器的步骤;不过,您必须先从受信任的颁发机构获取证书,然后将证书文件导入到 Tableau Server 中。
可以将 Tableau Server 配置为对所有外部 HTTP 流量使用安全套接字层 (SSL) 加密的通信。设置 SSL 可确保对 Tableau Server 的访问是安全的,并且在服务器和 Tableau 客户端(例如 Tableau Desktop、REST API、分析扩展程序等)之间传递的敏感信息将受到保护。本主题介绍了针对 SSL 配置服务器的步骤;不过,您必须先从受信任的颁发机构获取证书,然后将证书文件导入到 Tableau Server 中。
有关 SSL 和 Tableau Server 的基本入门知识,请参见“适用于每个人的安装指南”中的使用 SSL 对 Tableau Server 通信进行加密。
Tableau Mobile 上不支持相互 SSL 身份验证。
SSL 证书要求
从受信任的颁发机构(例如 Verisign、Thawte、Comodo、GoDaddy)获取 Apache SSL 证书。您也可以使用您的公司颁发的内部证书。还支持允许您将 SSL 用于同一个域中多个主机名的通配符证书。
针对往返于 Tableau Server 的外部通信获取 SSL 证书时,请遵循以下准则和要求:
所有证书文件必须是有效的 PEM 编码 X509 证书,扩展名为
.crt
。使用 SHA-2(256 位或 512 位)SSL 证书。大多数浏览器都不再连接到提供 SHA-1 证书的服务器。
除了证书文件外,您还必须获取对应的 SSL 证书密钥文件。密钥文件必须是有效的 RSA 或 DSA 私钥文件(按照约定带有
.key
扩展名)。您可以选择用密码保护密钥文件。您在配置期间输入的密码将在空闲时加密。但是,如果想要为 SSL 和 SAML 使用相同的证书,则必须使用未受密码保护的密钥文件。
SSL 证书链文件:Mac 版 Tableau Desktop 以及 Mac 版 Tableau Prep Builder 和 Windows 版 Tableau Prep Builder 需要证书链。如果 Tableau Server 的证书链不受移动设备上的 iOS 或 Android 操作系统信任,则该链文件也是必需的。
链文件连接构成服务器证书的证书链的所有证书。文件中的所有证书必须为 x509 PEM 编码,文件扩展名必须为
.crt
(而不是.pem
)。对于多个子域,Tableau Server 支持通配符证书。
验证“使用者备用名称 (SAN)”字段中是否包含客户端用于连接到 Tableau Server 的域、主机名或 IP 地址。许多客户端(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
。
在配置过程中,会将 SSL 证书和密钥文件分发到每个节点。
准备环境
从 CA 获取证书文件后,将其保存到 Tableau Server 可访问的位置,并记下证书 .crt 和 .key 文件的名称,以及这些文件的保存位置。启用 SSL 时将需要向 Tableau Server 提供此信息。
在 Tableau Server 上配置 SSL
使用您最熟悉的方法。
在浏览器中打开 TSM:
https://
在“配置”选项卡上,选择“安全”>“外部 SSL”。
注意:如果要更新或更改现有配置,请在继续之前单击“重置”清除现有设置。
在“外部 Web 服务器 SSL”下,选择“服务器服务器通信启用 SSL”。
上载证书和密钥文件,并在环境需要的情况下上载链文件并输入密码密钥:
如果在分布式部署中运行 Tableau Server,则会将这些文件自动分发到群集中的每个相应节点。
单击“保存未完成的更改”。
单击页面顶部的“待定更改”:
单击“应用更改并重新启动”。
端口重定向和日志记录
针对 SSL 配置服务器后,该服务器会将请求接受到非 SSL 端口(默认为端口 80)并自动重定向至 SSL 端口 443。
注意:Tableau Server 仅支持使用端口 443 作为安全端口。它不能在有其他应用程序正在使用端口 443 的计算机上运行。
SSL 错误记录在以下位置。使用此日志可解决验证和加密问题:
/var/opt/tableau/tableau_server/data/tabsvc/logs/httpd/error.log
向本地防火墙添加 SSL 端口
如果您正在运行本地防火墙,则必须将 SSL 端口添加至 Tableau Server 上的防火墙。以下示例描述了如何配置在 RHEL/CentOS 发行版上运行的防火墙。此示例使用 Firewalld,它是 CentOS 上的默认防火墙。
启动 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 证书的任何其他服务。如果要在操作系统上更改根证书,则必须重新启动计算机。