解决“该安全证书是由一家您不愿信任的公司颁发的”
2005-03-31 17:05
627 查看
因为安装了Virutal Server 2005 为了安全起见决定使用SSL加密。于是在一台2003服务器上安装并配置了微软证书服务器,一路下来都很正常也为Virutal Server 2005申请了两个证书,一个用于web访问,另外一个用于远程控制使用,不过好像微软的一个资料中提到过,申请一个证书就可以,可是我是先配置的VSRV远程控制,所以当配置IIS时却不知道如何导入已经申请的证书,郁闷。估计是我的理解错了,反正是可以用了。
不过遇到一个问题就是当访问站点和远程控制的时候浏览器提示“This security certificate was issued by a company that you have not chosen to trust ”(该安全证书是由一家您不愿信任的公司颁发的)郁闷!于是Search微软的KB,找到了这篇KB297681,其原因是:“颁发 Web 站点证书的证书颁发机构 (CA) 的根证书没有在客户端浏览器的受信根证书颁发机构存储区中。此信息不影响在客户端和服务器之间建立安全套接字层 (SSL) 会话。”也就是说我的证书服务器因为不在客户端的root区域所以被认为是不可信赖的,呵呵!这就钱啊,不过微软有解决方案:
1. 在证书服务器的默认安装期间,会生成一个共享文件夹以存储根证书文件。此文件夹的默认位置为 C:\Certconfig。在此文件夹中,找到根证书文件。默认的命名标准如下所示:
servername.domain.com_name_of_certificate_server.crt
如果您找不到根证书文件,请在硬盘驱动器上搜索以 .crt 结尾的所有文件。双击搜索中返回的每个 .crt 文件并查看其详细信息,以确认其系列号与颁发 Web 服务器证书的根证书的序列号相同。
要查看 Web 站点的根证书的序列号,请安全地浏览到 Web 站点(即,使用 https:// 协议),并双击浏览器右下角的挂锁图标。单击证书路径选项卡,并双击顶部的证书。此证书的系列号应当与搜索所返回的根证书相匹配。
2. 将根证书 (.crt) 文件导出到 Base64 根证书 (.cer) 文件。为此,请按照下列步骤操作: a. 在 Windows 资源管理器中,双击此根证书文件。
b. 单击详细资料选项卡,并选择复制到文件以启动证书管理器导出向导。
c. 在向导的第二个屏幕上,选择 Base64,在第三个屏幕上提供此证书的路径和文件名。注意:这就是本文中提供的示例 ASP 代码中使用的文件。
d. 单击下一步,然后单击完成。
3. 修改下列代码的第 11 行,以指向您在第 2 步中创建的 Base64 根证书文件。
<HTML>
<HEAD>
<TITLE>Installing A Root Certificate</TITLE>
<BR>Root Certificate Authority Installation
<BR>
<BR>
<%@ LANGUAGE=\"VBScript\"%>
<%
Set fs = CreateObject(\"Scripting.FileSystemObject\")
Set MyFile = fs.OpenTextFile(\"c:\certificates\base64.cer\", 1)
Output = \"\"
Do While MyFile.AtEndOfStream <> true
line = Chr(34) & MyFile.ReadLine & Chr(34)
If MyFile.AtEndOfStream <> true then
line = line & \" & _\" & Chr(10)
End If
Output = Output & line
Loop
MyFile.Close
Set MyFile = Nothing
Set fs = Nothing
%>
<SCRIPT language=\"VBSCRIPT\">
on error resume next
Dim Str, CEnroll
Set CEnroll = CreateObject(\"CEnroll.CEnroll.1\")
Str = <% Response.Write Output %>
CEnroll.installPKCS7(Str)
Set CEnroll = Nothing
</SCRIPT>
</HEAD>
</HTML>
4. 将修改过的代码另存为 Rootinstall.asp,并保存到 Web 站点位置。默认情况下,位置为 \Inetpub\Wwwroot。
5. 从客户端浏览器浏览到 Rootinstall.asp 文件。如果您的根证书尚未在存储区中,则提示您进行安装。
6. 单击确定。此证书将自动安装到客户端浏览器上的受信根存储区。
注意:此方法只受用在IE浏览器上。
原文地址:http://support.microsoft.com/default.aspx?scid=kb;zh-cn;297681
不过遇到一个问题就是当访问站点和远程控制的时候浏览器提示“This security certificate was issued by a company that you have not chosen to trust ”(该安全证书是由一家您不愿信任的公司颁发的)郁闷!于是Search微软的KB,找到了这篇KB297681,其原因是:“颁发 Web 站点证书的证书颁发机构 (CA) 的根证书没有在客户端浏览器的受信根证书颁发机构存储区中。此信息不影响在客户端和服务器之间建立安全套接字层 (SSL) 会话。”也就是说我的证书服务器因为不在客户端的root区域所以被认为是不可信赖的,呵呵!这就钱啊,不过微软有解决方案:
1. 在证书服务器的默认安装期间,会生成一个共享文件夹以存储根证书文件。此文件夹的默认位置为 C:\Certconfig。在此文件夹中,找到根证书文件。默认的命名标准如下所示:
servername.domain.com_name_of_certificate_server.crt
如果您找不到根证书文件,请在硬盘驱动器上搜索以 .crt 结尾的所有文件。双击搜索中返回的每个 .crt 文件并查看其详细信息,以确认其系列号与颁发 Web 服务器证书的根证书的序列号相同。
要查看 Web 站点的根证书的序列号,请安全地浏览到 Web 站点(即,使用 https:// 协议),并双击浏览器右下角的挂锁图标。单击证书路径选项卡,并双击顶部的证书。此证书的系列号应当与搜索所返回的根证书相匹配。
2. 将根证书 (.crt) 文件导出到 Base64 根证书 (.cer) 文件。为此,请按照下列步骤操作: a. 在 Windows 资源管理器中,双击此根证书文件。
b. 单击详细资料选项卡,并选择复制到文件以启动证书管理器导出向导。
c. 在向导的第二个屏幕上,选择 Base64,在第三个屏幕上提供此证书的路径和文件名。注意:这就是本文中提供的示例 ASP 代码中使用的文件。
d. 单击下一步,然后单击完成。
3. 修改下列代码的第 11 行,以指向您在第 2 步中创建的 Base64 根证书文件。
<HTML>
<HEAD>
<TITLE>Installing A Root Certificate</TITLE>
<BR>Root Certificate Authority Installation
<BR>
<BR>
<%@ LANGUAGE=\"VBScript\"%>
<%
Set fs = CreateObject(\"Scripting.FileSystemObject\")
Set MyFile = fs.OpenTextFile(\"c:\certificates\base64.cer\", 1)
Output = \"\"
Do While MyFile.AtEndOfStream <> true
line = Chr(34) & MyFile.ReadLine & Chr(34)
If MyFile.AtEndOfStream <> true then
line = line & \" & _\" & Chr(10)
End If
Output = Output & line
Loop
MyFile.Close
Set MyFile = Nothing
Set fs = Nothing
%>
<SCRIPT language=\"VBSCRIPT\">
on error resume next
Dim Str, CEnroll
Set CEnroll = CreateObject(\"CEnroll.CEnroll.1\")
Str = <% Response.Write Output %>
CEnroll.installPKCS7(Str)
Set CEnroll = Nothing
</SCRIPT>
</HEAD>
</HTML>
4. 将修改过的代码另存为 Rootinstall.asp,并保存到 Web 站点位置。默认情况下,位置为 \Inetpub\Wwwroot。
5. 从客户端浏览器浏览到 Rootinstall.asp 文件。如果您的根证书尚未在存储区中,则提示您进行安装。
6. 单击确定。此证书将自动安装到客户端浏览器上的受信根存储区。
注意:此方法只受用在IE浏览器上。
原文地址:http://support.microsoft.com/default.aspx?scid=kb;zh-cn;297681
相关文章推荐
- 启用SSL后遇到:“该安全证书是由一家您不愿信任的公司颁发的”的解决方法
- 安卓,支付宝app登录时,提示 服务器安全证书已过期或不可信任,请问怎么解决
- 安卓,支付宝app登录时,提示 服务器安全证书已过期或不可信任,请问怎么解决
- 解决GoAgent打开https网站SSL证书错误 (安全证书不受信任)
- "基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系"证书验证失败的解决过程(3)
- 用C#安装证书到受信任的根证书颁发机构 安全警告能去掉吗
- 解决GoAgent打开https网站SSL证书错误 (安全证书不受信任)问题
- 调用Https WebService发布后使用时报“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系”证书验证失败的解决过程(3)
- Chrome/Firefox等提示“安全证书不被信任”解决办法
- Chrome浏览器提示该网站的安全证书不受信任的解决办法
- iphone"此证书是由未知颁发机构签名的"的解决办法
- xp sp3 + ie8 支付宝证书 导入出错以及安全验证身份出错 解决办法
- 拥有北京市建委颁发家装资质证书的装饰公司(一)
- 解决Error"基础连接已经关闭: 未能为SSL/TLS 安全通道建立信任关系
- 转转:解决Error"基础连接已经关闭: 未能为SSL/TLS 安全通道建立信任关系。"
- 网络安全-【数字证书,证书链】,为什么12306订票要弹信任证书
- 使用GAppProxy时安全证书无效的解决办法
- 如何解决Oracle 11g EM网站报“此网站的安全证书存在问题”
- 访问Oracle em https https://localhost:1158/em 报访问网页提示此网站的安全证书有问题解决方法
- 解决方法:该站点安全证书的吊销信息不可用。是否继续?