ChatGPT解决这个技术问题 Extra ChatGPT

我需要做什么才能让 Internet Explorer 8 接受自签名证书?

我们在 Intranet 上使用自签名证书。我需要做什么才能让 Internet Explorer 8 接受它们而不向用户显示错误消息?我们为 Internet Explorer 7 所做的显然行不通。

编辑:如果我将证书放入受信任的根证书颁发机构,Internet Explorer 7 不会显示任何错误。即使有证书,Internet Explorer 8 似乎也会显示错误。

只是好奇,你在IE7中做了什么?
将其放入证书到受信任的根证书存储中
你有 IE 8 错误的截图吗?它在证书路径页面上显示什么?确保您添加了 CA,而不是站点证书。
实际上大卫我认为 SuperUser 更合适。
这些关于问题归属的辩论是荒谬的。说真的,wtf。虽然它可能适合任何建议的站点,但作为开发人员的问题绝对是合理的,因为这是 Web 开发人员经常面临的问题。

R
Rory O'Kane

如何通过 20 个烦人的步骤让 IE8 信任自签名证书

浏览到您要信任其证书的站点。当被告知“本网站的安全证书存在问题”时,选择“继续访问本网站(不推荐)”。选择工具➞Internet 选项。选择安全➞受信任的站点➞站点。确认 URL 匹配,然后单击“添加”,然后单击“关闭”。使用“确定”或“取消”关闭“Internet 选项”对话框。刷新当前页面。当被告知“本网站的安全证书存在问题”时,选择“继续访问本网站(不推荐)”。单击地址栏右侧的“证书错误”,然后选择“查看证书”。单击“安装证书...”,然后在向导中单击“下一步”。在下一页上选择“将所有证书放在以下存储中”。单击“浏览”,选择“受信任的根证书颁发机构”,然后单击“确定”。返回向导,单击“下一步”,然后单击“完成”。如果您收到“安全警告”消息框,请单击“是”。使用“确定”关闭消息框。选择工具➞Internet 选项。选择安全➞受信任的站点➞站点。选择您刚刚添加的 URL,单击“删除”,然后单击“关闭”。现在关闭所有正在运行的 IE 实例,然后重新启动 IE。现在应该信任该站点的证书。


在 IE 8(我在 Windows 7 上)中,在第 5 步之后,取消选中“启用保护模式”。然后就可以安装证书了。但是,即使在安装证书之后,我仍然会收到警告和红色位置栏。
标题 +1 :) 步骤 #12 最有用;不是我自己想出来的。
我仔细检查了地址是否相同,但我需要这样做才能工作: 单击工具 单击 Internet 选项 单击高级 向下滚动到“检查发布者的证书吊销”。并取消选中。单击应用 单击确定 关闭并重新打开浏览器 techsupportforum.com/forums/f56/…
如果像我一样,您正在使用旧 VM 在 Windows XP 上测试 IE8,请记住确保您的系统时钟准确无误。这在证书验证中起作用。
这些步骤不适用于 IE 11。那里还有其他需要做的事情吗?
N
Nicholas Murray

我让它像这样工作

以具有管理权限的用户身份启动 Internet Explorer。使用计算机名称浏览到服务器计算机(忽略证书警告)单击屏幕顶部的“证书错误”文本并选择“查看证书” 在证书对话框中,单击安装证书 -> 下一步选择将所有证书放在以下位置store -> Browse 检查 Show Physical Stores 复选框 选择 Trusted Root Certificate Authorities – Local Computer 点击 OK – Next – Finish – OK 重启 Internet Explorer


这些步骤对我有用,但我必须检查*实体店复选框并选择*受信任的人*本地计算机。我尝试了其他所有组合,除此之外没有任何效果。 IE11
这是最佳答案,因为最佳答案没有关键的“以具有管理权限的用户身份运行 Internet Explorer”。
我没有“受信任的人,本地计算机”作为选项,所以我只是单击了“受信任的人”,它就起作用了。
我也刚刚选择了“受信任的人”,它奏效了。注意我在 Windows 8 PC 上进行测试。将证书存储在其他位置似乎没有用,我只用“受信任的人”成功了。
当我选择“受信任的人”->“本地计算机”选项时,它对我有用。要获得“本地计算机”选项,请以“以管理员身份运行”模式运行 IE。我正在使用 Win7 和 IE11
b
buddie

我已经尝试了很多很多来自不同网站上的不同人的步骤。但是他们都没有提到我应该将证书添加到受信任的人密钥库中。

没错,将它放在受信任的 CA 下对我来说是不够的,我还必须将证书放在受信任的人中。

那是:

运行 MMC 添加证书管理单元选择本地计算机展开证书(本地计算机)-> 受信任的人-> 证书右键单击所有任务-> 导入完成向导

导出证书:

以管理员身份运行 IE(右键单击,以管理员身份运行) 当提示无效证书时,请继续访问网站 点击地址附近的证书错误,点击查看证书 转到详细信息选项卡,点击复制到文件 另存为 *.cer 文件。

我在 IE9,Windows 7


+1 我用它来确定在 Win8 x64 上的 IE 10 上,您以管理员身份运行 IE,导航,然后单击错误,然后从那里使用安装证书按钮,选择受信任的人作为目标(没有 { 1} 必需)
P
Peter Mortensen

确保您的自签名证书与您的站点 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 中工作。
在尝试了上面和其他地方的所有内容之后,这就是我的答案。地址不匹配。谢谢!
A
Alister Scott

如果您收到地址不匹配错误,请允许地址不匹配:

工具并选择 Internet 选项 选择高级选项卡 向下滚动并取消选中警告证书地址不匹配


这可以防止警告消息,但地址栏仍然是红色的
要将证书更新为正确的 URL,请使用此博客:robbagby.com/iis/… - 关键是使用第 3 方 exe (selfssl.exe) 并使用自定义 URL 创建证书(并将其分配给站点)。
这次真是万分感谢!我按照上面的 2-3 步操作,仍然收到警告。这一步是导入证书大约六次后唯一有效的方法。谢谢!
Win10上的IE11:按照Jay或Aya描述的导入证书后,我仍然收到证书错误。只有在取消选中警告并重新启动后,自签名证书才被接受(地址栏没有变红)。
S
Soonts

伙计,今天我花了几个小时来解决这个问题。无论我在 IE 8 中做了什么,问题仍然存在。 IE安装的证书出现在客户端PC的受信任的根证书颁发机构中,但是IE仍然抱怨。

这是我发现的解决方案:

在网络服务器上:

Win+R,MMC,回车。

文件,添加-删除管理单元,证书,添加,管理证书:我的用户帐户,完成,确定。

导航到“证书 - 当前用户/受信任的根证书颁发机构/证书”。

找到您的证书,右键单击,所有任务/导出。

“不,不要导出私钥”

“DER 编码二进制 X.509 (.CER)”

将文件保存在某处。

将新创建的 .CER 文件传输到客户端 PC。

在客户端机器上:

Win+R,MMC,回车。

文件,添加-删除管理单元,证书,添加,管理证书:我的用户帐户,完成,确定。

导航到“证书 - 当前用户/受信任的根证书颁发机构/证书”。

右键单击证书容器,所有任务/导入

选择您从服务器计算机传输的 .CER 文件。

在下一个屏幕上,选择“将所有证书放在以下存储中”,单击“浏览”,选中“显示物理存储”,然后选择“受信任的根证书颁发机构/本地计算机”。

最后按“完成”。

在 Internet Explorer 中:工具 - 删除浏览历史记录,

在 Internet Explorer 中:工具 - Internet 选项 - “内容”选项卡 - 清除 SSL 状态按钮。


a
alexandrul

以下是我如何让它在 IE8 中工作:

转到相关网站,例如 https://xxx.yyy.com,单击直到您在浏览器状态行中看到证书错误。查看证书,然后从详细信息选项卡中,选择复制到文件。以 xxx.cer 格式保存到桌面,例如 Start、Run、MMC。文件,添加/删除管理单元,选择证书,单击添加,我的用户帐户,然后完成,然后确定,向下挖掘到信任根证书颁发机构,证书,右键单击证书,选择所有任务,导入,选择保存证书从桌面选择将所有证书放在以下存储中,单击浏览,选中显示物理存储的框,展开受信任的根证书颁发机构,然后选择本地计算机,单击确定,完成导入,检查列表以确保它出现了。您可能需要刷新才能看到它。退出 MMC,打开浏览器,选择工具,删除浏览历史记录选择除私人过滤数据之外的所有数据,完成,转到 Internet 选项,内容选项卡,清除 SSL 状态,关闭浏览器并重新打开并测试。


如果“复制到文件...”被禁用,有什么建议吗?
@jessegavin:以管理员身份运行 IE
B
Brann

您应该在您的计算机上安装您的证书作为受信任的权威机构。

有很多方法可以做到这一点,例如您可以使用 mmc (start/run/mmc),添加证书管理单元,然后您可以从那里安装您的自签名证书。

没有办法解决这个问题,因为证书的全部目的是在用户访问的网站未经受信任的机构认证时警告用户。


除了登录每台机器之外,还有什么方法可以做到这一点?
如果您在公司环境中,并且如果您的公司在其所有计算机上都安装了作为受信任机构的证书(这是一种常见设置),您可以使用此证书而不是自签名证书来签署您的证书
也可以从命令行安装证书,因此绝对可以自动化。如何做到这一点在很大程度上取决于您的系统管理员使用什么工具。
如果我在本地机器上安装了证书,IE7 就可以工作。即使我将签名证书(这个是自签名的)放在受信任的根证书颁发机构中,IE8 似乎也会发出警告。我现在愿意忘记组策略的角度——我什至不能让它在单台机器上工作。
佚名

安装证书本身是不够的,您需要安装证书颁发机构的根证书。假设如果您使用 Win Server 的证书服务,则在该服务器上安装 CS 时创建的根证书就是要安装的。如前所述,它必须安装到“受信任的根证书颁发机构”。


自签名证书的定义是根 CA 是证书本身。通过信任证书,它将被固有地信任。
值得为将来来到这里的其他人指出 https://serverhttps://server.example.com 是不同的,如果 IT 部门正确地完成了它的工作,您可能需要完全限定的域名。
r
ram mere

这可能会帮助我在 IE11 Windows 7 上的人以及我所做的除了安装证书之外是转到 Internet 选项 ==> 高级选项卡 ==> 安全 ==> “删除检查”来自警告证书地址不匹配另外到下面 - 不要忘记关闭所有 IE 实例并重新启动 - 完成后:

1-启动 Internet Explorer 运行。

2-使用计算机名称浏览到服务器计算机(忽略证书警告)

3-单击屏幕顶部的“证书错误”文本,然后选择“查看证书”

4-在“证书”对话框中,单击“安装证书”->“下一步”

5-选择将所有证书放在以下商店中-> 浏览

6-安装到受信任的根证书..

然后重新启动。

希望这对某人有所帮助。


P
Peter Mortensen

您可以使用 GPO 在域内使用证书。

但我的问题是 Internet Explorer 8,即使证书在受信任的根证书存储中......它仍然不会说它是受信任的站点。

有了这个和现在需要完成的驱动程序签名......我开始想知道谁拥有我的电脑!


如果颁发者是受信任的根,那么证书可能有问题。证书上的规范名称是否与用户用于访问站点的主机名匹配?当前时间是否在证书的有效期内?
P
Peter Mortensen

不幸的是,没有一个解决方案对我有用。我在Windows 7上使用Internet Explorer 8。在寻找解决方案时,我在控制面板中找到了有关登录信息的设置。因此,我在基于证书的信息下添加了一个新条目,其中包含我的服务器地址,并选择了我喜欢的证书。

在 Internet Explorer 8 中清除 SSL 缓存后,我刚刚刷新了站点并将正确的证书发送到服务器。

这不是我想要的解决方案,但它有效。


R
Russell

正如其他人所提到的,首要任务是将证书添加到受信任的根机构。

有一个自定义 exe (selfssl.exe) 将创建一个证书并允许您指定颁发给:值(URL)。这意味着 Internet Explorer 将使用自定义 Intranet url 验证发布到 url。

确保重新启动 Internet Explorer 以刷新更改。


这是一个很好的建议,我认为对于“地址不匹配错误”这是正确的方法,我尝试了所有其他方法都无济于事。真正导致解决方案的是您对@AlisterScott 的评论(包括此link)。
J
John C

看起来不可能不再有证书错误。我在带有 IE 8 的 Windows XP 上。组策略安装了一个自签名证书作为受信任的根证书,用于访问内部站点。当我查看带有证书管理单元的 MMC 时,我可以在那里看到证书。

当我看:

Internet 选项 => 内容 => 证书

它不在那里!

IE 中的这种行为开始于我们的管理员在 2009 年 12 月 10 日安装在我的机器上的最后一批 Patch-Tuesday 更新。在此之前,它很高兴接受证书为有效。


J
JBrooks

我在使用 Web 服务时遇到了同样的问题。 Here Microsoft 有一个(长)演练向您展示如何在客户端上安装东西,基本上说您的自签名证书没问题。最后,我只花了 30 美元,从 Godaddy.com 购买了完整的证书。

PS 我知道您可以围绕错误消息编写代码,但出于测试原因我们不想这样做。


P
Peter Mortensen

你之前在做什么?对于自签名证书,我通常会在客户端系统本地安装证书。

您可以使用组策略将证书推送到每个系统。


C
Community

您需要确保自签名证书对您正在设置的域使用正确的 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


s
shalley303

如何安装 CA 根证书,而不是网站证书:(IE8,Win7)

当您提出证书详细信息时,您正在查看网站证书,而不是 CA 证书。 “常规”选项卡会显示“无法验证此证书...”您需要通过单击“证书路径”选项卡选择 CA,然后选择路径中最顶部的证书。它应该有一个红色的 X 图标,并且应该说,“这个 CA 根证书不受信任,因为...”单击查看证书按钮,在这个新的常规选项卡上,您应该看到,“这个 CA 根不受信任.. ." 这是您要导入受信任的根证书颁发机构的证书。

导入 CA 后,无需导入常规网站证书。该证书将与您刚刚导入的 CA 相匹配,并且 IE 会将所有内容视为正常工作。您不需要以管理员身份运行 IE,也不需要先将站点添加到受信任的站点。导入后确实需要重新启动 IE。


B
Bouncner

我尝试了所有提到的解决方案,但都没有奏效。使用 Internet Explorer 11 (11.0.9600.17914),无法接受无效证书,因为错误看起来与 404 完全相同。

有帮助的是以下内容: - 将主机添加到受信任的站点(如这里多次提到的) - 禁用 TLS 1.2 并启用 SSL 1.0 和 SSL 2.0

最后一步是只有在你知道自己在做什么的情况下才应该做的事情。我们需要在工作中使用一个非常奇怪的设置,因此我们找不到其他访问系统的方法。通常,不应该像这样降级安全性。


S
Stéphane Gerber

如果您正在进行一些本地测试并且您在主机文件中添加了一些别名,请说

127.0.0.1 www.mysite.com

并尝试使用上述任何程序都会失败。原因是您将为 localhost 导入证书。证书 URL 不匹配。

在这种情况下,您必须生成一个自签名证书,然后按上述方式导入它。

如果您使用 Xampp,则可以使用 c:\xampp\apache\makecert.bat 轻松生成正确的证书


f
fijiaaron

您可以使用 CertMgr 将证书添加为受信任的发布者,或者如果它是自签名的,则添加为根证书

CertMgr.exe /add CertificateFileName.cer /s /r localMachine root

在此处查看 Microsoft 的文档:

https://docs.microsoft.com/en-us/windows-hardware/drivers/install/using-certmgr-to-install-test-certificates-on-a-test-computer