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 群集。它不适用于外部 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 []:
  • (可选)为包含主题别名的证书颁发机构生成 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 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,其中 <common name> 是用于访问 Isilon Web 管理界面的主机名。例如, isilon.example.com
  2. 查看网页的安全详细信息。完成此操作的步骤因浏览器而异。在某些浏览器中,单击地址栏中的挂锁图标可查看网页的安全详细信息。
  3. 在网页的安全详细信息中,确认主题行和其他详细信息正确无误。将显示类似于以下内容的输出,其中 <yourstate<>、yourcity> 和 <your company> 是组织的州、城市和名称:
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. 将显示类似于以下内容的输出,其中 <yourstate<>、yourcity> 和 <your company> 是组织的州、城市和名称:
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