Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products

Isilon:PowerScale:OneFS:如何更換或更新 Isilon Web 管理介面使用的 SSL 憑證

Summary: 更新或更換 OneFS Web 管理介面 SSL 憑證的步驟。

This article applies to   This article does not apply to 

Instructions

注意:本文中的命令僅適用於搭配 Isilon Cluster 使用。它不適用於外部 Linux 伺服器。
 
注意:Isilon 不會自動更新憑證。您必須在 Isilon 叢集中依照本文中的步驟手動續約。


簡介

本文說明如何更換或更新 Isilon Web 管理介面的安全通訊端層 (SSL) 憑證。下列程序包括完成自我簽署憑證更換或更新,或向憑證認證機構 (CA) 要求更換或續約 SSL 的選項。


必要工具或技能

若要完成此工作,您必須具有可存取 Isilon Web 管理介面的 URL。(本文中的範例使用 https://isilon.example.com:8080/。)您也應能順利地從命令列執行命令。


先決條件

參考資訊
以下清單包括預設位置 server.crtserver.key OneFS 7.0.x 和 OneFS 8.0.0 中的檔案。.在後續程序中,請更新步驟,使此資訊與安裝的 OneFS 版本相符。

OneFS 7.0.x 及更新版本
  • SSL 憑證:
/usr/local/apache24/conf/ssl.crt/server.crt
  • SSL 憑證金鑰:
/usr/local/apache24/conf/ssl.key/server.key
OneFS 8.0.1.x 及更新版本
  1. 執行下列命令,以取得憑證清單:
isi certificate server list
  1. 儲存原始憑證和金鑰的備份 (僅適用於 OneFS 7.0.x 至 8.0.0.x)。
    1. 在叢集的任何節點上開啟 SSH 連線,然後使用「root」帳戶登入。
    2. 執行下列命令以建立備份位置,並儲存原始金鑰和憑證:
mkdir -p /ifs/data/Isilon_Support/original_ssl_backup 
cp /usr/local/apache24/conf/ssl.crt/server.crt /ifs/data/Isilon_Support/original_ssl_backup 
cp /usr/local/apache24/conf/ssl.key/server.key /ifs/data/Isilon_Support/original_ssl_backup 


程序

建立本機工作目錄。
mkdir /ifs/local
cd /ifs/local
確認您要續約現有憑證,或是要從頭開始建立憑證。
  • 更新現有的自我簽署憑證。
這會建立以現有 (庫存) 為基礎的續約憑證 ssl.key。執行下列命令以建立為期兩年的憑證。增加或減少 -days 的值,以產生到期日期不同的憑證:
cp /usr/local/apache2/conf/ssl.key/server.key ./ ; openssl req -new -days 730 -nodes -x509 -key server.key -out server.crt
回答系統提示,以完成產生自我簽署 SSL 憑證的程序,輸入適合貴組織的資訊。

例如:
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:Washington
Locality Name (eg, city) []:Seattle
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Isilon
Organizational Unit Name (eg, section) []:Support
Common Name (e.g. server FQDN or YOUR name) []:isilon.example.com
Email Address []:support@example.com
輸入完資訊後, server.csrserver.key 檔案會顯示在 /ifs/local directory
  • (選用) 驗證憑證的完整性與屬性:
openssl x509 -text -noout -in server.crt
在此步驟之後,請前往 將憑證新增至本文的叢集 區段。
  • 建立憑證和金鑰。
此過程演示如何創建新的私鑰和 SSL 證書。執行下列命令以建立 RSA 2048-bit 私密金鑰:
openssl genrsa -out server.key 2048
建立憑證簽署要求:
openssl req -new -nodes -key server.key -out server.csr
輸入適用於貴組織的適當資訊。
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
  • (選用) 為認證機構建立包含 Subject-Alternative-Names 的 CSR。如果需要其他 DNS,可以使用逗號 (,) 添加,例如:DNS:example.com,DNS:www.example.com)
openssl req -new -nodes -key server.key -out server.csr -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:example.com"))
出現提示時,輸入要整合至憑證要求內的資訊。輸入完資訊後, server.csrserver.key 檔案會顯示在 /ifs/local directory

確認您要對憑證進行自我簽署,或讓認證機構 (CA) 簽署。
  • 自行簽署 SSL 憑證。
若要使用金鑰自行簽署憑證,請執行以下命令以建立新的自我簽署憑證,有效期限為 2 年:
openssl x509 -req -days 730 -in server.csr -signkey server.key -out server.crt
確認金鑰符合憑證,兩個命令應傳回相同的 md5 值:
openssl x509 -noout -modulus -in server.crt | openssl md5           
openssl rsa -noout -modulus -in server.key | openssl md5
在此步驟之後,請前往 將憑證新增至本文的叢集 區段。
  • 讓 CA 簽署憑證。
如果 CA 正在對證書進行簽名,請確保新的 SSL 證書採用 x509 格式,並包含整個證書信任鏈。

CA 通常會在單獨的檔中返回新的 SSL 證書、中間證書和根證書。

如果 CA 已完成此操作, 您必須手動 建立 PEM 格式的憑證。

建立 PEM 格式的憑證時順序問題。證書必須位於文件頂部,後跟中間證書,根證書必須位於底部。

以下是 PEM 格式檔案的外觀範例:
-----BEGIN CERTIFICATE-----
<The contents of your new TLS certificate>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<The contents of the intermediate certificate>
<Repeat as necessary for every intermediate certificate provided by your CA>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<The contents of the root certificate file>
-----END CERTIFICATE-----
從 CLI 建立 PEM 格式檔案的一種簡單方法是 cat 檔案 (請記住,檔案的順序很重要):
cat CA_signed.crt intermediate.crt root.crt > onefs_pem_formatted.crt
複製 onefs_pem_formatted.crt 檔案至 /ifs/local directory 並將其重新命名為 server.crt
 
注意:如果收到.cer檔,請將其重命名為 .crt 擴展名。
 
  • (選用) 驗證憑證的完整性與屬性:
openssl x509 -text -noout -in server.crt


新增憑證至叢集:

若為 OneFS 7.0.x 至 8.0.1.x:
  1. 在每個節點上安裝新憑證和金鑰:
isi services -a isi_webui disable
chmod 640 server.key
chmod 640 server.crt
isi_for_array -s 'cp /ifs/local/server.key /usr/local/apache2/conf/ssl.key/server.key'
isi_for_array -s 'cp /ifs/local/server.crt /usr/local/apache2/conf/ssl.crt/server.crt'
isi services -a isi_webui enable
  1. 如果憑證已過期或未使用,請在升級至 8.0 完成後予以刪除。使用 OneFS 8.0.1.x 和更新版本下步驟 5 中的指示。

若為 OneFS 8.0.1.x 及更新版本:
  1. 將新憑證和金鑰匯入系統:
isi certificate server import /ifs/local/server.crt /ifs/local/server.key
  1. 驗證憑證是否已成功匯入:
isi certificate server list -v
  1. 將匯入的憑證設為預設:
  • 若為 OneFS 8.0 和 8.1,命令為:
isi certificate server modify --id=<id_of_cert_to_set_as_default> --default
  • 若為 OneFS 8.2 及更新版本,命令為:
isi certificate settings modify --default-https-certificate=<id_of_cert_to_set_as_default>
  1. 使用以下命令確認「預設 HTTPS 憑證」的狀態,以確定匯入的憑證已設為預設:
isi certificate settings view
  1. 如果有未使用或過時的憑證,請使用以下命令刪除:
isi certificate server delete --id=<id_of_cert_to_delete>
  1. 使用以下命令檢視新匯入的憑證:
isi certificate server view --id=<id_of_cert>
 
注意:連接埠 8081 和 8083 仍會為 SSL 使用本地資料夾的憑證。如果要將新證書用於埠 8081 和 8083,請按照以下步驟操作。
 
isi services -a isi_webui disable
chmod 640 server.key
chmod 640 server.crt
isi_for_array -s 'cp /ifs/local/server.key /usr/local/apache2/conf/ssl.key/server.key'
isi_for_array -s 'cp /ifs/local/server.crt /usr/local/apache2/conf/ssl.crt/server.crt'
isi services -a isi_webui enable


驗證

有兩種方法可用來驗證更新後的 SSL 憑證。
  • 從網頁瀏覽器:
  1. 瀏覽至 https://<common name>:8080,其中 <通用名稱> 是用來存取 Isilon Web 管理介面的主機名稱。例如: isilon.example.com
  2. 檢視網頁的安全性詳細資料。執行此操作的步驟會因瀏覽器而異。在某些瀏覽器中,透過按一下網址列中的鎖頭圖示,即可檢視網頁的安全性詳細資料。
  3. 在網頁的安全性詳細資料中,確認主旨行和其他詳細資料正確無誤。將顯示類似於以下內容的輸出,其中 <您的州>、 <您的城市>和 <您的公司> 是組織的州、城市和名稱:
Subject: C=US, ST=<yourstate>, L=<yourcity>, O=<yourcompany>, CN=isilon.example.com/emailAddress=support@example.com
  • 從命令列:
  1. 在叢集的任何節點上開啟 SSH 連線,然後使用「root」帳戶登入。
  2. 執行下列命令:
echo QUIT | openssl s_client -connect localhost:8080
  1. 將顯示類似於以下內容的輸出,其中<您的州<>、您的城市>和<您的公司>是組織的州、城市和名稱:
Subject: C=US, ST=<yourstate>, L=<yourcity>, O=<yourcompany>, CN=isilon.example.com/emailAddress=support@example.com

Additional Information

注意:事件警示也會在 Isilon 上觸發,如下所示:
SW_CERTIFICATE_EXPIRING: X.509 certificate default is nearing expiration:

Event: 400170001
Certificate 'default' in '**' store is nearing expiration:

Affected Products

PowerScale OneFS

Products

Isilon