适用于 Microsoft Intune 的 Microsoft Tunnel
Microsoft Tunnel 是一种 VPN 网关解决方案,适用于在 Linux 上的容器中运行的 Microsoft Intune,并允许使用新式身份验证和条件访问从 iOS/iPadOS 和 Android Enterprise 设备访问本地资源。
本文介绍核心Microsoft Tunnel、其工作原理及其体系结构。
如果你已准备好部署 Microsoft Tunnel,请参阅 Microsoft Tunnel 的先决条件和配置 Microsoft Tunnel。
部署 Microsoft Tunnel 后,可以选择添加 Microsoft Tunnel for Mobile Application Management (Tunnel for MAM) 。 用于 MAM 的 Tunnel 扩展了 Microsoft Tunnel VPN 网关,以支持运行 Android 或 iOS 且未注册Microsoft Intune的设备。 将 Microsoft Intune计划 2 或 Microsoft Intune Suite 作为附加许可证添加到租户时,可以使用 MAM 隧道。
注意
Microsoft Tunnel 不使用联邦信息处理Standard (FIPS) 合规算法。
Microsoft Tunnel 概述
Microsoft Tunnel 网关安装在 Linux 服务器上运行的容器中。 Linux 服务器可以是本地环境中的物理设备,也可以是在本地或云中运行的虚拟机。 若要配置 Tunnel,请将Microsoft Defender for Endpoint部署为 Microsoft Tunnel 客户端应用,并将 VPN 配置文件Intune到 iOS 和 Android 设备。 客户端应用和 VPN 配置文件使设备能够使用隧道连接到公司资源。 当隧道托管在云中时,需要使用 Azure ExpressRoute 等解决方案将本地网络扩展到云。
通过Microsoft Intune管理中心,你将:
- 下载在 Linux 服务器上运行的 Microsoft Tunnel 安装脚本。
- 配置 Microsoft Tunnel 网关的各个方面,例如 IP 地址、DNS 服务器和端口。
- 将 VPN 配置文件部署到设备,以引导其使用隧道。
- 将 Tunnel 客户端应用) Microsoft Defender for Endpoint (部署到设备。
通过 Defender for Endpoint 应用,iOS/iPadOS 和 Android Enterprise 设备:
- 使用 Microsoft Entra ID 对隧道进行身份验证。
- 使用 Active Directory 联合身份验证服务 (AD FS) 对隧道进行身份验证。
- 将根据你的条件访问策略进行评估。 如果设备不符合要求,则无法访问 VPN 服务器或本地网络。
可以安装多个 Linux 服务器以支持 Microsoft Tunnel,并将服务器合并到称为“站点”的逻辑组中。 每个服务器都可以加入单个站点。 配置站点时,将定义一个连接点,以便设备在访问隧道时使用。 站点需要定义并分配给站点 的服务器配置 。 服务器配置将应用于添加到该站点的每个服务器,从而简化更多服务器的配置。
若要引导设备使用隧道,可以创建和部署适用于 Microsoft Tunnel 的 VPN 策略。 此策略是使用 Microsoft Tunnel 作为其连接类型的设备配置 VPN 配置文件。
隧道的 VPN 配置文件的功能包括:
- 对最终用户可见的 VPN 连接的友好名称。
- VPN 客户端连接到的站点。
- 每应用 VPN 配置用于定义 VPN 配置文件用于哪些应用,以及是否始终启用。 当始终启用时,VPN 会自动连接,并且仅用于你定义的应用。 如果未定义任何应用,则始终启用连接会为来自设备的所有网络流量提供隧道访问。
- 对于Microsoft Defender for Endpoint配置为支持每应用 VPN 和 TunnelOnly 模式设置为 True 的 iOS 设备,用户无需打开或登录其设备上的Microsoft Defender即可使用 Tunnel。 相反,当用户登录到设备上的公司门户或使用具有有效访问令牌的多重身份验证的任何其他应用时,将自动使用 Tunnel per-app VPN。 iOS/iPadOS 支持 TunnelOnly 模式,并禁用 Defender 功能,仅保留 Tunnel 功能。
- 当用户启动 VPN 并选择“连接”时,手动连接到隧道。
- 允许在满足特定 FQDN 或 IP 地址的条件时使用 VPN 的按需 VPN 规则。 (iOS/iPadOS)
- 代理支持(iOS/iPadOS、Android 10+)
服务器配置包括:
- IP 地址范围 - 分配给连接到 Microsoft Tunnel 的设备的 IP 地址。
- DNS 服务器 - DNS 服务器设备在连接到服务器时应使用。
- DNS 后缀搜索。
- 拆分隧道规则 - 包含和排除路由最多可共享 500 条规则。 例如,如果创建 300 条包含规则,则最多可以有 200 条排除规则。
- 端口 - Microsoft Tunnel 网关侦听的端口。
站点配置包括:
- 公共 IP 地址或 FQDN,它是使用隧道的设备的连接点。 此地址可用于单个服务器,也可以是负载平衡服务器的 IP 或 FQDN。
- 应用于站点中每个服务器的服务器配置。
在 Linux 服务器上安装隧道软件时,请将服务器分配给站点。 安装使用可从管理中心下载的脚本。 启动脚本后,系统将提示你为环境配置操作,包括指定服务器要加入的站点。
若要使用 Microsoft Tunnel,设备必须安装 Microsoft Defender for Endpoint 应用。 从 iOS/iPadOS 或 Android 应用商店获取适用的应用,并将其部署给用户。
体系结构
Microsoft Tunnel 网关在 Linux 服务器上运行的容器中运行。
组件:
- A - Microsoft Intune。
- B- Microsoft Entra ID。
-
C –具有 Podman 或 Docker CE 的 Linux 服务器(有关哪些版本需要 Podman 或 Docker 的详细信息,请参阅 Linux 服务器要求)
- C.1 - Microsoft Tunnel 网关。
- C.2 - 管理代理。
- C.3 – 身份验证插件 – 授权插件,使用 Microsoft Entra 进行身份验证。
- D - Microsoft Tunnel 的面向公众的 IP 或 FQDN,可表示负载均衡器。
- E – 移动设备管理 (MDM) 使用 Tunnel for Mobile Application Management 注册的设备或未注册的移动设备。
- F - 防火墙
- G - 内部代理服务器(可选)。
- H - 公司网络。
- I - 公共 Internet。
操作:
- 1 - Intune 管理员配置服务器配置和站点,服务器配置与站点关联。
- 2 - Intune管理员安装Microsoft Tunnel Gateway,身份验证插件使用Microsoft Entra Microsoft Tunnel Gateway 进行身份验证。 Microsoft Tunnel 网关服务器被分配到站点。
- 3 - 管理代理与 Intune 通信以检索服务器配置策略,并将遥测日志发送到 Intune。
- 4 - Intune 管理员创建 VPN 配置文件,并将该文件和 Defender 应用部署到设备。
- 5 - 设备向Microsoft Entra进行身份验证。 评估条件访问策略。
-
6 - 使用拆分隧道:
- 6.a - 某些流量直接进入公共 Internet。
- 6.b - 某些流量进入 Tunnel 面向公众的 IP 地址。 VPN 通道将使用端口 443 上的 TCP、TLS、UDP 和 DTLS。 此流量需要打开入站和出站 防火墙端口 。
- 7 - Tunnel 将流量路由到内部代理(可选)和/或企业网络。 IT 管理员必须确保来自 Tunnel 网关服务器内部接口的流量可以成功路由到内部企业资源 (IP 地址范围和端口)。
注意
Tunnel 网关维护与客户端的两个通道。 通过 TCP 和 TLS 建立控制通道。 这还可用作备份数据通道。 然后,它将使用 DTLS(数据报 TLS,UDP 上 TLS 的一种实现)作为主数据通道来建立 UDP 通道。 如果 UDP 通道未能建立或暂时不可用,则使用 TCP/TLS 上的备份通道。 默认情况下,端口 443 同时用于 TCP 和 UDP,但这可通过 Intune 服务器配置 - 服务器端口设置进行自定义。 如果更改默认端口 (443),请确保入站防火墙规则已调整为自定义端口。
已分配的客户端 IP 地址 (Tunnel 服务器配置中的 IP 地址范围设置) 对网络上的其他设备不可见。 Microsoft Tunnel 网关使用端口地址转换 (PAT)。 PAT 是一种网络地址转换 (NAT),其中来自服务器配置的多个专用 IP 地址通过使用端口映射到单个 IP(多对一)。 客户端流量将具有 Linux 服务器主机的源 IP 地址。
中断和检查:
许多企业网络使用代理服务器、防火墙、SSL 中断和检查、深度数据包检查和数据丢失防护系统等技术来加强 Internet 流量的网络安全。 这些技术为常规 Internet 请求提供了重要风险缓解,但在应用于 Microsoft Tunnel 网关和 Intune 服务终结点时会显着降低性能、可伸缩性和最终用户体验的质量。
以下信息概述了不支持中断和检查的位置。 参考上一节中的体系结构图。
以下区域不支持中断和检查:
- 隧道网关不支持客户端连接的 SSL 中断和检查、TLS 中断和检查或深度数据包检查。
- 不支持使用防火墙、代理、负载均衡器或任何终止并检查进入 Tunnel Gateway 的客户端会话并导致客户端连接失败的技术。 (请参阅体系结构图中的 F、D 和 C)。
- 如果隧道网关使用出站代理进行 Internet 访问,则代理服务器无法执行中断和检查。 这是因为隧道网关管理代理在连接到 Intune (请参阅体系结构关系图中的 3) 时使用 TLS 相互身份验证。 如果在代理服务器上启用中断和检查,则管理代理服务器的网络管理员必须将 Tunnel 网关服务器 IP 地址和完全限定的域名 (FQDN) 添加到这些 Intune 终结点的审核列表中。
其他详细信息:
条件访问是在 VPN 客户端中完成的,基于云应用 Microsoft Tunnel 网关。 不符合要求的设备不会从Microsoft Entra ID接收访问令牌,并且无法访问 VPN 服务器。 有关将条件访问与 Microsoft Tunnel 结合使用的详细信息,请参阅结合使用条件访问和 Microsoft Tunnel。
使用 Azure 应用 ID/密钥对管理代理进行Microsoft Entra ID授权。