p.c*_*ell 54 iis windows-server-2008 certificate iis-7 ssl-certificate
考虑一台装有 IIS7 的 Win 2008 SP2 机器。任务是将证书和主机名应用到这台机器上唯一的站点。网站的主机标题需要是abc.123.example.com
第一步是将 .pfx 安装到个人商店,这是成功的。
IIS7 发现证书可用,但不允许输入主机名。即使在选择我的证书之前,主机名文本框也总是被禁用/变灰。我什至删除了默认的 80 端口绑定。

问题:如何为该站点设置主机名?这个证书是通配符证书的问题吗?我了解到 SSL 请求进入 Web 服务器,并且数据包中的主机头是加密的。为什么 IIS6 允许指定主机头,而 IIS7 不允许?
更新:证书不是问题的一部分。我在机器上创建了一个新站点,在选择HTTPS绑定时,主机名称TextBox被禁用。
小智 50
它确实在 GUI 中工作...
只需确保您正在安装的证书的“友好名称”与您为证书制作的多域名相同。
IE。*.companydomain.com
如果您为 *.companydoman.com 证书输入“友好名称”,则在将证书安装到 IIS 时,主机名标题框将变灰。
如果您使用 *.companyname.com 作为友好名称,那么您就是黄金。
繁荣。
joe*_*rty 34
您不能从 UI 执行此操作,必须从命令行执行此操作。这是一个很好的过程:
http://www.sslshopper.com/article-ssl-host-headers-in-iis-7.html
Jus*_*ott 10
简短的回答是每个 IP 只能绑定一个证书,因此无论主机名指向该 IP 地址,证书绑定都将适用。能够指定主机名意味着您可以在同一 IP 地址和端口上拥有多个主机名和证书组合(就像使用非 SSL 条目一样),但事实并非如此,因此该字段不可用。
更完整的解释是 SSL 加密您的流量,而该流量的一部分是浏览器发送到服务器的 HTTP 标头。这些标头之一是“主机”标头,IIS 使用它来确定要加载请求的站点。由于需要在发送请求标头之前加载证书以建立安全连接,因此 IIS 必须仅根据 IP 地址和端口号选择证书,而将“主机”标头作为确定的因素留在冷场要加载哪个站点,因此他们不会让您输入一个站点。
SSLShopper 的答案对我不起作用,因为它在没有主机标头的情况下保留了绑定,并且您无法在不中断与证书的连接的情况下删除该绑定。这是我用来让它工作的方法:
请注意,此答案假定您的证书已生成、添加到证书存储区并添加到 IIS。它还假设除了 SSL 之外,您不希望任何其他绑定到您的网站。
首先,我们需要收集一些信息。我们需要散列、应用程序 ID 和主机名。
脚步
打开命令提示符
netsh http show sslcert
Run Code Online (Sandbox Code Playgroud)保存证书哈希和应用程序 ID
在命令提示符下:
netsh http add sslcert ipport=0.0.0.0:443 certstorename=my certhash=<put Certificate Hash here> appid={<put Application ID here>}
appcmd set site /site.name:"<put site name here>" /+bindings.[protocol='https',bindingInformation='*:443:<put host name here>']
Run Code Online (Sandbox Code Playgroud)注意:Appcmd.exe 可以在 C:\Windows\System32\inetsrv 中找到。您可能需要在该文件夹中才能使用此命令。
小智 5
这里接受的答案令人困惑,我认为这个问题不正确。这不应该是公认的答案。
问题
您有一个通配符 SSL,例如*.ipsum.com并且安装了证书,但是当您尝试添加 HTTPS 绑定时,您无法在 IIS 中为站点选择主机名,因为文本框是灰色的。
解决方案
您的通配符 SSL 可用于任何子域,您只需要确保证书的友好名称以*. 我更喜欢使用与通配符域相同的友好名称,例如,*.ipsum.com但您可以将其称为带有星号的任何东西:*foo
我给我的证书错误的友好名称,救命!
从 Windows 8 或 Server 2012 开始,您可以certlm.msc在开始菜单中键入以管理本地机器的证书。在以前版本的 Windows 上,您需要做一些稍微复杂的事情:
mmc.exe从头运行File菜单并选择Add/Remove Snap-in...或点击(Ctrl-M)Certificates单元和命中Add >,然后选择Computer Account之后Local Computer在随后出现的对话框然后打Finish之后OK,关闭管理单元窗口在主窗口中,展开Certificates (Local Computer)再Personal然后Certificates,你就可以用鼠标右键单击该证书,打Properties在那里你可以更新友好名称。
关闭并打开 IIS 管理器,然后您可以设置您的主机名。
| 归档时间: |
|
| 查看次数: |
120961 次 |
| 最近记录: |