通知

要制定办公室复工策略?了解 Chrome 操作系统可以为您提供哪些帮助

为 ChromeOS 设备配置 Kerberos 单点登录

适用于为企业或学校管理 Chrome OS 设备的管理员。

作为管理员,您可以在 ChromeOS 设备上使用 Kerberos 票据,为支持 Kerberos 身份验证的内部资源启用单点登录 (SSO)。这类内部资源可能包括网站、文件共享、证书等。

要求

  • 搭载 ChromeOS 91 或更高版本的设备。
  • 目前不支持自助服务终端。
  • Active Directory 环境。

设置 Kerberos

  1. 登录您的 Google 管理控制台

    请使用您的管理员帐号(不是以“@gmail.com”结尾的帐号)登录。

  2. 在管理控制台中,依次点击“菜单”图标 接着点击 设备接着点击Chrome接着点击设置。默认情况下,系统会打开用户和浏览器设置页面。

    如果您已注册 Chrome 浏览器云管理,请依次点击“菜单”图标 接着点击 Chrome 浏览器接着点击设置

  3. (可选)点击顶部的受管理的访客会话设置
  4. (可选)要将设置应用于某个部门或团队,请在侧边选择一个组织部门显示具体方法
  5. 转到 Kerberos

  6. 点击 Kerberos 票据

  7. 选择启用 Kerberos

  8. (可选)(仅限用户和浏览器)在用户登录时自动请求 Kerberos 票据。

    1. 选择自动添加 Kerberos 账号

    2. 输入主体名称。系统支持 ${LOGIN_ID}${LOGIN_EMAIL} 占位符。

    3. 选择使用默认 Kerberos 配置。也可以选择自定义 Kerberos 配置,并指定支持您环境所需的 Kerberos 配置。有关详情,请参阅配置获取票据的方式
      注意:您应检查 Kerberos 配置,即 krb5.conf。默认配置会强制执行高强度 AES 加密,而您的环境可能未全面支持该加密方式。

  9. 点击保存

配置如何在设备上使用 Kerberos

  1. 登录您的 Google 管理控制台

    请使用您的管理员帐号(不是以“@gmail.com”结尾的帐号)登录。

  2. 在管理控制台中,依次点击“菜单”图标 接着点击 设备接着点击Chrome接着点击设置。默认情况下,系统会打开用户和浏览器设置页面。

    如果您已注册 Chrome 浏览器云管理,请依次点击“菜单”图标 接着点击 Chrome 浏览器接着点击设置

  3. (可选)点击顶部的受管理的访客会话设置
  4. (可选)要将设置应用于某个部门或团队,请在侧边选择一个组织部门显示具体方法
  5. 转到网络
  6. 配置允许的身份验证服务器:
    1. 点击集成身份验证服务器
    2. 输入受 Kerberos 保护的网站的网址。凭有效票据,用户无需登录就能访问您所列出的服务器。
      注意:如需添加多个服务器的名称,请以英文逗号分隔。允许使用通配符 *。但不要在域名中添加通配符。例如,请勿在列表中添加 *example.com。以下是一个列表示例:*.example.com, example.com
    3. 点击保存
  7. (仅限用户和浏览器)配置允许使用哪些服务器进行委托:
    1. 点击 Kerberos 委托服务器
    2. 输入 Chrome 可委托的服务器的网址。
      注意:如需添加多个服务器名称,请以英文逗号分隔。允许使用通配符 *。
    3. 点击保存
  8. (仅限用户和浏览器)指定是否遵循密钥分发中心 (KDC) 政策以委托 Kerberos 票据:
    1. 点击 Kerberos 票据委托
    2. 根据需要选择操作步骤:
      • 遵循 KDC 政策
      • 忽略 KDC 政策
    3. 点击保存
  9. (仅限用户和浏览器)指定用于生成 Kerberos 服务主体名称 (SPN) 的名称的来源。
    1. 点击 Kerberos 服务主体名称
    2. 根据需要选择操作步骤:
      • 使用规范化 DNS 名称
      • 使用输入的原始名称
    3. 点击保存
  10. (仅限用户和浏览器)指定生成的 Kerberos SPN 是否应该包含非标准端口。
    1. 点击 Kerberos SPN 端口
    2. 根据需要选择操作步骤:
      • 包含非标准端口
      • 不包含非标准端口
    3. 点击保存
  11. (仅限用户和浏览器)指定是否允许页面上的第三方子内容弹出 HTTP 基本身份验证对话框。
    1. 点击跨域身份验证
    2. 根据需要选择操作步骤:
      • 允许跨域身份验证
      • 禁止跨域身份验证
    3. 点击保存

用户可执行的操作

添加票据

当用户尝试访问受 Kerberos 保护的资源时,可以选择添加票据,或选择在没有票据的情况下继续操作。

如需添加票据,请执行以下操作:

  1. 在框中,点击管理票据
  2. Kerberos 票据页面中,点击添加票据
  3. 输入您的 Active Directory 用户名和密码。
    注意:ChromeOS 仅支持 <用户>@<域名> 格式,不支持 <域名>/<用户> 格式。
  4. (可选)如需自动刷新票据,请选中记住密码复选框。
  5. (可选)修改配置文件:
    • 点击高级
    • 更改 Kerberos 配置信息,例如票据有效期、加密类型和网域 - 领域映射。有关详情,请参阅配置获取票据的方式
    • 点击保存
  6. 点击添加
  7. 重新加载您尝试查看的页面。

注意:Kerberos 需要用到特定 DNS 设置,尤其是 _kerberos_kerberos-master 服务的 SRV 记录。有关详情,请参阅下方的问题排查

设置有效票据

用户可在自己的 ChromeOS 设备上添加多个 Kerberos 票据。但在任一时段内,只能存在一个有效票据可用于身份验证。用户可以通过切换票据来访问要求不同授权级别的资源。例如,特定的内部网页可能会要求使用权限级别更高的 Kerberos 票据才能访问。

  1. 如果您尚未登录受管理的 ChromeOS 设备,请先登录。
  2. 选择右下角的时间。
  3. 点击“设置”图标
  4. 在“人员”部分,点击 Kerberos 票据
  5. 找到您要设为有效的票据。
  6. 点击右侧的“更多”图标 接着点按 设为当前所用票据

刷新票据和修改配置

默认情况下,票据的有效期为 10 小时。同时,用户在一个星期之内无需重新输入用户名和密码即可续用票据。一旦票据过期就无法自动刷新,届时系统会向用户发送一条消息,告知他们需要手动刷新票据。如果用户的有效票据过期了,那么在用户刷新票据前,将无法使用 Kerberos 身份验证。

  1. 如果您尚未登录受管理的 ChromeOS 设备,请先登录。
  2. 选择右下角的时间。
  3. 点击“设置”图标
  4. 在“人员”部分,点击 Kerberos 票据
  5. 找到您要刷新的票据。
  6. 点击刷新
    如果票据尚未过期,请点击右侧的“更多”图标 接着点按 立即刷新
  7. 输入您的 Active Directory 用户名和密码。
    注意:ChromeOS 仅支持 <用户>@<域名> 格式,不支持 <域名>/<用户> 格式。
  8. (可选)要自动刷新票据,请选中记住密码复选框。
  9. (可选)要修改配置文件,请执行以下操作:
    1. 点击高级
    2. 更改 Kerberos 配置信息,例如票据有效期、加密类型和网域 - 领域映射。有关详情,请参阅配置获取票据的方式
    3. 点击保存
  10. 点击刷新

移除票据

  1. 如果您尚未登录受管理的 ChromeOS 设备,请先登录。
  2. 选择右下角的时间。
  3. 点击“设置”图标
  4. 在“人员”部分,点击 Kerberos 票据
  5. 找到您要移除的票据。
  6. 点击右侧的“更多”图标 接着点按 从此设备中移除

配置获取票据的方式

用户可以在添加新票据或刷新现有票据时修改 Kerberos 配置,即 krb5.conf。与 Kerberos 密钥分发中心 (KDC) 交互的 ChromeOS 代码基于 MIT 的 Kerberos 库。要了解配置详情,请参阅 MIT Kerberos 文档。但并非所有选项都受支持。
下面列出了 ChromeOS 支持的选项:
关系
[libdefaults]

canonicalize

clockskew

default_tgs_enctypes

default_tkt_enctypes

dns_canonicalize_hostname

dns_lookup_kdc

extra_addresses

forwardable

ignore_acceptor_hostname

kdc_default_options

kdc_timesync

noaddresses

permitted_enctypes

preferred_preauth_types

proxiable

rdns

renew_lifetime

ticket_lifetime

Udp_preference_limit

[realms]

admin_server

auth_to_local

kdc

kpasswd_server

master_kdc

[domain_realm]

任意值

[capaths]

任意值

示例:请求不同的票据有效期

[libdefaults]

        ticket_lifetime = 16h

该示例请求将票据有效期设为 16 小时。票据在服务器端的有效期会受到限制,默认为 10 小时。

如要更改服务器端的限制,请执行以下操作:

  1. 打开组策略管理控制台。
  2. 转到设置 接着点按 安全设置 接着点按 账户策略 接着点按 Kerberos 策略
  3. 修改用户票证最长寿命策略。

示例:请求不同的票据有效期延续期限

[libdefaults]

        renew_lifetime = 14d

该示例请求将票据有效期设为可延续 14 天。票据在服务器端的有效期延续期限可能会受到限制,默认为 7 天。

如要更改服务器端的限制,请执行以下操作:

  1. 打开组策略管理控制台。
  2. 转到设置 接着点按 安全设置 接着点按 账户策略 接着点按 Kerberos 策略
  3. 修改用户票证续订最长寿命策略。

问题排查

通常,您可以在 Linux 上使用 kinit 命令行工具排查问题。ChromeOS 基于 Linux,而 Kerberos 票据实现使用 kinit。因此,如果您能在 Linux 上使用 kinit 获取 Kerberos 票据,那么也应该能在具有相同配置的 ChromeOS 上获取票据。

错误消息:KDC 不支持加密类型

Google 默认强制执行高强度 AES 加密。如果您看到有关加密类型的错误消息,可能是因为您的服务器环境并不完全支持 AES 加密。我们建议您修复此问题。

您也可以考虑从开发配置中移除 default_tgs_enctypesdefault_tkt_enctypespermitted_enctypes 这三行。这样就能启用 MIT Kerberos 文档中的所有加密类型,但标记为“低强度”的加密类型除外。请检查上述做法对安全性造成的影响,确保符合您的需求。因为某些加密类型不再属于高强度加密类型。

在确认所有加密类型都能正常工作后,建议您将 default_tgs_enctypesdefault_tkt_enctypespermitted_enctypes 的加密类型设为适当的子类型,从而尽可能降低安全风险。

错误消息:无法连接到指定领域的服务器

  1. 检查您输入的 Kerberos 用户名是否正确。
    Kerberos 用户名的形式为 user@example.com,由以下部分组成:
    • 用户登录名(也称为 sAMAccountName)
    • Kerberos 领域,通常与 Windows 域名相一致
  2. 确保网络连接设置正确。
    确保 ChromeOS 设备可以通过标准 Kerberos 端口 88 访问该服务器。
  3. 检查 DNS 设置是否正确。
    Kerberos 会请求特定 DNS SRV 记录,以查找 Kerberos 服务的 DNS 域名。例如,如果登录网域或领域是 example.com,且唯一 Kerberos 服务的 DNS 域名是 dc.example.com,则应添加以下 DNS SRV 记录:
服务 协议 优先级 权重 端口 目标(主机名)
_kerberos _udp.dc._msdcs 0 100 88 dc.example.com
_kerberos _tcp.dc._msdcs 0 100 88 dc.example.com
_kerberos _udp 0 100 88 dc.example.com
_kerberos _tcp 0 100 88 dc.example.com
_kerberos-master _udp.dc._msdcs 0 100 88 dc.example.com
_kerberos-master _tcp.dc._msdcs 0 100 88 dc.example.com
_kerberos-master _udp 0 100 88 dc.example.com
_kerberos-master _tcp 0 100 88 dc.example.com

如果您无法修改 DNS 设置,可以在 Kerberos 配置中添加映射。

例如:

[realms]

        EXAMPLE.COM = {

            kdc = dc.example.com

        master_kdc = dc.example.com

}

如果您仍然无法获取 Kerberos 票据,请收集系统日志。如有可能,还请收集 tcpdump 或 wireshark 日志。然后,与支持团队联系

错误消息:服务器无法识别用户名

请检查服务器的 Active Directory 数据库中是否存在相关用户的登录名。

错误消息:无法获取 Kerberos 票据。请重试或与贵单位的设备管理员联系。(错误代码 X)。

收集系统日志并与支持团队联系

相关主题

该内容对您有帮助吗?

您有什么改进建议?
搜索
清除搜索内容
关闭搜索框
主菜单
10749736588081616415
true
搜索支持中心
true
true
true
true
true
410864
false
false