本机 OTP 支持身份验证

Citrix 网关支持一次性密码 (OTP),而无需使用第三方服务器。一次性密码是一种高度安全的选项,用于对服务器进行身份验证,因为生成的号码或密码是随机的。以前,OTP 由专业公司提供,例如 RSA 提供具有生成随机数的特定设备的 RSA。此系统必须与客户端保持持续通信,才能生成服务器预期的数字。

除了降低资本和运营开支外,此功能还通过将整个配置保留在 Citrix ADC 设备上,增强了管理员的控制能力。

注意事项

由于不再需要第三方服务器,Citrix ADC 管理员必须配置接口来管理和验证用户设备。

必须向 Citrix 网关虚拟服务器注册用户才能使用 OTP 解决方案。每个唯一设备只需要注册一次,并且可以限制在某些环境中。配置和验证注册用户类似于配置额外的身份验证策略。

拥有本地 OTP 支持的优势

  • 除 Active Directory 之外,无需在身份验证服务器上拥有额外的基础结构,从而降低运营成本。
  • 仅将配置整合到 Citrix ADC 设备,从而为管理员提供极好的控制权。
  • 消除了客户端依赖额外的身份验证服务器来生成客户端预期的数字。

本地 OTP 工作流程

本机 OTP 解决方案是一个双重过程,工作流程分类如下:

  • 设备注册
  • 最终用户登录

重要

如果您正在使用第三方解决方案或管理 Citrix ADC 设备以外的其他设备,则可以跳过注册过程。添加的最后一个字符串必须采用 Citrix ADC 指定的格式。

下图描述了注册新设备以接收 OTP 的设备注册流程。

本地化后的图片

注意事项

设备注册可以使用任意数量的因素来完成。单一因素(如上图所述)用作解释设备注册过程的示例。

下图描述了通过注册设备验证 OTP 的情况。

本地化后的图片

必备条件

要使用本机 OTP 功能,请确保满足以下先决条件。

  • 思杰 ADC 功能发布版本为 12.0 版本 51.24 及更高版本。
  • Citrix Gateway 配置了管理 IP,并且可以使用浏览器和命令行访问管理控制台。
  • Citrix 网关上安装了适当的许可证。
  • Citrix ADC 配置了身份验证、授权和审核虚拟服务器,以对用户进行身份验证。
  • Citrix ADC 设备配置了统一网关,并将身份验证、授权和审核配置文件分配给网关虚拟服务器。
  • 本机 OTP 解决方案仅限于 nF因子身份验证流。配置解决方案需要高级策略。有关更多详细信息,请参阅文章CTX222713

还要确保 Active Directory 的以下内容:

  • 最小属性长度为 256 个字符。
  • 属性类型必须是 “目录字符串”,如用户参数。这些属性可以包含字符串值。
  • 如果设备名称为非英文字符,则属性字符串类型必须为 Unicode。
  • Citrix ADC LDAP 管理员必须具有对所选 AD 属性的写入权限。
  • Citrix ADC 设备和客户端计算机必须同步到公共网络时间服务器。

使用 GUI 配置本机 OTP

本机 OTP 注册不仅仅是单一因素身份验证。以下部分帮助您配置单因素和第二因素身份验证。

为第一因素创建登录架构

  1. 导航到 安全 AAA > 应用程序流量 > 登录架构
  2. 转到 配置文件 ,然后单击 添加
  3. 在 “ 创建身份验证登录架构 ” 页上,在 “ 名称 ” 字段下输入 lschema_first_factor ,然后单击 “ 无架构 ” 旁边的 “ 编辑 ”。
  4. 单击 登录架构 文件夹。
  5. 向下滚动以选择 单个 Auth.xml ,然后单击 选择
  6. 点击 创建
  7. 单击 策略 ,然后单击 添加
  8. 在 “ 创建身份验证登录架构策略 ” 屏幕上,输入以下值。

    名称: 第一因子 配置文件: 从下拉列表中选择第一因子。 规则: HTTP.REQ. 曲奇价值 (“NSC_TASS”) .EQ (“管理程序”)

配置身份验证、授权和审核虚拟服务器

  1. 导航到 安全 > AAA-应用程序流量 > 身份验证虚拟服务器。单击以编辑现有 vServer。
  2. 单击右侧窗格的 “ 高级设置 ” 下 登录架构 旁边的 + 图标。
  3. 选择 无登录架构
  4. 单击箭头并选择 lschema_第一因子 策略。
  5. 选择 “ 优先因子” 策略,然后单击 “ 选择 ”。
  6. 点击 绑定
  7. 向上滚动并在 高级 **身份验证策略下选择 1 个身份验证策略** 。
  8. 右键单击 nF因子策略 并选择 编辑绑定
  9. 单击 “ 选择下一个因子” 下的 “ **+ ” 图标,** 创建下一个因子,然后单击 “ 绑定 ”。
  10. 在 “ 创建身份验证策略标签 ” 屏幕上,输入以下内容,然后单击 “ 继续 ”:

    名称:OTP 管理因素

    登录架构:Lschema_Int

  11. 身份验证策略标签 屏幕上,单击 + 图标以创建策略。

  12. 在 “ 创建身份验证策略 ” 屏幕上,输入以下内容:

名称。管理人员的名称

  1. 使用 “操作类型” 下拉列表选择 “ 操作类型 ”。
  2. 作字段中,单击 + 图标以创建操作。
  3. 在 “ 创建身份验证 LDAP 服务器 ” 页面中,选择 “ 服务器 IP ” 单选按钮,取消选中 “ 身份验证 ” 旁边的复选框,输入以下值,然后选择 “ 测试连接 ”。

名称:无身份验证

IP 地址:

基础 DN:DC= 培训,DC=实验室

署长:Administrator@training.lab

密码:二十三

  1. 向下滚动到 “其 他设置” 部分。使用下拉菜单选择以下选项。

    “ 服务器登录名称属性 ” 为 “ 新建 ” 并键入 用户主体名称

  2. 使用下拉菜单选择 SSO 名称属性 作为 新建 并键入用 户主体名称
  3. OTP 密 码字段中输入 “用户参数”,然后单击 更多
  4. 输入以下属性。

    属性 1 = 邮件 属性 2 = 对象编号 属性 3 = 不可变的编号

  5. 点击 确定
  6. 在 “ 创建身份验证策略 ” 页上,将表达式设置为 true ,然后单击 “ 创建 ”。
  7. 在 “ 创建身份验证策略标签 ” 页上,单击 “ 绑定 ”,然后单击 “ 完成”。
  8. 策略绑 定页面上,单击 绑定
  9. 在 “ 身份验证策略 ” 页上,单击 “ 关闭 ”,然后单击 “ 完成 ”。

注意事项

身份验证虚拟服务器必须绑定到 RFwebui 门户主题。将服务器证书绑定到服务器。服务器 IP ‘1.2.3.5’ 必须具有相应的 FQDN,即 Otpauth.server.com,供以后使用。

为第二因子 OTP 创建登录架构

  1. 导航到 安全 > AAA-应用程序流量 > 虚拟服务器。选择要编辑的虚拟服务器。
  2. 向下滚动并选择 1 个登录架构
  3. 点击 添加绑定
  4. 策略绑定 部分下,单击 + 图标以添加策略。
  5. 在 “ 创建身份验证登录架构策略 ” 页上,输入名称为 OTP,然后单击 + 图标创建配置文件。
  6. 在 “ 创建身份验证登录架构 ” 页上,输入名称为 OTP,然后单击 noschema 旁边的图标。
  7. 单击 登录架构 文件夹,选择 双重授权 .xml ,然后单击 选择
  8. 点击 创建
  9. 在 “ 规则 ” 部分中,输入 “ ”。点击 创建
  10. 单击 Bind(绑定)。
  11. 注意身份验证的两个因素。单击 关闭 并单击 完成

配置用于管理 OTP 的内容交换策略

如果您使用的是统一网关,则需要以下配置。

  1. 导航到 流量管理 > 内容切换 > 策略。选择内容切换策略,右键单击,然后选择 “ 编辑”。

  2. 编辑表达式以评估以下或语句,然后单击 “ 确定”:

是网址   包含(“管理程序”)

使用 CLI 配置本机 OTP

您必须具有以下信息才能配置 OTP 设备管理页面:

  • 分配给身份验证虚拟服务器的 IP
  • 与分配的 IP 对应的 FQDN
  • 身份验证虚拟服务器的服务器证书

注意事项

本机 OTP 仅是基于 Web 的解决方案。

配置 OTP 设备注册和管理页面

创建身份验证虚拟服务器

> 添加身份验证虚拟服务器授权与 SSL 1.2.3.5 443
> 绑定身份验证 v服务器authvs-门户主题 RFwebui
> 绑定 SSL 虚拟服务器授权与-证书键名称

注意事项

身份验证虚拟服务器必须绑定到 RFwebui 门户主题。必须将服务器证书绑定到服务器。服务器 IP ‘1.2.3.5’ 必须具有相应的 FQDN,即 Otpauth.server.com,供以后使用。

创建 LDAP 登录操作

add authentication ldapAction <LDAP ACTION NAME> -serverIP <SERVER IP> - serverPort <SERVER PORT> -ldapBase <BASE> -ldapBindDn <AD USER> -ldapBindDnPassword <PASSWO> -ldapLoginName <USER FORMAT>

示例

添加身份验证 LDap_logon_action-服务器ip 1.2.3.4-服务器端口 636-LDAPBase “OU= 用户,DC= 服务器,DC=COM”-LDAPINDDN administrator@ctxnsdev.com-LDAPINDIN 密码密码-LDAPINN 名用户主体名称

添加 LDAP 登录的身份验证策略

添加身份验证策略认证-规则真实-动作

通过登录模式显示 UI

在登录时向用户显示用户名字段和密码字段

添加身份验证登录模式单个管理模式-身份验证模式 “/NSfig/ 登录模式/登录模式/单个授权管理模式”

显示设备注册和管理页面

Citrix 推荐两种显示设备注册和管理屏幕的方法:URL 或主机名。

  • 使用网址

    当 URL 包含 ‘/管理器’

    • add authentication loginSchemaPolicy lpol_single_auth_manage_otp_by_url -rule "http.req.cookie.value(\"NSC_TASS\").contains(\"manageotp\")" -action lschema_single_auth_manage_otp
    • bind authentication vserver authvs -policy lpol_single_auth_manage_otp_by_url -priority 10 -gotoPriorityExpression END
  • 使用主机名

    当主机名是 ‘其他服务器 .com’ 时。

    • add authentication loginSchemaPolicy lpol_single_auth_manage_otp_by_host -rule "http.req.header(\"host\").eq(\"alt.server.com\")" -action lschema_single_auth_manage_otp
    • bind authentication vserver authvs -policy lpol_single_auth_manage_otp_by_host -priority 20 -gotoPriorityExpression END

使用 CLI 配置用户登录页面

您必须具有以下信息才能配置 “用户登录” 页:

  • 负载平衡虚拟服务器的 IP
  • 负载平衡虚拟服务器的相应 FQDN
  • 负载平衡虚拟服务器的服务器证书

注意事项

重用现有身份验证虚拟服务器 (authvs) 进行双重身份验证。

创建负载平衡虚拟服务器

> 添加磅虚拟服务器 Lbvs_https SSL 1.2.3.162 443-持久性类型无-连续性超时 180-身份  验证主机网站。服务器网站上的身份验证-身份验证
> 绑定 SSL 虚拟服务器 Lbv_https-证书密钥名称

负载平衡中的后端服务表示如下:

> 添加服务器服务器服务器服务器服务器服务器服务器服务器
> 绑定磅虚拟服务器连接服务器连接

创建 OTP 密码验证操作

add authentication ldapAction <LDAP ACTION NAME> -serverIP <SERVER IP> -serverPort <SERVER PORT> -ldapBase <BASE> -ldapBindDn <AD USER> -ldapBindDnPassword <PASSWORD> -ldapLoginName <USER FORMAT> -authentication DISABLED -OTPSecret <LDAP ATTRIBUTE>

示例:

添加身份验证 LDAP_otp_action-服务器端口 1.2.3.4-服务器端口 636-LDAPBase “OU= 用户, DC= 服务器, DC=COM”-LDAPBINDDN administrator@ctxnsdev.com-LDAPIND 密码密码-LDAPIND 用户主体名称-身份验证禁用-OTPING 用-OTEL 用户参数

重要

LDAP 登录和 OTP 操作之间的区别在于需要禁用身份验证并引入一个新的参数 “OtPSecret”。不得使用 AD 属性值。

添加 OTP 密码验证的身份验证策略

> 添加身份验证策略验证-规则真实-动作

通过登录架构呈现双重身份验证

添加用于双重身份验证的 UI。

> 添加身份验证登录架构 lscheme_dual_因子/身份验证架构 “/NSconfig/登录计划/dualauth.xml”

> 添加身份验证登录模式-双重因子-规则真实-行动-双重因子-因子

通过策略标签创建密码验证系数

为下一个因素创建管理 OTP 流策略标签(第一个因素是 LDAP 登录)

> 添加身份验证登录模式 lschema_noschema-身份验证模式无模式

> 添加身份验证策略标签管理 _ 流量 _ 标签 _ 登录模式

将 OTP 策略绑定到策略标签

绑定身份验证策略标签管理 _otp_flow_ 标签-策略名称认  证 _ 抽签 _ 验证-优先级 10-注册表达式下一步

绑定 UI 流

绑定 LDAP 登录,然后使用身份验证虚拟服务器进行 OTP 验证。

> 绑定身份验证 v服务器authvs-策略认证 _pol_ldap_logon-优先级 10-下一个因素  管理 _otp_flow_ 标签-表达式下一步

> 绑定身份验证 v服务器authvs 策略 lpol_dual_因子-优先级 30-目标表达式结束

将您的设备注册到思杰 ADC

  1. 导航到您的 Citrix ADC FQDN(第一个面向公众的 IP),并带有 /管理otp 后缀。例如,使用用户凭据https://otpauth.server.com/manageotp 登录。
  2. 单击 + 图标以添加设备。

    本地化后的图片

  3. 输入设备名称,然后按 Go。屏幕上显示条形码。
  4. 单击 开始设置 ,然后单击 扫描条形码
  5. 将设备相机悬停在 QR 码上。您可以选择输入 16 位代码。

    本地化图像

  6. 扫描成功后,您会看到一个可用于登录的 6 位数时间敏感的代码。

    本地化后的图片

  7. 要进行测试,请点击 QR 屏幕上的 “ 完成 ”,然后点击右侧的绿色复选标记。
  8. 从下拉菜单中选择您的设备,然后输入 Google 身份验证器中的代码(必须为蓝色,不是红色),然后单击 “ 到”。
  9. 请确保使用页面右上角的下拉菜单注销。

使用 OTP 登录到 Citrix ADC

  1. 导航到您的第一个面向公众的 URL,然后从 Google 身份验证器输入您的 OTP 进行登录。
  2. 对 Citrix ADC 启动页面进行身份验证。

    本地化后的图片