範例:SSL 憑證 - 產生金鑰和 CSR
重要資訊:此範例旨在為具有 SSL 要求和設定經驗的 IT 專業人員提供一般指引。本文中描述的過程只是您可用於產生所需檔案的許多可用方法之一。應將此處描述的過程視為一個範例,而不是建議。
將 Tableau Server 設定為使用安全通訊端層 (SSL) 加密時,將可幫助確保對伺服器的存取是安全的,並且在 Tableau Server 和 Tableau Desktop 之間傳送的資料受到保護。
想使用 Windows 版 Tableau Server?請參閱範例:SSL 憑證 - 產生金鑰和 CSR(連結在新視窗開啟)。
Tableau Server 使用 Apache,其中包括了 OpenSSL(連結在新視窗開啟)。您可以使用 OpenSSL 工具包來產生金鑰檔和隨後可用於獲取簽署 SSL 憑證的憑證簽署請求 (CSR)。
附註:從 Tableau Server 版本 2021.3.26、2021.4.21、2022.1.17、2022.3.9、2023.1.5 及更高版本開始,Tableau Server 執行 OpenSSL 3.1。
產生金鑰和 CSR 的步驟
若要將 Tableau Server 設定為使用 SSL,您必須有 SSL 憑證。若要獲取 SSL 憑證,請完成以下步驟:
您可以在 Apache Software Foundation 網站的 SSL 常見問題頁面(連結在新視窗開啟)上找到其他資訊。
針對多個網域名稱設定憑證
Tableau Server 允許為多個域使用 SSL。若要設定此環境,您需要修改 OpenSSL 設定檔 openssl.conf,並在 Tableau Server 上設定使用者備用名稱 (SAN) 憑證。請參閱下面的適用於 SAN 憑證:修改 OpenSSL 設定檔。
產生金鑰
產生一個將用於產生憑證簽署請求的金鑰檔。
執行以下命令以建立金鑰檔:
openssl genrsa -out <yourcertname>.key 4096
附註:- 此命令為金鑰使用 4096 位元長度。您應選取至少 2048 位的位長度,因為使用較短位長度加密的通訊不夠安全。如果未提供值,則使用 512 位。
- 要使用 Tableau Server 版本 2021.3.26、2021.4.21、2022.1.17、2022.3.9、2023.1.5 及更高版本建立 PKCS#1 RSA 金鑰,必須使用附加選項
-traditional
執行openssl genrsa
" 基於 OpenSSL 3.1 的命令。有關該選項的更多資訊,請參閱 https://www.openssl.org/docs/man3.1/man1/openssl-rsa.html(連結在新視窗開啟)。
建立憑證簽署請求以傳送到憑證授權
使用您在上面過程中建立的金鑰檔來組建憑證簽署請求 (CSR)。您將 CSR 傳送到憑證授權 (CA) 來獲取簽署的憑證。
重要資訊:如果要設定 SAN 憑證以便為多個域使用 SSL,請首先完成下面的適用於 SAN 憑證:修改 OpenSSL 設定檔中的步驟,然後返回到此處來組建 CSR。
執行以下命令以建立憑證簽署請求 (CSR) 檔案:
openssl req -new -key yourcertname.key -out yourcertname.csr -config /opt/tableau/tableau_server/packages/apache.<version>/conf/openssl.cnf
出現提示時,輸入所需的資訊。
附註:對於「公用名稱」,鍵入 Tableau Server 名稱。Tableau Server 名稱是將用於存取 Tableau Server 的 URL。舉例來說,如果透過在瀏覽器的地址欄中鍵入
tableau.example.com
來存取 Tableau Server,則tableau.example.com
是公用名稱。如果公用名稱未解析為伺服器名稱,則在瀏覽器或 Tableau Desktop 嘗試連線到 Tableau Server 時將發生錯誤。
將 CSR 傳送到憑證授權以獲取 SSL 憑證
將 CSR 傳送到商業憑證授權 (CA) 以申請數位憑證。有關資訊,請參閱 Wikipedia 文章憑證授權(連結在新視窗開啟),以及可幫助您決定要使用的 CA 的任何相關文章。
使用金鑰和憑證來設定 Tableau Server
如果您同時有 CA 提供的金鑰和憑證,則可以將 Tableau Server 設定為使用 SSL。有關步驟,請參閱設定外部 SSL。
適用於 SAN 憑證:修改 OpenSSL 設定檔
在 OpenSSL 的標準安裝中,某些功能預設情況下未啟用。若要將 SSL 用於多個網域名稱,請在組建 CSR 之前完成這些步驟以修改 openssl.cnf 檔案。
巡覽到 Tableau Server 的 Apache conf 資料夾。
例如:
/opt/tableau/tableau_server/packages/apache.<version_code>/conf
在文字編輯器中開啟 openssl.cnf,並尋找以下行:
req_extensions = v3_req
此行可能已使用行開頭的井號 (#) 被注釋掉。
如果該行被注釋掉,請透過從行開頭移除 # 和空格字元來取消注釋。
移動到檔案的「v3_req」部分。前面幾行包含以下文字:
# Extensions to add to a certificate request
basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment在 keyUsage 行後面,插入以下行:
subjectAltName = @alt_names
如果要建立自簽署 SAN 憑證,請執行以下操作以提供用於為憑證簽署的憑證權限:
向 keyUsage 行中新增
cRLSign
和keyCertSign
,使其看起來如下所示:keyUsage = nonRepudiation, digitalSignature, keyEncipherment, cRLSign, keyCertSign
在 keyUsage 行後面,新增以下行:
subjectAltName = @alt_names
在「alt_names」部分,提供要用於 SSL 的網域名稱。
DNS.1 = [domain1]
DNS.2 = [domain2]
DNS.3 = [etc]下圖以反白顯示方式顯示結果,包含您將替換為網域名稱的預留位置文字。
儲存並關閉該檔案。
完成上面建立憑證簽署請求以傳送到憑證授權部分中的步驟。