Azure 负载均衡器问题?

标签 azure ssl dns internal-load-balancer

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

假设我使用像 OpenSSl 或 DigiCert 这样的工具测试我的站点是否返回正确的证书。例如:

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

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

配置如下:

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

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

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

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

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

我可以提供一个真实的 URI,通过私有(private)消息来演示问题。

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

Get-AzureInternalLoadBalancer
Get-AzureRMLoadBalancer

既不返回任何东西。

最佳答案

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

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

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

步骤是:

  1. 转到管理门户。 (portal.azure.com)
  2. 选择虚拟机
  3. 点击我的adrms VM
  4. 点击负载平衡集
  5. 点击负载均衡器
  6. 点击“离开”
  7. 对边缘 VM 执行相同的步骤
  8. 为边缘 VM 添加端口 443 的新端点

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

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

关于Azure 负载均衡器问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38250292/

相关文章:

heroku 根域的 SSL

azure - 等待 azure function 持久编排完成

python - 从 msrestazure.azure_active_directory 导入(ModuleNotFoundError : No module named 'msrestazure'

azure - 使用 Azure CLI 在 HDInsight 上安装外部 python 包 : RdfeResourceHandlerException

java - SSLv2Hello - javax.net.ssl.SSLException : Received fatal alert: unexpected_message

java - TLSv1 握手失败

Azure 函数代理 - 冷启动 - 错误 429 请求过多

ruby-on-rails - 当我在非 SSL 上运行应用程序时, session 过期停止工作

ruby-on-rails - Heroku 域注册配置为在雪松堆栈上的 Bamboo

redirect - 子域重定向到另一台服务器