使用容器化身份管理服务
容器化身份管理服务概述并安装
摘要
第 1 章 容器化身份管理服务概述 复制链接链接已复制到粘贴板!
以下小节概述了 Red Hat Enterprise Linux 中的容器化身份管理服务。
rhel7/ipa-server 容器是一个技术预览功能。详情请参阅红帽知识库中的 技术预览功能支持范围。
1.1. ipa-server 和 sssd 容器简介 复制链接链接已复制到粘贴板!
在容器中使用身份管理或系统安全服务守护进程(SSSD)可确保所有身份管理或 SSSD 进程与主机系统隔离运行。这可让主机系统运行其他软件,而不会与这些进程冲突。
ipa-server 和 sssd 容器设计用于 Red Hat Enterprise Linux Atomic Host 系统。有关 Atomic Host 的详情 ,请参考 Atomic 文档中的使用 Atomic 文档。
其它资源
- 红帽系统中的容器概述介绍了 什么是容器以及它们工作方式。本指南还包括入门容器的文档链接。
- Linux 域身份、身份验证和策略指南中的 红帽身份管理 简介 提供了身份管理、身份管理服务器和身份管理客户端的概述。
- Atomic Host 文档 一般提供有关 Red Hat Enterprise Linux Atomic Host 和容器的信息。
1.2. 可用容器镜像 复制链接链接已复制到粘贴板!
rhel7/ipa-server 容器镜像
- 可让您在容器中运行身份管理服务器和相关服务。
- 提供身份管理服务器服务。
rhel7/sssd 容器镜像
- 可让您在容器中运行系统安全服务守护进程(SSSD)。
- 通过将系统注册到身份管理服务器或将其连接到 Active Directory 域,为 Atomic Host 系统提供身份和验证服务。
- 为其他容器中运行的应用提供身份和验证服务。
其它资源
- 您可以在 Red Hat Container Catalog 中找到有关容器镜像的更多详细信息。
1.3. 在容器中使用身份管理的好处和缺陷 复制链接链接已复制到粘贴板!
优点
- 所有身份管理配置和数据都保存在子目录中。
- 迁移身份管理服务器变得更加简单:容器子目录可以移到另一个容器或主机系统。另请参阅 第 4 章 将服务器从容器迁移到主机系统。
缺陷
- 身份管理进程在 Atomic 下运行。例如,如果 docker 守护进程终止,在其下运行的身份管理服务器也会终止。但是,维护多个副本计数器。
SELinux 分离不适用于容器内的组件。但是,这些组件仍然使用进程 UID 来分隔。
- 请注意,虽然 SELinux 在组件之间不会应用其强制访问控制(MAC),但 sVirt 项目会将 MAC 应用于容器环境。这样可确保整个容器不受其他容器的影响。
- ipa-server 容器仅运行运行身份管理服务器本身所需的组件。由于缺少 SELinux 隔离,容器不运行任何可攻击身份管理的第三方组件。
- 另请参阅 Atomic 文档中的使用 SELinux 保护容器。
部分 I. 使用 ipa-server 容器(TECHNOLOGY PREVIEW) 复制链接链接已复制到粘贴板!
这部分涵盖了如何在容器中部署身份管理服务器和副本,以及如何将服务器从容器迁移到主机系统,最后如何卸载服务器和副本容器。
第 2 章 在容器中部署身份管理服务器 复制链接链接已复制到粘贴板!
本章论述了如何安装全新的身份管理服务器来启动新的拓扑。
在开始前,请先读取 第 2.1 节 “先决条件” 和 第 2.2 节 “Server 和 Replica 容器中的可用配置”。
选择以下安装过程之一。如果您不确定适合您情况的证书颁发机构(CA)配置,请参阅 确定 Linux 域身份、身份验证和策略指南中的 要使用的 CA 配置。
完成后,读取 第 2.6 节 “安装后的后续步骤”。
2.1. 先决条件 复制链接链接已复制到粘贴板!
- 在安装容器前,升级 Atomic Host 系统。请参阅 Red Hat Enterprise Linux Atomic Host 7 安装和配置指南中的升级和降级。https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux_atomic_host/7/html/installation_and_configuration_guide/upgrading_and_downgrading
2.2. Server 和 Replica 容器中的可用配置 复制链接链接已复制到粘贴板!
什么是可用
- 域级别 1 或更高版本
对于容器,域级别 0 不可用。另请参阅 显示和备份域级别。
因此,容器中运行的服务器只能与基于 Red Hat Enterprise Linux 7.3 或更高版本的身份管理服务器在复制协议中加入。
- 混合容器和非容器部署
- 单个身份管理域拓扑可同时包含基于容器的和基于 RPM 的服务器。
不可用的内容
- 在已部署的容器中更改服务器组件
- 不要对已部署的容器进行运行时修改。如果需要更改或重新安装服务器组件,如集成的 DNS 或 Vault,请创建新副本。
- 在不同的 Linux 发行版间升级
不要更改运行 ipa-server 容器镜像的平台。例如,不要将 Red Hat Enterprise Linux 上运行的镜像改为 Fedora、Ubuntu 或 CentOS。同样,不要将 Fedora、Ubuntu 或 CentOS 上运行的镜像更改为 Red Hat Enterprise Linux。
身份管理仅支持升级到较新版本的 Red Hat Enterprise Linux。
- 使用正在运行的容器降级系统
- 不要降级运行 ipa-server 容器镜像的系统。
- Atomic 主机上的上游容器
- 不要在 Atomic Host 上安装上游容器镜像,如 FreeIPA ipa-server 镜像。仅安装 Red Hat Enterprise Linux 中提供的容器镜像。
- 单一 Atomic 主机上的多个容器
- 在单个 Atomic 主机上仅安装一台 ipa-server 容器镜像。
2.3. 在容器中安装身份管理服务器:基本安装 复制链接链接已复制到粘贴板!
此流程演示了如何使用集成的 CA 在默认证书颁发机构(CA)配置中安装容器化身份管理服务器。
开始前
请注意,容器安装使用
ipa-server-install使用与非容器安装相同的默认配置。要指定自定义配置,请在以下步骤中使用的atomic install命令中添加额外的选项:- 用于 ipa-server 容器的 Atomic 选项。有关完整列表,请查看容器帮助页。
-
ipa-server-install接受的身份管理安装程序选项 ,请参阅 Linux 域身份、身份验证和策略指南中的安装和卸载身份管理服务器。
步骤
使用
atomic install rhel7/ipa-server publish --hostname fully_qualified_domain_name ipa-server-install命令开始安装。容器需要自己的主机名。为容器使用不同的主机名,而不是 Atomic Host 系统的主机名。容器的主机名必须通过 DNS 或 /etc/hosts 文件解析。
注意安装服务器或副本容器不将 Atomic 主机系统本身注册到身份管理域。如果您将 Atomic Host 系统的主机名用于服务器或副本,您将无法在以后注册 Atomic Host 系统。
重要在安装服务器或副本容器时,始终将
--hostname选项与atomic install搭配使用。因为--hostname被视为 Atomic 选项,而不是 Identity Management 安装程序选项,请在ipa-server-install选项前使用它。当ipa-server-install后使用时,安装会忽略--hostname。-
如果您使用集成 DNS 安装服务器,请添加
--ip-address选项以指定可从网络访问的 Atomic 主机的公共 IP 地址。您可以多次使用--ip-address。
警告除非想安装容器仅用于测试目的,否则 始终使用
publish选项。在不发布的情况下,不会向 Atomic Host 系统发布任何端口,该服务器将无法从容器外部访问。ipa-server-installsetup 脚本启动:The log file for this installation can be found in /var/log/ipaserver-install.log ======================================== This program will set up the IPA Server. [... output truncated ...]
The log file for this installation can be found in /var/log/ipaserver-install.log ======================================== This program will set up the IPA Server. [... output truncated ...]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
ipa-server-install程序安装非容器服务器时,该过程与 的作用相同。
例 2.1. 安装命令示例
安装 ipa-server 容器的命令语法:
atomic install [ --name <container_name> ] rhel7/ipa-server [ Atomic options ] [ ipa-server-install | ipa-replica-install ] [ ipa-server-install or ipa-replica-install options ]
$ atomic install [ --name <container_name> ] rhel7/ipa-server [ Atomic options ] [ ipa-server-install | ipa-replica-install ] [ ipa-server-install or ipa-replica-install options ]
安装名为 server-container 的服务器容器,并将默认值用于 Identity Management 服务器设置:
atomic install --name server-container rhel7/ipa-server publish --hostname server.example.com ipa-server-install --ip-address 2001:DB8::1111
$ atomic install --name server-container rhel7/ipa-server publish --hostname server.example.com ipa-server-install --ip-address 2001:DB8::1111
要安装具有自定义主机名的服务器(--hostname)和集成的 DNS(--setup-dns):
atomic install rhel7/ipa-server publish --hostname server.example.com ipa-server-install --setup-dns --ip-address 2001:DB8::1111
$ atomic install rhel7/ipa-server publish --hostname server.example.com ipa-server-install --setup-dns --ip-address 2001:DB8::1111
2.4. 在容器中安装身份管理服务器:外部 CA 复制链接链接已复制到粘贴板!
这个步骤描述了如何使用从属到外部 CA 的集成身份管理证书颁发机构(CA)安装服务器。
容器化身份管理服务器和 Atomic 主机系统共享文件系统的部分,这些部分使用 绑定 挂载到容器中。因此,与外部文件相关的操作必须在这个卷中执行。
ipa-server 容器镜像使用 /var/lib/<container_name>/ 目录在 Atomic Host 文件系统中存储持久文件。持久性卷映射到容器内的 /data/ 目录。
开始前
请注意,容器安装使用
ipa-server-install使用与非容器安装相同的默认配置。要指定自定义配置,请在以下步骤中使用的atomic install命令中添加额外的选项:- 用于 ipa-server 容器的 Atomic 选项。有关完整列表,请查看容器帮助页。
-
ipa-server-install接受的身份管理安装程序选项 ,请参阅 Linux 域身份、身份验证和策略指南中的安装和卸载身份管理服务器。
步骤
使用
atomic install rhel7/ipa-server publish --hostname fully_qualified_domain_name ipa-server-install --external-ca命令来开始安装。容器需要自己的主机名。为容器使用不同的主机名,而不是 Atomic Host 系统的主机名。容器的主机名必须通过 DNS 或 /etc/hosts 文件解析。
注意安装服务器或副本容器不将 Atomic 主机系统本身注册到身份管理域。如果您将 Atomic Host 系统的主机名用于服务器或副本,您将无法在以后注册 Atomic Host 系统。
重要在安装服务器或副本容器时,始终将
--hostname选项与atomic install搭配使用。因为--hostname被视为 Atomic 选项,而不是 Identity Management 安装程序选项,请在ipa-server-install选项前使用它。当ipa-server-install后使用时,安装会忽略--hostname。-
如果您使用集成 DNS 安装服务器,请添加
--ip-address选项以指定可从网络访问的 Atomic 主机的公共 IP 地址。您可以多次使用--ip-address。
警告除非想安装容器仅用于测试目的,否则 始终使用
publish选项。在不发布的情况下,不会向 Atomic Host 系统发布任何端口,该服务器将无法从容器外部访问。ipa-server-installsetup 脚本启动:The log file for this installation can be found in /var/log/ipaserver-install.log ======================================== This program will set up the IPA Server. [... output truncated ...]
The log file for this installation can be found in /var/log/ipaserver-install.log ======================================== This program will set up the IPA Server. [... output truncated ...]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
ipa-server-install程序安装非容器服务器时,该过程与 的作用相同。容器安装脚本会在
/var/lib/<container_name>/root/ipa.csr文件中生成证书签名请求(CSR)。将 CSR 提交到外部 CA,并检索签发的证书和 CA 证书链以进行发布 CA。详情请参阅在 Linux 域身份、身份验证和策略 指南中的使用 外部 CA 安装服务器作为 Root CA。
将签名的 CA 证书和 root CA 证书复制到
/var/lib/<container_name>/目录中。cp /root/{ipa,ca}.crt /var/lib/server-container/.$ cp /root/{ipa,ca}.crt /var/lib/server-container/.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
atomic run命令以及--external-cert-file选项指定证书的位置。指定相对于/data/目录的位置,因为安装程序从容器内执行调用atomic run rhel7/ipa-server ipa-server-install --external-cert-file /data/ipa.crt --external-cert-file /data/ca.crt
$ atomic run rhel7/ipa-server ipa-server-install --external-cert-file /data/ipa.crt --external-cert-file /data/ca.crtCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 安装会恢复。安装程序现在使用提供的证书来设置从属 CA。
2.5. 在容器中安装身份管理服务器:没有 CA 复制链接链接已复制到粘贴板!
这个步骤描述了如何在没有集成身份管理证书颁发机构(CA)的情况下安装服务器。
容器化身份管理服务器和 Atomic 主机系统共享文件系统的部分,这些部分使用 绑定 挂载到容器中。因此,与外部文件相关的操作必须在这个卷中执行。
ipa-server 容器镜像使用 /var/lib/<container_name>/ 目录在 Atomic Host 文件系统中存储持久文件。持久性卷映射到容器内的 /data/ 目录。
开始前
请注意,容器安装使用
ipa-server-install使用与非容器安装相同的默认配置。要指定自定义配置,请在以下步骤中使用的atomic install命令中添加额外的选项:- 用于 ipa-server 容器的 Atomic 选项。有关完整列表,请查看容器帮助页。
-
ipa-server-install接受的身份管理安装程序选项 ,请参阅 Linux 域身份、身份验证和策略指南中的安装和卸载身份管理服务器。
步骤
在
/var/lib/<container_name>/中为容器手动创建持久性存储目录:mkdir -p /var/lib/ipa-server
$ mkdir -p /var/lib/ipa-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将包含证书链的文件复制到目录中:
cp /root/server-*.p12 /var/lib/ipa-server/.
$ cp /root/server-*.p12 /var/lib/ipa-server/.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
atomic install命令,并从第三方机构提供所需的证书:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 容器需要自己的主机名。为容器使用不同的主机名,而不是 Atomic Host 系统的主机名。容器的主机名必须通过 DNS 或 /etc/hosts 文件解析。
注意安装服务器或副本容器不将 Atomic 主机系统本身注册到身份管理域。如果您将 Atomic Host 系统的主机名用于服务器或副本,您将无法在以后注册 Atomic Host 系统。
重要在安装服务器或副本容器时,始终将
--hostname选项与atomic install搭配使用。因为--hostname被视为 Atomic 选项,而不是 Identity Management 安装程序选项,请在ipa-server-install选项前使用它。当ipa-server-install后使用时,安装会忽略--hostname。-
如果您使用集成 DNS 安装服务器,请添加
--ip-address选项以指定可从网络访问的 Atomic 主机的公共 IP 地址。您可以多次使用--ip-address。
警告除非想安装容器仅用于测试目的,否则 始终使用
publish选项。在不发布的情况下,不会向 Atomic Host 系统发布任何端口,该服务器将无法从容器外部访问。ipa-server-installsetup 脚本启动:The log file for this installation can be found in /var/log/ipaserver-install.log ======================================== This program will set up the IPA Server. [... output truncated ...]
The log file for this installation can be found in /var/log/ipaserver-install.log ======================================== This program will set up the IPA Server. [... output truncated ...]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
ipa-server-install程序安装非容器服务器时,该过程与 的作用相同。
2.6. 安装后的后续步骤 复制链接链接已复制到粘贴板!
要运行容器,请使用
atomic run命令:atomic run rhel7/ipa-server
$ atomic run rhel7/ipa-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您在安装时为容器指定了名称:
atomic run --name server-container rhel7/ipa-server
$ atomic run --name server-container rhel7/ipa-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 运行 ipa-server 容器的工作方式与在裸机或虚拟机系统上的标准身份管理部署相同。例如,您可以使用命令行界面、Web UI 或 JSONRPC-API 将主机注册到域或管理拓扑,方式与基于 RPM 的 Identity Management 系统相同。
第 3 章 在容器中部署身份管理副本 复制链接链接已复制到粘贴板!
本章论述了如何安装身份管理副本。例如,如果您想要逐步将现有拓扑中的工作负载转移到基于容器的服务器,则创建基于容器的副本会很有用。
在开始前,请先读取 第 3.1 节 “先决条件” 和 第 3.2 节 “Server 和 Replica 容器中的可用配置”。
选择以下安装过程之一。如果您不确定适合您情况的证书颁发机构(CA)配置,请参阅 确定 Linux 域身份、身份验证和策略指南中的 要使用的 CA 配置。
完成后,读取 第 3.5 节 “安装后的后续步骤”。
3.1. 先决条件 复制链接链接已复制到粘贴板!
- 在安装容器前,升级 Atomic Host 系统。请参阅 Red Hat Enterprise Linux Atomic Host 7 安装和配置指南中的升级和降级。https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux_atomic_host/7/html/installation_and_configuration_guide/upgrading_and_downgrading
3.2. Server 和 Replica 容器中的可用配置 复制链接链接已复制到粘贴板!
什么是可用
- 域级别 1 或更高版本
对于容器,域级别 0 不可用。另请参阅 显示和备份域级别。
因此,容器中运行的服务器只能与基于 Red Hat Enterprise Linux 7.3 或更高版本的身份管理服务器在复制协议中加入。
- 混合容器和非容器部署
- 单个身份管理域拓扑可同时包含基于容器的和基于 RPM 的服务器。
不可用的内容
- 在已部署的容器中更改服务器组件
- 不要对已部署的容器进行运行时修改。如果需要更改或重新安装服务器组件,如集成的 DNS 或 Vault,请创建新副本。
- 在不同的 Linux 发行版间升级
不要更改运行 ipa-server 容器镜像的平台。例如,不要将 Red Hat Enterprise Linux 上运行的镜像改为 Fedora、Ubuntu 或 CentOS。同样,不要将 Fedora、Ubuntu 或 CentOS 上运行的镜像更改为 Red Hat Enterprise Linux。
身份管理仅支持升级到较新版本的 Red Hat Enterprise Linux。
- 使用正在运行的容器降级系统
- 不要降级运行 ipa-server 容器镜像的系统。
- Atomic 主机上的上游容器
- 不要在 Atomic Host 上安装上游容器镜像,如 FreeIPA ipa-server 镜像。仅安装 Red Hat Enterprise Linux 中提供的容器镜像。
- 单一 Atomic 主机上的多个容器
- 在单个 Atomic 主机上仅安装一台 ipa-server 容器镜像。
3.3. 在容器中安装身份管理副本:基本安装 复制链接链接已复制到粘贴板!
此流程演示了如何使用集成的 CA 在默认证书颁发机构(CA)配置中安装容器化身份管理服务器。
开始前
请注意,容器安装使用
ipa-replica-install使用与非容器安装相同的默认配置。要指定自定义配置,请在以下步骤中使用的atomic install命令中添加额外的选项:- 用于 ipa-server 容器的 Atomic 选项。有关完整列表,请查看容器帮助页。
-
ipa-replica-install接受 身份管理安装程序选项,请参阅 Linux 域身份、身份验证和策略指南中的安装和卸载身份管理 副本。
- 您必须有安装的服务器可用:在裸机机器或其它 Atomic Host 系统上。
步骤
- 如果要在容器中为主服务器安装副本,请通过在 Linux 域 身份、身份验证和策略指南 中安装和卸载身份管理服务器 的端口,启用与 master 容器的双向通信。
使用
atomic install rhel7/ipa-server publish --hostname fully_qualified_domain_name ipa-replica-install命令开始安装。包含--server和--domain选项,以指定身份管理服务器的主机名和域名。容器需要自己的主机名。为容器使用不同的主机名,而不是 Atomic Host 系统的主机名。容器的主机名必须通过 DNS 或 /etc/hosts 文件解析。
注意安装服务器或副本容器不将 Atomic 主机系统本身注册到身份管理域。如果您将 Atomic Host 系统的主机名用于服务器或副本,您将无法在以后注册 Atomic Host 系统。
重要在安装服务器或副本容器时,始终将
--hostname选项与atomic install搭配使用。因为--hostname被视为 Atomic 选项,而不是 Identity Management 安装程序选项,请在ipa-server-install选项前使用它。当ipa-server-install后使用时,安装会忽略--hostname。-
如果您使用集成 DNS 安装服务器,请添加
--ip-address选项以指定可从网络访问的 Atomic 主机的公共 IP 地址。您可以多次使用--ip-address。 由于 交互式副本安装模式 中存在一个已知问题,请添加标准
ipa-replica-install选项指定以下之一:- 特权用户凭证。请参阅 例 3.1 “安装命令示例”。
- 批量注册的随机密码。请参阅 Linux 域身份、身份验证和策略 指南中的使用 Random 密码安装 副本。
警告除非想安装容器仅用于测试目的,否则 始终使用
publish选项。在不发布的情况下,不会向 Atomic Host 系统发布任何端口,该服务器将无法从容器外部访问。
例 3.1. 安装命令示例
安装 ipa-server 容器的命令语法:
atomic install [ --name <container_name> ] rhel7/ipa-server [ Atomic options ] [ ipa-server-install | ipa-replica-install ] [ ipa-server-install or ipa-replica-install options ]
$ atomic install [ --name <container_name> ] rhel7/ipa-server [ Atomic options ] [ ipa-server-install | ipa-replica-install ] [ ipa-server-install or ipa-replica-install options ]
使用管理员凭证安装名为 replica-container 的副本容器,而使用身份管理副本设置的默认值:
3.4. 在容器中安装身份管理副本:没有 CA 复制链接链接已复制到粘贴板!
这个步骤描述了如何在没有集成身份管理证书颁发机构(CA)的情况下安装服务器。
容器化身份管理服务器和 Atomic 主机系统共享文件系统的部分,这些部分使用 绑定 挂载到容器中。因此,与外部文件相关的操作必须在这个卷中执行。
ipa-server 容器镜像使用 /var/lib/<container_name>/ 目录在 Atomic Host 文件系统中存储持久文件。持久性卷映射到容器内的 /data/ 目录。
开始前
请注意,容器安装使用
ipa-replica-install使用与非容器安装相同的默认配置。要指定自定义配置,请在以下步骤中使用的atomic install命令中添加额外的选项:- 用于 ipa-server 容器的 Atomic 选项。有关完整列表,请查看容器帮助页。
-
ipa-replica-install接受 身份管理安装程序选项,请参阅 Linux 域身份、身份验证和策略指南中的安装和卸载身份管理 副本。
- 您必须有安装的服务器可用:在裸机机器或其它 Atomic Host 系统上。
步骤
- 如果要在容器中为主服务器安装副本,请通过在 Linux 域 身份、身份验证和策略指南 中安装和卸载身份管理服务器 的端口,启用与 master 容器的双向通信。
在
/var/lib/<container_name>/中为容器手动创建持久性存储目录:mkdir -p /var/lib/ipa-server
$ mkdir -p /var/lib/ipa-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将包含证书链的文件复制到目录中:
cp /root/server-*.p12 /var/lib/ipa-server/.
$ cp /root/server-*.p12 /var/lib/ipa-server/.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
atomic install rhel7/ipa-server publish --hostname fully_qualified_domain_name ipa-replica-install命令,包括--server和--domain选项,以指定身份管理服务器的主机名和域名,并从第三方授权提供所需的证书:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意证书的路径包括
/data/,因为持久性存储卷映射到容器内的/data/。容器需要自己的主机名。为容器使用不同的主机名,而不是 Atomic Host 系统的主机名。容器的主机名必须通过 DNS 或 /etc/hosts 文件解析。
注意安装服务器或副本容器不将 Atomic 主机系统本身注册到身份管理域。如果您将 Atomic Host 系统的主机名用于服务器或副本,您将无法在以后注册 Atomic Host 系统。
重要在安装服务器或副本容器时,始终将
--hostname选项与atomic install搭配使用。因为--hostname被视为 Atomic 选项,而不是 Identity Management 安装程序选项,请在ipa-server-install选项前使用它。当ipa-server-install后使用时,安装会忽略--hostname。-
如果您使用集成 DNS 安装服务器,请添加
--ip-address选项以指定可从网络访问的 Atomic 主机的公共 IP 地址。您可以多次使用--ip-address。 由于 交互式副本安装模式 中存在一个已知问题,请添加标准
ipa-replica-install选项指定以下之一:- 特权用户凭证。请参阅 例 3.1 “安装命令示例”。
- 批量注册的随机密码。请参阅 Linux 域身份、身份验证和策略 指南中的使用 Random 密码安装 副本。
警告除非想安装容器仅用于测试目的,否则 始终使用
publish选项。在不发布的情况下,不会向 Atomic Host 系统发布任何端口,该服务器将无法从容器外部访问。
3.5. 安装后的后续步骤 复制链接链接已复制到粘贴板!
要运行容器,请使用
atomic run命令:atomic run rhel7/ipa-server
$ atomic run rhel7/ipa-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您在安装时为容器指定了名称:
atomic run --name replica-container rhel7/ipa-server
$ atomic run --name replica-container rhel7/ipa-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 运行 ipa-server 容器的工作方式与在裸机或虚拟机系统上的标准身份管理部署相同。例如,您可以使用命令行界面、Web UI 或 JSONRPC-API 将主机注册到域或管理拓扑,方式与基于 RPM 的 Identity Management 系统相同。
第 4 章 将服务器从容器迁移到主机系统 复制链接链接已复制到粘贴板!
本章论述了如何将最初在容器中安装的服务器迁移到裸机或虚拟机系统中。在以下情景中,我们迁移到了 Red Hat Enterprise Linux 系统。
4.1. 将身份管理服务器从容器迁移到主机系统 复制链接链接已复制到粘贴板!
此流程演示了如何将容器化身份管理服务器迁移到主机系统,以及可选的减少容器。
步骤
针对容器注册主机系统作为身份管理副本。如果要稍后使用 Identity Management 服务器弃用该容器,请确保使用配置了证书颁发机构(CA)创建副本。
将 CA 职责从容器中的服务器迁移到主机系统上的新副本。
弃用容器中的服务器。
请参阅 第 5 章 卸载服务器和复制容器。
第 5 章 卸载服务器和复制容器 复制链接链接已复制到粘贴板!
本章论述了如何卸载身份管理服务器或副本容器。
5.1. 卸载服务器或复制容器 复制链接链接已复制到粘贴板!
此流程演示了如何卸载身份管理服务器或副本容器,并确保在拓扑中正确移除服务器或副本。
步骤
为确保正确从该拓扑中删除属于现有拓扑的副本容器,在任何注册的主机上使用
ipa server-del <container-host-name>命令。这一步是必需的,因为
atomic uninstall命令不会:- 执行检查以防止断开连接的域级别 1 拓扑或删除最后一个证书颁发机构(CA)、密钥恢复机构(KRA)或 DNS 服务器
- 从现有拓扑中删除副本容器
使用
atomic uninstall命令,并包含容器名称和镜像名称:atomic uninstall --name <container_name> rhel7/ipa-server
$ atomic uninstall --name <container_name> rhel7/ipa-serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow
5.2. 卸载后下一步 复制链接链接已复制到粘贴板!
-
您可以在
/var/lib/<container_name>.backup.<timestamp>下找到容器挂载的数据目录的备份。如果您需要创建新容器,备份功能可以重复使用卷中存储的持久数据。
部分 II. 使用 sssd 容器 复制链接链接已复制到粘贴板!
这部分论述了如何在 Atomic 主机上部署、配置、更新和卸载 SSSD 容器。另外,本文档解释了如何授予或限制对 SSSD 容器的访问权限以及如何创建和使用集中式 Kerberos 凭证缓存。
第 6 章 配置 SSSD 容器以在 Atomic 主机上提供身份和验证服务 复制链接链接已复制到粘贴板!
作为系统管理员,您可以使用容器中的 SSSD 为 Atomic Host 系统提供外部身份、身份验证和授权服务。本章论述了如何将 SSSD 容器作为 特权运行,它支持来自外部身份源(Identity Management 或 Active Directory)的用户,以利用 Atomic 主机自身中运行的服务。
另外,您还可以以 非特权 方式运行 SSSD 容器,它允许来自外部身份源(Identity Management 或 Active Directory)的用户利用 Atomic 主机上的其他容器中运行的服务。这包括在 第 7 章 使用不同配置部署 SSSD 容器 中。
在开始前,请参阅:
要将 Atomic 主机注册到身份管理服务器,请参阅:
要将 Atomic 主机注册到 Active Directory,请参阅:
6.1. 先决条件 复制链接链接已复制到粘贴板!
- 在安装容器前,升级 Atomic Host 系统。请参阅 Red Hat Enterprise Linux Atomic Host 7 安装和配置指南中的升级和降级。https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux_atomic_host/7/html/installation_and_configuration_guide/upgrading_and_downgrading
6.2. 使用特权 SSSD 容器注册身份管理域 复制链接链接已复制到粘贴板!
这个步骤描述了如何安装 SSSD 容器并根据身份管理服务器进行注册。在安装过程中:
- 将各种配置和数据复制到容器中。
- 用于配置身份管理客户端的 ipa-client-install 工具启动。
- 在成功注册到身份管理域后,配置和数据将复制到 Atomic 主机系统中。
先决条件
您需要以下之一:
将 Atomic 主机系统的一次性客户端随机密码注册到身份管理域。要生成密码,请在 Identity Management 服务器中添加 Atomic Host 系统作为 Identity Management 主机,例如:
ipa host-add <atomic.example.com> --random [... output truncated ...] Random password: 4Re[>5]OB$3K($qYs:M&}B [... output truncated ...]
$ ipa host-add <atomic.example.com> --random [... output truncated ...] Random password: 4Re[>5]OB$3K($qYs:M&}B [... output truncated ...]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 详情请参阅在 Linux 域身份、身份验证和策略指南中的 安装客户端。https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Linux_Domain_Identity_Authentication_and_Policy_Guide/client-install.html
-
允许注册客户端的 Identity Management 用户的凭证。默认情况下,这是
admin用户。
步骤
使用
atomic install命令启动 sssd 容器安装,并提供允许注册新主机的 IdM 用户的随机密码或凭证。在大多数情况下,这是admin用户。atomic install rhel7/sssd --password "4Re[>5]OB$3K($qYs:M&}B" [... output truncated ...] Service sssd.service configured to run SSSD container. [... output truncated ...]
# atomic install rhel7/sssd --password "4Re[>5]OB$3K($qYs:M&}B" [... output truncated ...] Service sssd.service configured to run SSSD container. [... output truncated ...]Copy to Clipboard Copied! Toggle word wrap Toggle overflow atomic install rhel7/sssd -p admin -w <admin_password> [... output truncated ...] Service sssd.service configured to run SSSD container. [... output truncated ...]
# atomic install rhel7/sssd -p admin -w <admin_password> [... output truncated ...] Service sssd.service configured to run SSSD container. [... output truncated ...]Copy to Clipboard Copied! Toggle word wrap Toggle overflow atomic install rhel7/sssd命令接受标准 ipa-client-install 选项。根据您的配置,您可能需要使用这些选项提供额外的信息。例如,如果 ipa-client-install 无法确定您的服务器的主机名和域名,请使用--server和--domain选项:atomic install rhel7/sssd --password "4Re[>5]OB$3K($qYs:M&}B" --server <server.example.com> --domain <example.com>
# atomic install rhel7/sssd --password "4Re[>5]OB$3K($qYs:M&}B" --server <server.example.com> --domain <example.com>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意您也可以将选项传递给
ipa-client-install,方法是将它们保存到 Atomic 主机上的/etc/sssd/ipa-client-install-options文件中,然后再运行atomic install。例如,该文件可以包含:--password=4Re[>5]OB$3K($qYs:M&}B --server=server.example.com --domain=example.com
--password=4Re[>5]OB$3K($qYs:M&}B --server=server.example.com --domain=example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用以下命令之一在容器中启动 SSSD:
atomic run rhel7/sssd
# atomic run rhel7/sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl start sssd
# systemctl start sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 可选。确认容器正在运行:
docker ps CONTAINER ID IMAGE 5859b9366f0f rhel7/sssd
# docker ps CONTAINER ID IMAGE 5859b9366f0f rhel7/sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 可选。确认 Atomic 主机上的 SSSD 从身份管理域解析身份。
获取 Identity Management 用户的 Kerberos 票据,并使用 ssh 实用程序登录 Atomic 主机。
atomic run sssd kinit <idm_user> ssh <idm_user>@<atomic.example.com>
$ atomic run sssd kinit <idm_user> $ ssh <idm_user>@<atomic.example.com>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用 id 实用程序验证您是否以预期用户身份登录:
id uid=1215800001(idm_user) gid=1215800001(idm_user) groups=1215800001(idm_user) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
$ id uid=1215800001(idm_user) gid=1215800001(idm_user) groups=1215800001(idm_user) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用 hostname 工具验证您是否登录到 Atomic Host 系统:
hostname atomic.example.com
$ hostname atomic.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow
6.3. 使用 SSSD 容器加入 Active Directory 域 复制链接链接已复制到粘贴板!
这个步骤描述了如何安装 SSSD 容器并将其配置为将 Atomic Host 系统加入到 Active Directory 中。
步骤
在 Atomic Host 系统上的
/etc/sssd/realm-join-password文件中,将允许将允许将系统注册到 Active Directory 域(如管理员)的密码:echo <password> > /etc/sssd/realm-join-password
# echo <password> > /etc/sssd/realm-join-passwordCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在 文件中提供密码是必要的,因为
realm join命令不接受作为命令行参数的密码。注意如果您想稍后指定自定义容器镜像名称,并使用
atomic install命令而不是默认名称(sssd),将自定义名称添加到文件的路径:/etc/sssd/<custom_container_name>/realm-join-password。使用
atomic install命令启动 sssd 容器安装,并指定您要加入的域。如果您要为操作使用默认的 Administrator 用户帐户:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果使用另一个用户帐户,请使用
--user选项指定它:atomic install rhel7/sssd realm join --user <user_name> <ad.example.com>
# atomic install rhel7/sssd realm join --user <user_name> <ad.example.com>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用以下命令之一在容器中启动 SSSD:
atomic run rhel7/sssd
# atomic run rhel7/sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl start sssd
# systemctl start sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 可选。确认容器正在运行:
docker ps CONTAINER ID IMAGE 5859b9366f0f rhel7/sssd
# docker ps CONTAINER ID IMAGE 5859b9366f0f rhel7/sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 可选。在 Atomic Host 系统中,确认 SSSD 可从 Active Directory 域解析身份:
id administrator@<ad.example.com> uid=1397800500(administrator@ad.example.com) gid=1397800513(domain users@ad.example.com)
# id administrator@<ad.example.com> uid=1397800500(administrator@ad.example.com) gid=1397800513(domain users@ad.example.com)Copy to Clipboard Copied! Toggle word wrap Toggle overflow
其它资源
- 有关 realmd 工具程序的详情,请参考 Windows Integration Guide 或 realm(8)man page 中使用 realmd 连接到 Active Directory 域。
第 7 章 使用不同配置部署 SSSD 容器 复制链接链接已复制到粘贴板!
作为系统管理员,您可以部署每个使用特定身份提供程序(如身份管理或 Active Directory)的多个非特权 SSSD 容器。这可让其他应用程序容器只使用其首选身份源。
7.1. 先决条件 复制链接链接已复制到粘贴板!
要使用来自其他容器的 SSSD 容器提供的服务,客户端容器的 rhel7 基础镜像必须包含
sssd-client软件包。但是,默认的 rhel7 基础镜像不包含此软件包。如果您需要使用其他容器中的 SSSD 服务,请基于默认的 rhel7 基础镜像为客户端容器创建自己的镜像,并包含
sssd-client。详情请参阅 创建 Docker 镜像。
7.2. 启动 SSSD 容器并将其加入身份资源 复制链接链接已复制到粘贴板!
要启动 SSSD 容器并将其加入到身份资源,如 Active Directory:
使用
atomic install命令启动 SSSD 容器。例如:atomic install --opt1='--dns=192.0.2.1 --dns-search=idm.example.com --hostname=server.ad.example.com -e SSSD_CONTAINER_TYPE=application --net=default' --name=ad_sssd rhel7/sssd realm join -v ad.example.com
# atomic install --opt1='--dns=192.0.2.1 --dns-search=idm.example.com --hostname=server.ad.example.com -e SSSD_CONTAINER_TYPE=application --net=default' --name=ad_sssd rhel7/sssd realm join -v ad.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow 前面的示例创建一个名为
ad_sssd的 SSSD 应用程序容器。将 DNS 服务器 IP 地址、搜索域、主机名和realm join命令传递到atomic install,将容器中运行的 SSSD 自动加入到 Active Directory 域。对您要为其提供 SSSD 容器的每个身份提供程序重复此步骤。
启动容器。例如:
atomic run ad_sssd
# atomic run ad_sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow
7.3. 将 SSSD 缓存传递给应用程序容器 复制链接链接已复制到粘贴板!
要在应用程序容器中使用 SSSD 缓存,请在启动应用程序容器时将相关目录传递给 docker run 命令:
docker run --rm --name=<container_name> -v=/var/lib/sssd_container/<sssd-container-name>/client/etc/krb5.conf.d:/etc/krb5.conf.d -v=/var/lib/sssd_container/<sssd-container-name>/client/var/lib/sss/pipes/:/var/lib/sss/pipes/ <image_name>
# docker run --rm --name=<container_name> -v=/var/lib/sssd_container/<sssd-container-name>/client/etc/krb5.conf.d:/etc/krb5.conf.d -v=/var/lib/sssd_container/<sssd-container-name>/client/var/lib/sss/pipes/:/var/lib/sss/pipes/ <image_name>
这会将 SSSD 容器的目录映射到应用程序容器中的对应目录。
容器中运行的应用现在可以使用 kinit 实用程序或 mod_auth_gssapi 模块进行验证。
第 8 章 使用 HBAC 规则授予和限制访问 SSSD 容器 复制链接链接已复制到粘贴板!
对于 Identity Management 域,每个 SSSD 容器都代表自己作为不同的主机,管理员可以设置基于主机的访问控制(HBAC)规则来单独允许或拒绝对单个容器的访问。
有关在身份管理中配置 HBAC 规则的详情,请参考 Linux 域身份、身份验证和策略指南中的配置基于主机的访问控制
第 9 章 创建和使用集中式 Kerberos 凭证缓存 复制链接链接已复制到粘贴板!
作为系统管理员,您可以集中对 Kerberos 服务器进行身份验证,以初始化凭据缓存。您还可以确保容器中运行的应用程序能够使用此中央缓存进行身份验证,而无需单独管理 keytab 文件、身份验证或续订。
9.1. 先决条件 复制链接链接已复制到粘贴板!
要使用来自其他容器的 SSSD 容器提供的服务,客户端容器的 rhel7 基础镜像必须包含
sssd-client软件包。但是,默认的 rhel7 基础镜像不包含此软件包。如果您需要使用其他容器中的 SSSD 服务,请基于默认的 rhel7 基础镜像为客户端容器创建自己的镜像,并包含
sssd-client。详情请参阅 创建 Docker 镜像。
9.2. 使用 SSSD 容器加入 Active Directory 域 复制链接链接已复制到粘贴板!
这个步骤描述了如何安装 SSSD 容器并将其配置为将 Atomic Host 系统加入到 Active Directory 中。
步骤
在 Atomic Host 系统上的
/etc/sssd/realm-join-password文件中,将允许将允许将系统注册到 Active Directory 域(如管理员)的密码:echo <password> > /etc/sssd/realm-join-password
# echo <password> > /etc/sssd/realm-join-passwordCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在 文件中提供密码是必要的,因为
realm join命令不接受作为命令行参数的密码。注意如果您想稍后指定自定义容器镜像名称,并使用
atomic install命令而不是默认名称(sssd),将自定义名称添加到文件的路径:/etc/sssd/<custom_container_name>/realm-join-password。使用
atomic install命令启动 sssd 容器安装,并指定您要加入的域。如果您要为操作使用默认的 Administrator 用户帐户:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果使用另一个用户帐户,请使用
--user选项指定它:atomic install rhel7/sssd realm join --user <user_name> <ad.example.com>
# atomic install rhel7/sssd realm join --user <user_name> <ad.example.com>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用以下命令之一在容器中启动 SSSD:
atomic run rhel7/sssd
# atomic run rhel7/sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl start sssd
# systemctl start sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 可选。确认容器正在运行:
docker ps CONTAINER ID IMAGE 5859b9366f0f rhel7/sssd
# docker ps CONTAINER ID IMAGE 5859b9366f0f rhel7/sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 可选。在 Atomic Host 系统中,确认 SSSD 可从 Active Directory 域解析身份:
id administrator@<ad.example.com> uid=1397800500(administrator@ad.example.com) gid=1397800513(domain users@ad.example.com)
# id administrator@<ad.example.com> uid=1397800500(administrator@ad.example.com) gid=1397800513(domain users@ad.example.com)Copy to Clipboard Copied! Toggle word wrap Toggle overflow
其它资源
- 有关 realmd 工具程序的详情,请参考 Windows Integration Guide 或 realm(8)man page 中使用 realmd 连接到 Active Directory 域。
9.3. 在容器中运行的 SSSD 进行身份验证 复制链接链接已复制到粘贴板!
使用容器中运行的 SSSD 验证 Kerberos 服务器:
将
kinit选项传递给docker exec命令。例如,以 管理员 用户身份进行身份验证:docker exec -i <container_name> kinit administrator Password for administrator@<DOMAIN>:
# docker exec -i <container_name> kinit administrator Password for administrator@<DOMAIN>:Copy to Clipboard Copied! Toggle word wrap Toggle overflow (可选)验证您的 Kerberos 凭证缓存存储在 Kerberos 凭证管理器(KCM)中:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.4. 在不同的容器中使用 SSSD Kerberos 缓存 复制链接链接已复制到粘贴板!
要将 SSSD 容器的 Kerberos 缓存提供给其他容器应用,请将 /var/lib/sssd_container/<sssd-container-name>/client/etc/krb5.conf.d 和 /var/lib/sssd_container/<sssd-container-name>/client/var/lib/sss/pipes/ 目录传递至应用程序容器。例如:
docker run --rm --name=<application_container> -v=/var/lib/sssd_container/<sssd-container-name>/client/etc/krb5.conf.d:/etc/krb5.conf.d/ -v=/var/lib/sssd_container/<sssd-container-name>/client/var/lib/sss/pipes/:/var/lib/sss/pipes/ docker-registry.engineering.redhat.com/idmqe/sssd-client-test:2.0 klist
# docker run --rm --name=<application_container> -v=/var/lib/sssd_container/<sssd-container-name>/client/etc/krb5.conf.d:/etc/krb5.conf.d/ -v=/var/lib/sssd_container/<sssd-container-name>/client/var/lib/sss/pipes/:/var/lib/sss/pipes/ docker-registry.engineering.redhat.com/idmqe/sssd-client-test:2.0 klist
前面的示例在容器中执行 klist 命令,并列出由 SSSD 容器管理的 Kerberos 票据。
如果您使用 kdestroy 工具从缓存中删除 Kerberos ticket,应用程序容器将不再使用 ticket。
第 10 章 更新 SSSD 容器 复制链接链接已复制到粘贴板!
此流程描述了如何在 rhel7/sssd 镜像的新版本时更新系统安全服务守护进程(SSSD)容器。
步骤
停止 SSSD 服务:
如果 SSSD 作为系统容器运行:
systemctl stop sssd
# systemctl stop sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如果 SSSD 作为应用程序容器运行:
atomic stop <container_name>
# atomic stop <container_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
使用
docker rm命令删除镜像:docker rm rhel7/sssd
# docker rm rhel7/sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 安装最新的 SSSD 镜像:
atomic install rhel7/sssd
# atomic install rhel7/sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 启动 SSSD 服务:
如果 SSSD 作为系统容器运行:
systemctl start sssd
# systemctl start sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如果 SSSD 作为应用程序容器运行,请使用
atomic start命令启动每个容器:atomic start <container_name>
# atomic start <container_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
第 11 章 卸载 SSSD 容器 复制链接链接已复制到粘贴板!
本章论述了如何卸载系统安全服务守护进程(SSSD)容器。
11.1. 在身份管理域中卸载 SSSD Container Enrolled 复制链接链接已复制到粘贴板!
此流程描述了如何从 Atomic Host 系统卸载系统安全服务守护进程(SSSD)容器,并从 Identity Management 域取消注册 Atomic 主机系统。
步骤
使用
atomic uninstall命令,并包含镜像名称:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除 Identity Management 服务器上 Atomic 主机系统的主机条目。例如,从命令行:
ipa host-del <atomic.example.com>
$ ipa host-del <atomic.example.com>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要防止 Atomic 主机上的 sssd 服务尝试启动现在未配置的容器,请删除该服务的 systemd 单元文件并重新载入 systemd 进程:
rm /etc/systemd/system/sssd.service systemctl daemon-reload
# rm /etc/systemd/system/sssd.service # systemctl daemon-reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow
11.2. 卸载 SSSD 容器加入 Active Directory 域 复制链接链接已复制到粘贴板!
此流程描述了如何从 Atomic Host 系统卸载系统安全服务守护进程(SSSD)容器,并从 Active Directory 域取消注册 Atomic 主机系统。
步骤
使用
atomic uninstall命令,包括镜像名称,并指定您要保留的域。如果您要为操作使用默认的 Administrator 用户帐户:atomic uninstall rhel7/sssd realm leave <ad.example.com>
# atomic uninstall rhel7/sssd realm leave <ad.example.com>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果使用另一个用户帐户,请使用
--user选项指定它:atomic uninstall rhel7/sssd realm leave --user <user_name> <ad.example.com>
# atomic uninstall rhel7/sssd realm leave --user <user_name> <ad.example.com>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
附录 A. 收集在容器中运行 IdM 和 SSSD 故障排除的信息 复制链接链接已复制到粘贴板!
本附录描述了可帮助您对容器中运行的 IdM 和 SSSD 进行故障排除的步骤,以及收集可附加到红帽支持问题单的重要配置和日志文件。
A.1. 在 Atomic 主机上创建 sosreport 复制链接链接已复制到粘贴板!
本节论述了如何安装和启动 rhel7/rhel-tools 容器以及创建 sosreport。
rhel7/rhel-tools 容器使用特权安全交换机来启用此容器中运行的进程:
- 与主机上的所有信号和共享内存段交互
- 侦听主机网络上的端口和原始 IP 流量
- 与主机上的所有进程交互
请注意,rhel7/rhel-tools 在不与主机分离的情况下运行。使用此容器提供的实用程序与以 root 用户身份直接在系统中运行的工具类似。
步骤
安装
rhel7/rhel-tools容器:docker pull rhel7/rhel-tools
# docker pull rhel7/rhel-toolsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 启动
rhel7/rhel-tools容器:atomic run rhel7/rhel-tools
# atomic run rhel7/rhel-toolsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行
sosreport工具:sosreport
# sosreportCopy to Clipboard Copied! Toggle word wrap Toggle overflow 实用程序将所收集信息归档保存在
/host/var/tmp/sos_tal4k_*文件中。输入
exit来离开容器。exit
# exitCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
sosreport归档附加到支持请求。
A.2. 显示 IdM 和 SSSD 容器的版本 复制链接链接已复制到粘贴板!
本节论述了如何显示已安装的 IdM 和 SSSD 容器的版本。例如,如果在更新的版本中修复了问题,请使用此信息搜索 Red Hat Enterprise Linux 发行注记。
步骤
显示
rhel7/ipa-server容器的版本:atomic images version rhel7/ipa-server IMAGE NAME VERSION IMAGE ID registry.access.redhat.com/rhel7/ipa-server:latest 4.6.5-29 9d500a8e4296
# atomic images version rhel7/ipa-server IMAGE NAME VERSION IMAGE ID registry.access.redhat.com/rhel7/ipa-server:latest 4.6.5-29 9d500a8e4296Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示
rhel7/sssd容器的版本:atomic images version rhel7/sssd IMAGE NAME VERSION IMAGE ID registry.access.redhat.com/rhel7/sssd:latest 7.7-12 19e5cab1c905
# atomic images version rhel7/sssd IMAGE NAME VERSION IMAGE ID registry.access.redhat.com/rhel7/sssd:latest 7.7-12 19e5cab1c905Copy to Clipboard Copied! Toggle word wrap Toggle overflow
A.3. 为在容器中运行的 SSSD 创建调试日志 复制链接链接已复制到粘贴板!
本节论述了如何使用重要的 SSSD 配置和日志文件创建存档。
步骤
停止
sssd容器:docker stop sssd
# docker stop sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 删除 SSSD 缓存和日志目录的内容:
rm -rf /var/lib/sss/db/* /var/lib/sss/mc/* /var/log/sssd/*
# rm -rf /var/lib/sss/db/* /var/lib/sss/mc/* /var/log/sssd/*Copy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
/etc/sssd/sssd.conf文件,并将debug_level参数设置为9:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 启动
sssd容器:docker start sssd
docker start sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建包含相关 SSSD 配置和日志文件的
/tmp/sssd-debug.tar.gz存档:tar czvf /tmp/sssd-debug.tar.gz /etc/sssd/sssd.conf /etc/nsswitch.conf /etc/krb5.conf /etc/pam.d /etc/samba/smb.conf /var/log/secure /var/log/messages /var/log/sssd
# tar czvf /tmp/sssd-debug.tar.gz /etc/sssd/sssd.conf /etc/nsswitch.conf /etc/krb5.conf /etc/pam.d /etc/samba/smb.conf /var/log/secure /var/log/messages /var/log/sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
/tmp/sssd-debug.tar.gz文件附加到支持问题单中。
A.4. 显示 IdM 客户端安装日志 复制链接链接已复制到粘贴板!
本节论述了如何显示 IdM 客户端安装日志。如果客户端安装失败,日志文件可帮助您调试问题。
步骤
显示 IdM 客户端安装日志:
cat /var/log/sssd/install/ipaclient-install.log
# cat /var/log/sssd/install/ipaclient-install.logCopy to Clipboard Copied! Toggle word wrap Toggle overflow
附录 B. 修订历史记录 复制链接链接已复制到粘贴板!
以下的修订编号与本手册的发行版相关,与 Red Hat Enterprise Linux 的版本无关。
| 版本 | 日期和时间 | 作者 |
|---|---|---|
| 7.0-11 | 2019 年 10 月 15 日:添加了故障排除附录。 | Marc Muehlfeld |
| 7.0-10 | 2019 年 9 月 26 日:添加了使用 HBAC 规则对 SSSD 容器的 Granting 和 Restricting 访问权限。 | Marc Muehlfeld |
| 7.0-9 | 2019 年 8 月 23 日:更新了 配置 SSSD 容器的介绍,以便在 Atomic Host 上提供身份和验证服务。 | Marc Muehlfeld |
| 7.0-8 | 2018 年 4 月 05 日:准备 7.5 GA 发布文档. | Lucie Ma\"ásková |
| 7.0-7 | 2018 年 3 月 19 日:更新了 使用不同配置部署 sssd 容器。 | Lucie Ma\"ásková |
| 7.0-6 | 2018 年 1 月 29 日:小修复. | Aneta äteflová Petrová |
| 7.0-5 | 2017 年 11 月 20 日:更新了使用 SSSD 容器注册身份管理域。 | Aneta äteflová Petrová |
| 7.0-4 | 2017 年 9 月 12 日:添加了卸载加入 AD 域的 SSSD 容器的步骤。 | Aneta äteflová Petrová |
| 7.0-3 | 2017 年 8 月 28 日:通过更多用户故事和修复使用 sssd 容器 更新的部分。 | Aneta äteflová Petrová |
| 7.0-2 | 2017 年 8 月 14 日:更新了章节 可用容器镜像,并使用 SSSD 容器加入 Active Directory 域。 | Aneta äteflová Petrová |
| 7.0-1 | 2017 年 7 月 18 日:7.4 GA 出版物的文件版本。 | Aneta äteflová Petrová |