安全管理工具
Data Infrastructure Insights包括安全功能,可让您的环境以增强的安全性运行。这些功能包括加密、密码散列的改进,以及更改内部用户密码以及加密和解密密码的密钥对的能力。
为了保护敏感数据, NetApp建议您在安装或升级后更改默认密钥和_Acquisition_用户密码。
数据源加密密码存储在Data Infrastructure Insights中,当用户在数据收集器配置页面输入密码时,它会使用公钥对密码进行加密。Data Infrastructure Insights没有解密数据收集器密码所需的私钥;只有采集单元 (AU) 才具有解密数据收集器密码所需的数据收集器私钥。
升级和安装注意事项
当您的 Insight 系统包含非默认安全配置(即您已重新输入密码)时,您必须备份您的安全配置。安装新软件,或者在某些情况下升级软件,会将您的系统恢复为默认安全配置。当您的系统恢复到默认配置时,您必须恢复非默认配置才能使系统正常运行。
管理采集单元的安全
SecurityAdmin 工具允许您管理Data Infrastructure Insights的安全选项,并在采集单元系统上运行。安全管理包括管理密钥和密码、保存和恢复您创建的安全配置或将配置恢复为默认设置。
开始之前
-
您必须拥有 AU 系统的管理员权限才能安装 Acquisition Unit 软件(其中包括 SecurityAdmin 工具)。
-
如果您有非管理员用户随后需要访问 SecurityAdmin 工具,则必须将他们添加到 cisys 组。 cisys 组是在 AU 安装期间创建的。
安装 AU 后,可以在采集单元系统的以下任一位置找到 SecurityAdmin 工具:
Windows - <install_path>\Cloud Insights\Acquisition Unit\acq\securityadmin\bin\securityadmin.bat Linux - /bin/oci-securityadmin.sh
使用 SecurityAdmin 工具
以交互模式(-i)启动 SecurityAdmin 工具。
|
|
建议以交互模式使用 SecurityAdmin 工具,以避免在命令行上传递可以在日志中捕获的机密。 |
将显示以下选项:

-
备份
创建包含所有密码和密钥的保险库备份 zip 文件,并将文件放置在用户指定的位置或以下默认位置:
Windows - <install_path>\Cloud Insights\Acquisition Unit\acq\securityadmin\backup\vault Linux - /var/log/netapp/oci/backup/vault
建议妥善保管保险库备份,因为它们包含敏感信息。
-
恢复
恢复已创建的保管库的 zip 备份。一旦恢复,所有密码和密钥都将恢复为备份创建时存在的值。
恢复可用于同步多台服务器上的密码和密钥,例如使用以下步骤:1)更改 AU 上的加密密钥。 2)创建保险库的备份。 3) 将保管库备份恢复到每个 AU。
-
注册/更新外部密钥检索脚本
使用外部脚本注册或更改用于加密或解密设备密码的 AU 加密密钥。
当您更改加密密钥时,您应该备份新的安全配置,以便在升级或安装后恢复它。
请注意,此选项仅在 Linux 上可用。
当使用您自己的密钥检索脚本和 SecurityAdmin 工具时,请记住以下几点:
-
当前支持的算法是最小 2048 位的 RSA。
-
该脚本必须以纯文本形式返回私钥和公钥。该脚本不得返回加密的私钥和公钥。
-
该脚本应返回原始的编码内容(仅限 PEM 格式)。
-
外部脚本必须具有_执行_权限。
-
-
轮换加密密钥
轮换您的加密密钥(取消注册当前密钥并注册新密钥)。要使用来自外部密钥管理系统的密钥,您必须指定公钥 ID 和私钥 ID。
-
重置为默认键
将获取用户密码和获取用户加密密钥重置为默认值,默认值是安装期间提供的。
-
更改信任库密码
更改信任库的密码。
-
更改密钥库密码
更改密钥库的密码。
-
加密收集器密码
加密数据收集器密码。
-
出口
退出 SecurityAdmin 工具。
选择您想要配置的选项并按照提示进行操作。
指定用户来运行该工具
如果您处于受控的、注重安全的环境中,您可能没有_cisys_组,但仍可能希望特定用户运行 SecurityAdmin 工具。
您可以通过手动安装 AU 软件并指定您想要访问的用户/组来实现这一点。
-
使用 API,将 CI 安装程序下载到 AU 系统并解压缩。
-
您将需要一次性授权令牌。查看 API Swagger 文档(Admin > API Access 并选择 API Documentation 链接)并找到 GET /au/oneTimeToken API 部分。
-
获得令牌后,使用 GET /au/installers/{platform}/{version} API 下载安装程序文件。您需要提供平台(Linux 或 Windows)以及安装程序版本。
-
-
将下载的安装程序文件复制到AU系统并解压。
-
导航到包含文件的文件夹,并以 root 身份运行安装程序,指定用户和组:
./cloudinsights-install.sh <User> <Group>
如果指定的用户和/或组不存在,则将创建它们。用户将有权访问 SecurityAdmin 工具。
更新或删除代理
可以使用 SecurityAdmin 工具设置或删除采集单元的代理信息,方法是运行带有 -pr 参数的工具:
[root@ci-eng-linau bin]# ./securityadmin -pr
usage: securityadmin -pr -ap <arg> | -h | -rp | -upr <arg>
The purpose of this tool is to enable reconfiguration of security aspects
of the Acquisition Unit such as encryption keys, and proxy configuration,
etc. For more information about this tool, please check the Data Infrastructure Insights
Documentation.
-ap,--add-proxy <arg> add a proxy server. Arguments: ip=ip
port=port user=user password=password
domain=domain
(Note: Always use double quote(") or single
quote(') around user and password to escape
any special characters, e.g., <, >, ~, `, ^,
!
For example: user="test" password="t'!<@1"
Note: domain is required if the proxy auth
scheme is NTLM.)
-h,--help
-rp,--remove-proxy remove proxy server
-upr,--update-proxy <arg> update a proxy. Arguments: ip=ip port=port
user=user password=password domain=domain
(Note: Always use double quote(") or single
quote(') around user and password to escape
any special characters, e.g., <, >, ~, `, ^,
!
For example: user="test" password="t'!<@1"
Note: domain is required if the proxy auth
scheme is NTLM.)
例如,要删除代理,请运行以下命令:
[root@ci-eng-linau bin]# ./securityadmin -pr -rp 运行该命令后必须重新启动采集单元。
要更新代理,命令是
./securityadmin -pr -upr <arg>
外部密钥检索
如果您提供 UNIX shell 脚本,则获取单元可以执行该脚本从您的密钥管理系统中检索 私钥 和 公钥。
为了检索密钥, Data Infrastructure Insights将执行脚本,并传递两个参数:key id 和 key type。 Key id 可用于识别密钥管理系统中的密钥。 _密钥类型_可以是“公共”或“私人”。当密钥类型为“公共”时,脚本必须返回公钥。当密钥类型为“private”时,必须返回私钥。
要将密钥发送回采集单元,脚本必须将密钥打印到标准输出。脚本必须仅将密钥打印到标准输出;不得将任何其他文本打印到标准输出。一旦请求的键被打印到标准输出,脚本必须以退出代码 0 退出;任何其他返回代码都被视为错误。
该脚本必须使用 SecurityAdmin 工具向采集单元注册,该工具将与采集单元一起执行该脚本。该脚本必须具有 root 和“cisys”用户的_read_和_execute_权限。如果注册后shell脚本被修改,则必须将修改后的shell脚本重新向采集单位注册。
输入参数:密钥ID |
密钥标识符用于在客户密钥管理系统中识别密钥。 |
输入参数:密钥类型 |
公共或私人。 |
输出 |
必须将请求的密钥打印到标准输出。目前支持 2048 位 RSA 密钥。密钥必须按照以下格式进行编码和打印 - 私钥格式 - PEM、DER 编码的 PKCS8 PrivateKeyInfo RFC 5958 公钥格式 - PEM、DER 编码的 X.509 SubjectPublicKeyInfo RFC 5280 |
退出代码 |
退出代码为零表示成功。所有其他退出值均被视为失败。 |
脚本权限 |
脚本必须具有 root 和“cisys”用户的读取和执行权限。 |
logs |
脚本执行被记录。日志可以在以下位置找到 - /var/log/netapp/cloudinsights/securityadmin/securityadmin.log /var/log/netapp/cloudinsights/acq/acq.log |
加密用于 API 的密码
选项 8 允许您加密密码,然后您可以通过 API 将其传递给数据收集器。
以交互模式启动 SecurityAdmin 工具并选择选项 8:加密密码。
securityadmin.sh -i 系统会提示您输入要加密的密码。请注意,您键入的字符不会显示在屏幕上。出现提示时重新输入密码。
或者,如果您要在脚本中使用该命令,请在命令行上使用带有“-enc”参数的_securityadmin.sh_,传递未加密的密码:
securityadmin -enc mypassword image:SecurityAdmin_Encrypt_Key_API_CLI_Example.png["CLI 示例"]
加密的密码显示在屏幕上。复制整个字符串,包括任何前导或尾随符号。

要将加密的密码发送给数据收集器,您可以使用数据收集 API。可以在 管理 > API 访问 中找到此 API 的 swagger,然后单击“API 文档”链接。选择“数据收集”API 类型。在 data_collection.data_collector 标题下,为本示例选择 /collector/datasources POST API。

如果将 preEncrypted 选项设置为 True,则通过 API 命令传递的任何密码都将被视为*已加密*;API 不会重新加密密码。构建 API 时,只需将先前加密的密码粘贴到适当的位置。
