我们在 Intranet 上使用自签名证书。我需要做什么才能让 Internet Explorer 8 接受它们而不向用户显示错误消息?我们为 Internet Explorer 7 所做的显然行不通。
编辑:如果我将证书放入受信任的根证书颁发机构,Internet Explorer 7 不会显示任何错误。即使有证书,Internet Explorer 8 似乎也会显示错误。
如何通过 20 个烦人的步骤让 IE8 信任自签名证书
浏览到您要信任其证书的站点。当被告知“本网站的安全证书存在问题”时,选择“继续访问本网站(不推荐)”。选择工具➞Internet 选项。选择安全➞受信任的站点➞站点。确认 URL 匹配,然后单击“添加”,然后单击“关闭”。使用“确定”或“取消”关闭“Internet 选项”对话框。刷新当前页面。当被告知“本网站的安全证书存在问题”时,选择“继续访问本网站(不推荐)”。单击地址栏右侧的“证书错误”,然后选择“查看证书”。单击“安装证书...”,然后在向导中单击“下一步”。在下一页上选择“将所有证书放在以下存储中”。单击“浏览”,选择“受信任的根证书颁发机构”,然后单击“确定”。返回向导,单击“下一步”,然后单击“完成”。如果您收到“安全警告”消息框,请单击“是”。使用“确定”关闭消息框。选择工具➞Internet 选项。选择安全➞受信任的站点➞站点。选择您刚刚添加的 URL,单击“删除”,然后单击“关闭”。现在关闭所有正在运行的 IE 实例,然后重新启动 IE。现在应该信任该站点的证书。
我让它像这样工作
以具有管理权限的用户身份启动 Internet Explorer。使用计算机名称浏览到服务器计算机(忽略证书警告)单击屏幕顶部的“证书错误”文本并选择“查看证书” 在证书对话框中,单击安装证书 -> 下一步选择将所有证书放在以下位置store -> Browse 检查 Show Physical Stores 复选框 选择 Trusted Root Certificate Authorities – Local Computer 点击 OK – Next – Finish – OK 重启 Internet Explorer
我已经尝试了很多很多来自不同网站上的不同人的步骤。但是他们都没有提到我应该将证书添加到受信任的人密钥库中。
没错,将它放在受信任的 CA 下对我来说是不够的,我还必须将证书放在受信任的人中。
那是:
运行 MMC 添加证书管理单元选择本地计算机展开证书(本地计算机)-> 受信任的人-> 证书右键单击所有任务-> 导入完成向导
导出证书:
以管理员身份运行 IE(右键单击,以管理员身份运行) 当提示无效证书时,请继续访问网站 点击地址附近的证书错误,点击查看证书 转到详细信息选项卡,点击复制到文件 另存为 *.cer 文件。
我在 IE9,Windows 7
确保您的自签名证书与您的站点 URL 匹配。如果不是,即使在 Internet Explorer 8 中明确信任证书后,您仍将继续收到证书错误(我没有 Internet Explorer 7,但无论 URL 不匹配,Firefox 都会信任该证书)。
如果这是问题所在,在您添加证书后,Internet Explorer 8 中的红色“证书错误”框将显示“地址不匹配”作为错误。此外,“查看证书”有一个 Issued to: 标签,显示证书对哪个 URL 有效。
issued to: *.example.com
因此,如果您尝试让 IE 接受多个自签名子域,则可以创建一个通配符证书并将证书位置更新为通配符证书。如果使用子域 a.b.example.com
请注意,因为您必须为子域 *.b.example.com
(不是 *.*.example.com
)创建单独的通配符证书,它才能在 IE 中工作。
如果您收到地址不匹配错误,请允许地址不匹配:
工具并选择 Internet 选项 选择高级选项卡 向下滚动并取消选中警告证书地址不匹配
伙计,今天我花了几个小时来解决这个问题。无论我在 IE 8 中做了什么,问题仍然存在。 IE安装的证书出现在客户端PC的受信任的根证书颁发机构中,但是IE仍然抱怨。
这是我发现的解决方案:
在网络服务器上:
Win+R,MMC,回车。
文件,添加-删除管理单元,证书,添加,管理证书:我的用户帐户,完成,确定。
导航到“证书 - 当前用户/受信任的根证书颁发机构/证书”。
找到您的证书,右键单击,所有任务/导出。
“不,不要导出私钥”
“DER 编码二进制 X.509 (.CER)”
将文件保存在某处。
将新创建的 .CER 文件传输到客户端 PC。
在客户端机器上:
Win+R,MMC,回车。
文件,添加-删除管理单元,证书,添加,管理证书:我的用户帐户,完成,确定。
导航到“证书 - 当前用户/受信任的根证书颁发机构/证书”。
右键单击证书容器,所有任务/导入
选择您从服务器计算机传输的 .CER 文件。
在下一个屏幕上,选择“将所有证书放在以下存储中”,单击“浏览”,选中“显示物理存储”,然后选择“受信任的根证书颁发机构/本地计算机”。
最后按“完成”。
在 Internet Explorer 中:工具 - 删除浏览历史记录,
在 Internet Explorer 中:工具 - Internet 选项 - “内容”选项卡 - 清除 SSL 状态按钮。
以下是我如何让它在 IE8 中工作:
转到相关网站,例如 https://xxx.yyy.com,单击直到您在浏览器状态行中看到证书错误。查看证书,然后从详细信息选项卡中,选择复制到文件。以 xxx.cer 格式保存到桌面,例如 Start、Run、MMC。文件,添加/删除管理单元,选择证书,单击添加,我的用户帐户,然后完成,然后确定,向下挖掘到信任根证书颁发机构,证书,右键单击证书,选择所有任务,导入,选择保存证书从桌面选择将所有证书放在以下存储中,单击浏览,选中显示物理存储的框,展开受信任的根证书颁发机构,然后选择本地计算机,单击确定,完成导入,检查列表以确保它出现了。您可能需要刷新才能看到它。退出 MMC,打开浏览器,选择工具,删除浏览历史记录选择除私人过滤数据之外的所有数据,完成,转到 Internet 选项,内容选项卡,清除 SSL 状态,关闭浏览器并重新打开并测试。
您应该在您的计算机上安装您的证书作为受信任的权威机构。
有很多方法可以做到这一点,例如您可以使用 mmc (start/run/mmc),添加证书管理单元,然后您可以从那里安装您的自签名证书。
没有办法解决这个问题,因为证书的全部目的是在用户访问的网站未经受信任的机构认证时警告用户。
安装证书本身是不够的,您需要安装证书颁发机构的根证书。假设如果您使用 Win Server 的证书服务,则在该服务器上安装 CS 时创建的根证书就是要安装的。如前所述,它必须安装到“受信任的根证书颁发机构”。
https://server
和 https://server.example.com
是不同的,如果 IT 部门正确地完成了它的工作,您可能需要完全限定的域名。
这可能会帮助我在 IE11 Windows 7 上的人以及我所做的除了安装证书之外是转到 Internet 选项 ==> 高级选项卡 ==> 安全 ==> “删除检查”来自警告证书地址不匹配另外到下面 - 不要忘记关闭所有 IE 实例并重新启动 - 完成后:
1-启动 Internet Explorer 运行。
2-使用计算机名称浏览到服务器计算机(忽略证书警告)
3-单击屏幕顶部的“证书错误”文本,然后选择“查看证书”
4-在“证书”对话框中,单击“安装证书”->“下一步”
5-选择将所有证书放在以下商店中-> 浏览
6-安装到受信任的根证书..
然后重新启动。
希望这对某人有所帮助。
您可以使用 GPO 在域内使用证书。
但我的问题是 Internet Explorer 8,即使证书在受信任的根证书存储中......它仍然不会说它是受信任的站点。
有了这个和现在需要完成的驱动程序签名......我开始想知道谁拥有我的电脑!
不幸的是,没有一个解决方案对我有用。我在Windows 7上使用Internet Explorer 8。在寻找解决方案时,我在控制面板中找到了有关登录信息的设置。因此,我在基于证书的信息下添加了一个新条目,其中包含我的服务器地址,并选择了我喜欢的证书。
在 Internet Explorer 8 中清除 SSL 缓存后,我刚刚刷新了站点并将正确的证书发送到服务器。
这不是我想要的解决方案,但它有效。
正如其他人所提到的,首要任务是将证书添加到受信任的根机构。
有一个自定义 exe (selfssl.exe) 将创建一个证书并允许您指定颁发给:值(URL)。这意味着 Internet Explorer 将使用自定义 Intranet url 验证发布到 url。
确保重新启动 Internet Explorer 以刷新更改。
看起来不可能不再有证书错误。我在带有 IE 8 的 Windows XP 上。组策略安装了一个自签名证书作为受信任的根证书,用于访问内部站点。当我查看带有证书管理单元的 MMC 时,我可以在那里看到证书。
当我看:
Internet 选项 => 内容 => 证书
它不在那里!
IE 中的这种行为开始于我们的管理员在 2009 年 12 月 10 日安装在我的机器上的最后一批 Patch-Tuesday 更新。在此之前,它很高兴接受证书为有效。
我在使用 Web 服务时遇到了同样的问题。 Here Microsoft 有一个(长)演练向您展示如何在客户端上安装东西,基本上说您的自签名证书没问题。最后,我只花了 30 美元,从 Godaddy.com 购买了完整的证书。
PS 我知道您可以围绕错误消息编写代码,但出于测试原因我们不想这样做。
你之前在做什么?对于自签名证书,我通常会在客户端系统本地安装证书。
您可以使用组策略将证书推送到每个系统。
您需要确保自签名证书对您正在设置的域使用正确的 common name
。如果您要为多个域使用相同的证书,您需要为每个域拥有一个唯一的证书,或者如果您的所有 ssl 站点都是公共域的子域,那么您可以生成带有通配符域的证书,例如 { 2}。
如果您未在自签名证书中正确设置 common name
,则 Chrome 和 Firefox 可能会工作,但 IE 可能无法在您每次加载网站时找到证书。在 IE 中,它看起来就像您添加了站点的证书,但实际上在页面加载时它永远不会被发现。
how to set up SSL for Apache for a Mac so I can test Cross Domain iFrame on IE8
如何安装 CA 根证书,而不是网站证书:(IE8,Win7)
当您提出证书详细信息时,您正在查看网站证书,而不是 CA 证书。 “常规”选项卡会显示“无法验证此证书...”您需要通过单击“证书路径”选项卡选择 CA,然后选择路径中最顶部的证书。它应该有一个红色的 X 图标,并且应该说,“这个 CA 根证书不受信任,因为...”单击查看证书按钮,在这个新的常规选项卡上,您应该看到,“这个 CA 根不受信任.. ." 这是您要导入受信任的根证书颁发机构的证书。
导入 CA 后,无需导入常规网站证书。该证书将与您刚刚导入的 CA 相匹配,并且 IE 会将所有内容视为正常工作。您不需要以管理员身份运行 IE,也不需要先将站点添加到受信任的站点。导入后确实需要重新启动 IE。
我尝试了所有提到的解决方案,但都没有奏效。使用 Internet Explorer 11 (11.0.9600.17914),无法接受无效证书,因为错误看起来与 404 完全相同。
有帮助的是以下内容: - 将主机添加到受信任的站点(如这里多次提到的) - 禁用 TLS 1.2 并启用 SSL 1.0 和 SSL 2.0
最后一步是只有在你知道自己在做什么的情况下才应该做的事情。我们需要在工作中使用一个非常奇怪的设置,因此我们找不到其他访问系统的方法。通常,不应该像这样降级安全性。
如果您正在进行一些本地测试并且您在主机文件中添加了一些别名,请说
127.0.0.1 www.mysite.com
并尝试使用上述任何程序都会失败。原因是您将为 localhost 导入证书。证书 URL 不匹配。
在这种情况下,您必须生成一个自签名证书,然后按上述方式导入它。
如果您使用 Xampp,则可以使用 c:\xampp\apache\makecert.bat 轻松生成正确的证书
您可以使用 CertMgr 将证书添加为受信任的发布者,或者如果它是自签名的,则添加为根证书
CertMgr.exe /add CertificateFileName.cer /s /r localMachine root
在此处查看 Microsoft 的文档: