Azure 负载均衡器问题?

Azure Loadbalancer Issue?

在 Azure 配置中访问 ADFS 的 REST API 时,我看到了奇怪的行为。

假设我使用像 OpenSSL 或 DigiCert 这样的工具来测试我的网站是否 return 使用了正确的证书。例如:

openssl s_client -connect adfs.{mydomain}.com:443

运行 这多次将交替 return 正确的证书和错误的证书。

配置如下:

  1. 已在 DNS 中创建用于 ADFS、WWW 和 ADRMS 的 CNAMES,将它们指向 {mydomain}testsvc.cloudapp.net,即 Azure public 主机。
  2. 已在面向 Internet 的网络服务器上创建并安装 SAN 证书
  3. 主题名称:www.{mydomain}.com
  4. 主题备用名称:adfs.{mydomain}.com、adrms.{mydomain}.com、www.{mydomain}.com
  5. Web 服务器上的
  6. 运行 "Netsh http show sslcert" 显示 adfs 和 adrms 的正确证书 Hostname:Port
  7. 已安装 WebApplicationProxy 以允许我访问 adfs.{mydomain}.com/adfs/oauth2/xxx.

如果我 运行 稍微不同的测试:

openssl s_client -connect adrms.{mydomain}.com:443

然后,我也交替获得不同的证书。我确定边缘服务器提供了正确的证书,而 adrms 服务器提供了 "bad" 证书。事实上,那个证书真的没问题,只是不应该提供给要求 adfs.{mydomain}.com 的人。

那么,为什么对 adfs 的连接请求交替到达边缘服务器和 adrms 服务器?我现在该去哪里寻找这个问题呢?我承认我对 WebApplicationProxy 以及如何通过边缘服务器引导所有流量(包括 adrms 流量)知之甚少。

我可以提供一个真实的URI来通过私信演示问题。

另外:我怀疑是负载均衡器,因为我的网络日志有很多来自 "Load Balancer Agent" 的请求。但是,我找不到一个已配置的。我用过:

Get-AzureInternalLoadBalancer
Get-AzureRMLoadBalancer

什么都return。

在发布我的问题后,我的突破解决了问题。

我使用的是 "classic" 管理控制台。我切换到 portal.azure.com 来管理我的部署。当我导航到边缘服务器和 adrms 服务器时,我发现它们都是负载平衡集的一部分。我不确定为什么 PowerShell 脚本没有显示这个。

为了解决这个问题,我不得不将它们从 LB 集中删除并为边缘服务器重新创建端点。

步骤是:

  1. 转到管理门户。 (portal.azure.com)
  2. Select 虚拟机
  3. 点击我的adrms虚拟机
  4. 单击负载平衡集
  5. 单击负载均衡器
  6. 点击"Leave"
  7. 对边缘 VM 执行相同的步骤
  8. 对于边缘 VM,为端口 443 添加一个新端点

之所以有效,是因为边缘服务器还处理将流量重定向到 adrms 服务器。

我希望这能让一些人头疼。