在pfSense中将Google Cloud Identity配置为身份认证的来源

本文摘要Secure LDAP 服务提供了一种将基于 LDAP 的应用程序和服务连接到 Cloud Identity 或 G Suite 的简单而安全的方法。 使用安全 LDAP,您可以将 Cloud Directory 用作基于云的 LDAP 服务器,进行身份验证、授权和目录查找。连接到 Secure LDAP 服务的基于 LDAP 的应用程序(例如 Atlassian Jira)和 IT 基础设施(例...

Secure LDAP 服务提供了一种将基于 LDAP 的应用程序和服务连接到 Cloud Identity 或 G Suite 的简单而安全的方法。
使用安全 LDAP,您可以将 Cloud Directory 用作基于云的 LDAP 服务器,进行身份验证、授权和目录查找。连接到 Secure LDAP 服务的基于 LDAP 的应用程序(例如 Atlassian Jira)和 IT 基础设施(例如 VPN 服务器),可以部署在本地或基础设施即服务平台(如 Google Compute Engine、AWS 或 Azure)上。
您可以使用 Secure LDAP 来减少传统目录服务器的占用空间,将应用程序直接指向 Secure LDAP

Google Cloud Identity LDAP 服务 可用于在 pfSense 上对用户进行身份验证。
方法取决于防火墙上安装的 pfSense 软件版本。这是因为 Google Cloud Identity 需要客户端证书才能建立 Secure LDAP 连接。
运行 pfSense 2.4.4-RELEASE-p1 或更高版本的防火墙可以直接在 LDAP 身份验证源上使用客户端证书。
运行 pfSense CE 或 pfSense 2.4.4-RELEASE 的防火墙需要 stunnel 插件才能建立 Secure LDAP 连接。

配置运行 pfSense 软件以使用 GSuite LDAP 身份验证需要执行一些额外步骤,本文将逐一介绍。

配置步骤概览

  • 在 GSuite 管理门户上配置 LDAP 应用程序
  • 下载证书、密钥、用户名和密码
  • 导入证书和密钥
  • 安装 stunnel pfSense 插件(CE 或 2.4.4-RELEASE)
  • 配置 stunnel 插件(CE 或 2.4.4-RELEASE)
  • 在 pfSense 上配置 LDAP 身份验证
  • 创建一个组
  • 测试 GSuite 身份验证
  • 使用 GSuite 进行 pfSense 管理登录

在 GSuite 管理门户上配置 LDAP 应用程序

按照 Google 的说明 配置和启用 GSuite LDAP 应用程序
注意: 完全照做。pfSense 无需特殊规定,但请注意 LDAP 应用程序的凭据(用户名和密码)是必需的。

下载证书、密钥、用户名和密码

将证书、密钥、用户名和密码从 GSuite 下载到工作站上的本地目录。

导入证书和密钥

进入 pfSense 防火墙的 Web 界面:

  • 导航到 系统 > 证书管理证书 选项卡
  • 单击 添加/签名 添加/签名 以显示证书导入界面
  • 方法 更改为 导入现有证书
  • 输入 描述性名称,例如 GSuite LDAP
  • 将下载的证书内容复制并粘贴到 证书数据 框中
  • 将下载密钥的内容复制并粘贴到 私钥数据 框中
  • 点击 保存

该证书现在可供防火墙使用。下一步取决于防火墙安装的 pfSense 软件版本。对于 pfSense CE 或 pfSense 2.4.4-RELEASE,需要 stunnel 插件进行 Secure LDAP 连接。对于 pfSense 2.4.4-RELEASE-p1 或更高版本,LDAP 身份验证源可以直接使用客户端证书。

安装 stunnel pfSense 软件包(CE 或 2.4.4-RELEASE)

从 pfSense 的 Web 界面:

  • 导航到 系统 > 插件管理已安装的插件 选项卡
  • 检查 stunnel 是否已安装
  • 如果插件已安装且版本为 5.37 或更高,则无需操作
  • 如果插件已安装但已过期:

    • 单击 刷新 更新插件
    • 单击 确认更新 确认更新
  • 如果没有安装 stunnel:

    • 导航到 可用的插件 选项卡
    • 在列表中找到 stunnel 插件,或使用搜索栏
    • 单击 安装 安装 stunnel 插件
    • 单击 确认安装 确认安装

配置 stunnel 插件(CE 或 2.4.4-RELEASE)

从 pfSense 的 Web 界面:

  • 导航到 系统服务 > STunnel
  • 单击 添加 添加 以创建新配置文件
  • 输入此连接的描述,例如 GSuite
  • 勾选 客户端模式
  • 侦听 IP 设置为 127.0.0.1
  • 侦听端口 设置为 1636
  • 证书 设置为先前导入的条目,本例中为 GSuite LDAP
  • 设置 重定向 IPldap.google.com
  • 设置 重定向端口636
  • 单击 保存

在 pfSense 上配置 LDAP 身份验证

从 pfSense 的 Web 界面:

  • 选择 系统 > 用户管理器验证服务器 选项卡
  • 单击 添加 添加 以创建新条目
  • 输入此 LDAP 服务器的描述性名称,例如 GSuite
  • 类型 设置为 LDAP
  • 服务器设置 取决于 pfSense 版本:

    • 对于 pfSense 2.4.4-RELEASE-p1 或更高版本

      • 主机名或 IP 地址ldap.google.com
      • 端口值636
      • 传送SSL – Encrypted
      • 对等证书颁发机构Global Root CA List
      • 客户端证书:先前导入的条目,本例中为 GSuite LDAP
    • 对于使用 stunnel 插件的 pfSense CE 或 2.4.4-RELEASE

      • 主机名或 IP 地址127.0.0.1
      • 端口值1636
      • 传送TCP-Standard
  • 协议版本3
  • 服务器超时25
  • 搜索范围整个树

接下来的几个设置 因域而异。本文以 example.com 为例。
警告:输入这些值时请替换为实际域名!

  • Base DN:按 DN 格式填写域名,例如 dc=example,dc=com
  • 身份验证容器:Base DN 前的组织单位 Users,例如 ou=Users,dc=example,dc=com
  • 取消选中 匿名绑定 框,以显示 绑定凭据 字段
  • 绑定凭据:使用创建证书时对应的 GSuite LDAP 用户名和密码

其余属性与域无关,或为默认值:

  • 用户命名属性uid
  • 组命名属性cn
  • 组成员属性memberOf

创建组

使用远程认证服务器管理 pfSense 上的服务管理登录时,认证源服务器和防火墙上都必须存在匹配的组。
可以使用现有 admins 组,但名称太通用,可能与 GSuite 中的其他权限冲突。
本例使用新组 fwadmins

首先,在 GSuite 中创建 fwadmins 组并将用户分配进去。具体细节取决于域名和结构。

接下来,在运行 pfSense 软件的防火墙上创建一个组。不需要本地用户,只需要组条目,且必须拥有适当权限。

在 pfSense 上创建组:

  • 导航到 系统 > 用户管理 选项卡
  • 单击 添加 添加 以创建新组
  • 组名称:例如 fwadmins
  • 范围远程
  • 说明:例如 远程防火墙管理员
  • 单击 保存

现在为组分配权限:

  • 在新创建的组所在行,单击 编辑
  • 分配权限 部分,单击 添加 添加
  • 选择组所需的权限,例如 WebCfg – All pages不要选择所有项目!
  • 同时选择会阻止该组成员更改配置的权限,例如 User - Config: Deny Config Write
  • 单击 保存 存储权限

测试 GSuite 认证

完成上述配置后,即可测试 Google GSuite LDAP 身份验证。

  • 导航到 系统诊断 > 认证
  • 认证服务器 设置为 LDAP 服务器条目的名称,例如 GSuite
  • 输入 GSuite 域中的已知用户名和密码。默认情况下,仅根据配置的 LDAP Base DN 检查登录名部分
  • 如果使用包含域部分的用户名提交(如 user@example.com),@example.com 部分将被忽略
  • 单击 测试 测试

用户应成功通过身份验证。如果用户是 GSuite 中 fwadmins 组的成员,测试输出中也会体现。
测试成功后,该服务即可使用。pfSense 可以将其用作 GUI、VPN 或任何需要用户认证的地方的身份验证源。

如果测试失败,请检查主系统日志中来自 LDAP 的错误消息。从本文档开头开始,逐一核对本文档、GSuite 和 pfSense 之间的所有设置。
最常见的问题是:参数输入错误,例如选错证书、LDAP 属性名称不正确,或绑定凭据有误。

使用 GSuite 进行 pfSense 管理登录

如果一切正常且用户按预期通过了身份验证:

  • 导航到 系统 > 用户管理设置
  • 认证服务器 设置为 GSuite
  • 单击 保存

保存后,防火墙用户将通过 Google Cloud Identity 进行身份验证。
注意: 如果所选 LDAP 服务器无法验证,pfSense 会自动回退到本地身份验证。

原文地址

觉得内容不错?我要

评论 暂无评论
暂无评论,快来抢沙发吧~