fyj*_*ham 4 https networking iis-7 ssl-certificate
我们目前正在尝试使用多个证书设置HTTPS.我们取得了一些有限的成功,但我们得到了一些我无法理解的结果......
基本上我们的NLB上有两台服务器(10.0.51.51和10.0.51.52),两台IP分配给我们的NLB(10.0.51.2和10.0.51.4),我们有IIS监听这两个IP,并使用不同的通配符证书(To避免给出公共IP,让我们说A:443路由到10.0.51.2:443和B:443路由到10.0.51.4:443).我们还有一个使用端口地址转换的Cisco路由器将端口443从两个外部IP路由到这些内部NLB IP.
奇怪的是,如果我们请求A:443或B:443,这是有效的,但如果你在10.0.51.51:443,10.0.51.52:443,10.0.51.2:443或10.0.51.4:443内部进行,你总是会得到相同的SSL证书.此证书过去已分配给*:443但我们已确保在IIS中不再定义*绑定.
当我在修剪掉所有不相关的东西后运行"netsh http show sslcert"时:
IP:port : 0.0.0.0:443
Certificate Hash : <Removed: Cert 1>
IP:port : 10.0.51.2:446
Certificate Hash : <Removed: Cert 3 - Another site>
IP:port : 10.0.51.3:446
Certificate Hash : <Removed: Cert 3 - Another site>
IP:port : 10.0.51.4:443
Certificate Hash : <Removed: Cert 2>
Run Code Online (Sandbox Code Playgroud)
这告诉我*绑定仍在那里,这有点奇怪,但我不明白为什么会阻止对方工作(或者更奇怪的是为什么通过路由器的请求会起作用).
这让我想知道它是否真的将请求视为机器的IP而不是NLB IP,但不幸的是我们的开发环境只是一个服务器,这可以减少我可以采取的试验/错误的数量(因为我可以测试on是一个实时环境),没有说服管理层为测试环境购买更多服务器 - 这是我正在尝试的.
有谁有想法吗:
我最终跟踪问题了.将此留作任何陷入同一陷阱的人的暗示......
问题是由我们在IIS服务器上使用共享配置模型引起的.设置HTTPS绑定时,这似乎只是实际将其绑定在您正在管理它的框上(让另一个完全未绑定).由于我们的*绑定仍然存在,它在我们没有通过UI执行的服务器上捕获它,只是让我们选择共享配置.
疯狂的运气与单亲和NLB发送我们在花园路径后,路由器是由于我们的内部请求转到一个服务器和我们的外部请求到另一个.
我们最终通过在两台服务器上运行"netsh http show sslcert> certs.txt"并对输出进行差异来找到它.
继续我们的计划是不再使用IIS UI进行SSL配置,而是按照以下步骤操作:
我们的理解是这将防止重复此错误.
| 归档时间: |
|
| 查看次数: |
3611 次 |
| 最近记录: |