如何将 Linux 机器连接到 Azure AD 认证的 VPN?

如何将 Linux 机器连接到 Azure AD 认证的 VPN?

我一直为此而烦恼 - 一个客户正在使用 Azure VPN 设置,但似乎只能与 Azure VPN 客户端应用程序完美配合。它在该软件上运行良好,但我需要使用 Linux 来完成工作。在 Linux 上有什么可以连接到它吗?

我尝试过各种 Strongswan/IKE、OpenVPN 和 PPTP/SSTP 配置和解决方案。不幸的是,很难知道我是否只差一个配置就能成功,还是完全偏离了重点。希望我是在胡说八道,而不是微软在帮倒忙。

除了 VpnServerRoot.cer 文件之外,Azure 还向我提供了 VpnSettings 文件夹,其格式如下(详细信息不明显):

<VpnProfile>
  <VpnServer>azuregateway-aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa-aaaaaaaaaaaa.vpn.azure.com</VpnServer>
  <VpnType>OpenVPN</VpnType>
  <CaCert>aaaaaaaaaaaaaaaaaaaaaaaaetc=</CaCert>
  <Routes>10.0.1.0/24,10.0.2.0/24</Routes>
  <Auth>EAPTLS</Auth>
  <VnetName>foobar</VnetName>
  <VnetId>aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa</VnetId>
  <ServerCertRootCn>Foo Root CA</ServerCertRootCn>
  <ServerCertIssuerCn>Foo Root CA</ServerCertIssuerCn>
  <VpnClientAddressPool>10.0.1.0/24</VpnClientAddressPool>
  <AadIssuer>https://sts.windows.net/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa/</AadIssuer>
  <AadTenant>https://login.microsoftonline.com/aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa</AadTenant>
  <AadAudience>aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa</AadAudience>
  <CustomDnsServers>10.0.1.1</CustomDnsServers>
</VpnProfile>

我该如何处理这些信息来将我的 Linux 机器连接到 AAD 认证的 VPN?

我目前正在使用 Fedora 34,但如果有必要,我愿意采取复杂的解决方法,甚至更换发行版。

相关内容