基本的GlobalProtect登录前配置
Symptom
文章提供了一个配置GlobalProtect使用预登录方法的门户和网关。
Environment
- 帕洛阿尔托防火墙
- 支持的 PAN-OS
- GlobalProtect
- 登录前
Resolution
什么是GlobalProtect与预登录?
正如名称中的“登录前”所暗示的那样,GlobalProtect在用户登录到机器“之前”连接。 预登录背后的想法是让“设备”连接到GlobalProtect网关,甚至在用户登录机器之前,最常见的是在用户登录之前连接某些内部资源或执行脚本。 例如,在 Windows 的情况下,GlobalProtect pre-logon 在系统仍在启动或处于 Ctrl+Alt+Del 屏幕时连接到网关,即在用户登录到计算机之前。 一旦用户注销该机器,预登录也会启动。 由于此时没有关联的用户,网关将看到此连接来自名为“pre-logon”的通用用户名。 一旦用户登录到计算机,隧道就会从“登录前”用户重命名(在 Windows 中)为登录的实际“用户”。 如果是MAC,隧道将与登录的实际用户重新建立。
- 预登录最常与“用户登录”和SSO所以这样GP连接对用户来说是无缝的。
- 由于这涉及两个称为“登录前”的用户和实际的“用户”,因此需要在门户下创建单独的客户端配置,一个用于“登录前”,另一个用于“任何/特定用户组”。 还需要单独的安全规则来为这两个用户提供访问权限。
- 一旦“实际用户”连接到GP(即用户登录),用户将看到一个“禁用”选项(如果管理员允许)以禁用GP需要时应用。
本文档解释了基本的GlobalProtect登录前的配置具有以下注意事项:
- 身份验证 - 本地数据库
- 与门户和网关相同的界面。
- 根证书、中间证书和服务器证书生成于 PAN
1.生成根CA, 中间的CA(可选),以及如下所述的服务器证书在这里记录.
2. 创建一个SSL/TLS简介下设备 > 证书管理 >SSL /TLS服务简介,引用上面创建的“服务器证书”。
3.在下面创建身份验证配置文件设备 > 身份验证配置文件并选择添加.
- 名称-为此身份验证配置文件命名
- 类型 - 选择本地数据库(您可以根据需要选择 ldap、radius 等)
- 高级选项卡 > 允许列表 > 添加- 全选(如果您有群组,您可以将其限制为所需的群组)
- 点击OK保存。
4.在下面创建隧道接口网络 > 接口 > 隧道. 提供隧道号、虚拟路由器和安全区域。
笔记:建议创建一个单独的区域VPN流量,因为它为创建单独的安全规则提供了更好的灵活性VPN交通。
配置GlobalProtect门户网站
5.配置GlobalProtect门户网站
- 一般的
- 验证
b.在“客户端身份验证”下选择添加.给它起任何名字,留下OS到“任何”,除非你想限制它。 在身份验证配置文件下,选择在步骤 3 中创建的身份验证配置文件。
C。点击OK保存。
笔记:必须满足以下 3 个条件之一才能进行预登录:
一世。门户包含“证书配置文件”但“无”身份验证 cookie
笔记:当 Portal/Gateway 在同一个时IP,网关证书配置文件将优先于门户证书配置文件。 如果需要 Portal Cert Profile,Portal/Gateway 必须位于不同的IP.
二.门户网站“不”包含“证书配置文件”,但具有“身份验证 cookie”。
(在这种情况下,第一个GP连接必须由用户建立,这将创建两个 cookie,一个用于“用户”,另一个用于“预登录”。 从那时起,预登录将起作用。)
(在没有用户连接的情况下第一次尝试“预登录”GP之前在这种情况下将不起作用,因为“登录前”cookie 只会在用户首次登录后生成。)
三.门户包含“证书配置文件”和“授权 cookie”。
- 代理人
笔记:如果在用户实际登录网关后需要单独的配置,则需要两个客户端配置:一个用于登录前,第二个用于任何用户/特定用户组。
- 登录前的客户端配置
- 添加登录前用户配置
一种。验证
- 为这个客户端配置命名
- 客户端证书 - 将其保留为无,仅当我们想要将任何客户端证书推送给客户端以进行身份验证时才需要。
- 保存用户凭据 - 是(默认)
- (可选)身份验证覆盖:选中“为身份验证覆盖生成 cookie”和“为身份验证覆盖接受 cookie”。 可以使用从“用于加密/解密 Cookie 的证书”下拉列表中选择的任何证书来加密/解密此 Cookie '.
b. 用户/用户组
- 从下拉菜单中选择“登录前”
IMPORTANT!
C。外部的
- 在“外部网关”下,单击添加.给它起任何名字。
- 地址- 输入IP地址或FQDN这是在证书通用名称中引用的(CN ) 或主题别名 (SAN ) 的第 1 步。 在此示例中,我们输入“gp.portal-gw01.local”
d.App
- 在“连接方法”下拉菜单中,选择“登录前(始终开启) '.
e.点击OK保存。
- 实际用户的客户端配置
- 添加新的客户端配置
一种。验证
- 为这个客户端配置命名
- 客户端证书 - 将其保留为无,仅当我们想要将任何客户端证书推送给客户端以进行身份验证时才需要。
- 保存用户凭据 - 是(默认)
- (可选)身份验证覆盖:选中“为身份验证覆盖生成 cookie”和“为身份验证覆盖接受 cookie”。 可以使用从“用于加密/解密 Cookie 的证书”下拉列表中选择的任何证书来加密/解密此 Cookie '.
IMPORTANT!
C。外部的
- 在“外部网关”下,点击添加.给它起任何名字。
- 地址- 输入IP地址或FQDN这是在证书通用名称中引用的(CN ) 或主题别名 (SAN ) 的第 1 步。 在此示例中,我们输入“gp.portal-gw01.local”
d. App
- 在“连接方法”下拉列表中,选择“预登录(始终开启)”。
- 此外,确保“单点登录”设置为“是”。
e.点击OK保存。
F。 在“受信任的根”下CA', 选择根CA和中间CA. 此外,选择“安装在本地根证书存储”以在客户端首次成功连接到门户后将这些证书安装在客户端的本地根证书存储中。
G。点击OK保存并关闭GlobalProtect门户配置。
配置客户端证书配置文件
(地点:设备 > 证书管理 > 证书配置文件)
证书配置文件指定 CA 和中间 CA 的列表。 当此证书配置文件应用于配置时,门户/网关将向客户端发送客户端证书请求以请求由CA/中间的CA在证书配置文件中指定。 我们建议在此配置文件中同时放置根 CA 和中间 CA,而不仅仅是根CA.
IMPORTANT!
客户证书是指用户证书, 它可以用于'用户登录'/'按需'连接方法。 习惯于验证用户。
机器证书是指设备证书, 它可以用于'登录前'连接方法。 这是用来验证设备,而不是用户。
- 导入“根CA”将客户端/机器证书签署到设备>证书管理>证书(可选私钥)
- 导入“中间 CA”(如果有)将客户端/机器证书签名到设备>证书管理>证书(可选私钥)
- 转到设备>证书管理>证书配置文件,添加。
- 为配置文件命名。
- 添加上述根 CA 和中间 CA。
- 笔记:默认情况下,用户名字段设置为“无”,在用户名从 ldap/radius 身份验证中提取的典型设置中,您可以将其保留为无。 另一方面,如果证书是唯一的身份验证方法,即如果您没有用于门户/网关身份验证的 radius/ldap,那么您必须将用户名字段从无更改为“Subj”或“Subj Alt”以从客户端证书中提取用户名常用名或电子邮件/委托人姓名。 不这样做将导致提交失败。
- (可选)检查CRL或者OCSP如果门户/网关需要使用验证客户端/机器证书的吊销状态CRL或者OCSP. 请谨慎使用,因为如果与“证书状态未知时阻止会话”一起使用,可能会导致客户端无法连接。
- 根据需要引用此证书配置文件门户/网关。
配置GlobalProtect网关
6.转到网络>GlobalProtect > 网关并选择添加。
- 一般的 -为网关命名并从下拉列表中选择用作网关的接口。
- 身份验证选项卡. 这类似于步骤 6,但这是针对网关的。
一种。在下面SSL/TLS服务配置文件,选择SSL/TLS从下拉列表中选择在步骤 2 中创建的配置文件。
b.客户端身份验证 > 添加。给它起任何名字,留下OS除非您想限制它,否则为“任何”。 在身份验证配置文件下,选择在步骤 3 中创建的身份验证配置文件。
C。从下拉列表中选择上面创建的证书配置文件
d.点击OK保存。
- 代理选项卡.
一种。隧道设置。 选中“隧道模式”以启用隧道模式并从下拉列表中选择在步骤 4 中创建的隧道接口。
b.启用 IPSec . 选中此框以启用 IPSec,这是强烈推荐。启用此设置后,GP将始终尝试首先通过 IPSec 连接,如果失败则GP回落到SSL.
C。超时设置 - 将它们保留为默认值。 有关对此的任何更改,请参阅GP管理员指南。
d.客户端设置
单击添加> 为客户端设置配置命名
(选修的)身份验证覆盖: 勾选 '为身份验证覆盖生成 cookie”和“为身份验证覆盖接受 cookie”。
可以使用从“用于加密/解密 Cookie 的证书”下拉列表中选择的任何证书来加密/解密此 Cookie '.
笔记:如果在门户下的第 7 步中选择了证书,则需要在网关“用于加密/解密 cookie 的证书”下选择相同的证书。
e.配置选择标准选项卡。 离开OS和用户组为“任何”(如果需要,您可以将其限制为所需的组)。
IMPORTANT!
如果从下拉列表中选择了一个组,请确保GlobalProtect用户是这个组的一部分,如果不是,客户端将NOT收到IP来自网关的地址。
这里的常见问题是当用户被识别时GlobalProtect作为“域\用户”但是firewall的 userid 可能将其设置为“完全合格的域\用户”,在这些情况下,通过覆盖用户标识>组映射中的域字段,确保组/用户在两个地方显示相同。
F。网络设置。
在 IP 池下:
IMPORTANT!
- GlobalProtect 网关将从此池中的 IP 分配给客户端。 指定一个或多个IP泳池范围DO NOT OVERLAP与组织中的任何现有网络。 重叠的子网会导致路由问题和网络中断。
- (可选但推荐)您可以添加第二个IP用于备份的池范围,这在用户连接提供相同功能的 wifi 的情况下很有用IP游泳池范围作为您的主要IP水池。
G。拆分隧道 > 访问路径. 这定义了可以访问哪些子网GP客户端连接到网关后。
- 如果 'Include' 留空,则将其视为0.0.0.0/0即所有流量来自GP客户将被迫通过GP隧道。
- 对于拆分隧道:指定所需的内部子网,如 10.0.0.0/8、192.168.x.0/24 等,以便GP客户端将使用隧道仅到达这些子网。 这些子网之外的任何内容都将直接从客户端的本地网络访问,这称为拆分隧道。
H。点击OK保存并关闭客户端设置。 多一个OK保存并关闭GP网关设置。
7.在下面创建一个本地用户名/密码设备 > 本地用户数据库 > 用户用于检测。
8.创建安全和NAT新成立的政策VPN区域以适当地授予访问权限。
9. 提交更改。
在终端客户端安装客户端/机器证书
这是预登录,因此我们需要使用“机器”证书。
导入机器证书时,将其导入PKCS将包含其格式私钥.
窗户 -
1. 单击开始 > 运行,键入 mmc 打开 Microsoft 证书管理控制台。
2. 转到文件 > 添加/删除管理单元
IMPORTANT!
3. 单击证书 > 添加并选择以下一项或两项:
一种。加上机器(装置)证书,选择“计算机帐户'. 这用于 '登录前' 因为它验证机器.
4.将机器证书导入mmc。
对于导入机器证书,将其导入到“计算机帐户”下的“个人”文件夹中
5.同样导入RootCA在“中间证书颁发机构”中的“受信任的根证书颁发机构和中间 CA(如果有)”
IMPORTANT!
6.导入后,双击导入的机器证书,确定
一种。它有私钥
b.它的证书链已满直到它的根CA. 如果链缺少根CA或中间CA,按照步骤 5 中的说明将它们导入各自的文件夹。
7. 此时证书已在客户端导入,您可以关闭 mmc 控制台而不保存它。
在客户端机器上测试
1. 从浏览器转到https://gp.portal-gw01.local/即 https://<portal-ip/fqdn>
2. 输入凭据
3.下载GP客户
4. 在GP客户端,输入Portal地址和凭证,点击连接。
5.在网关上firewall,您将看到实际用户已连接。
6. 从该计算机注销以模拟登录前的情况
7.关于网关firewall,您将看到预登录用户已连接。
8.用实际用户名登录电脑,
9.关于网关firewall,您将看到预登录被重命名为实际用户。