<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[gOxiA=苏繁=SuFan Blog]]></title> 
<link>https://goxia.maytide.net/index.php</link> 
<description><![CDATA[gOxiA,苏繁,sufan,Microsoft MVP]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[gOxiA=苏繁=SuFan Blog]]></copyright>
<item>
<link>https://goxia.maytide.net/read.php/737.htm</link>
<title><![CDATA[解决“该安全证书是由一家您不愿信任的公司颁发的”]]></title> 
<author>gOxiA &lt;sufan_cn@msn.com&gt;</author>
<category><![CDATA[Windows Server]]></category>
<pubDate>Thu, 31 Mar 2005 09:05:34 +0000</pubDate> 
<guid>https://goxia.maytide.net/read.php/737.htm</guid> 
<description>
<![CDATA[ 
	因为安装了Virutal Server 2005 为了安全起见决定使用SSL加密。于是在一台2003服务器上安装并配置了微软证书服务器，一路下来都很正常也为Virutal Server 2005申请了两个证书，一个用于web访问，另外一个用于远程控制使用，不过好像微软的一个资料中提到过，申请一个证书就可以，可是我是先配置的VSRV远程控制，所以当配置IIS时却不知道如何导入已经申请的证书，郁闷。估计是我的理解错了，反正是可以用了。<br/>不过遇到一个问题就是当访问站点和远程控制的时候浏览器提示“This security certificate was issued by a company that you have not chosen to trust ”（该安全证书是由一家您不愿信任的公司颁发的）郁闷！于是Search微软的KB，找到了这篇KB297681，其原因是：“颁发 Web 站点证书的证书颁发机构 (CA) 的根证书没有在客户端浏览器的受信根证书颁发机构存储区中。此信息不影响在客户端和服务器之间建立安全套接字层 (SSL) 会话。”也就是说我的证书服务器因为不在客户端的root区域所以被认为是不可信赖的，呵呵！这就钱啊，不过微软有解决方案：<br/><div class="code">1. 在证书服务器的默认安装期间，会生成一个共享文件夹以存储根证书文件。此文件夹的默认位置为 C:\Certconfig。在此文件夹中，找到根证书文件。默认的命名标准如下所示：<br/>servername.domain.com_name_of_certificate_server.crt <br/>如果您找不到根证书文件，请在硬盘驱动器上搜索以 .crt 结尾的所有文件。双击搜索中返回的每个 .crt 文件并查看其详细信息，以确认其系列号与颁发 Web 服务器证书的根证书的序列号相同。 <br/><br/>要查看 Web 站点的根证书的序列号，请安全地浏览到 Web 站点（即，使用 https:// 协议），并双击浏览器右下角的挂锁图标。单击证书路径选项卡，并双击顶部的证书。此证书的系列号应当与搜索所返回的根证书相匹配。 <br/><br/> <br/>2. 将根证书 (.crt) 文件导出到 Base64 根证书 (.cer) 文件。为此，请按照下列步骤操作： a. &nbsp;在 Windows 资源管理器中，双击此根证书文件。 <br/>b. &nbsp;单击详细资料选项卡，并选择复制到文件以启动证书管理器导出向导。 <br/>c. &nbsp;在向导的第二个屏幕上，选择 Base64，在第三个屏幕上提供此证书的路径和文件名。注意：这就是本文中提供的示例 ASP 代码中使用的文件。<br/><br/> <br/>d. &nbsp;单击下一步，然后单击完成。 <br/> <br/>3. 修改下列代码的第 11 行，以指向您在第 2 步中创建的 Base64 根证书文件。</div><br/><div class="code">&lt;HTML&gt;<br/>&lt;HEAD&gt;<br/>&lt;TITLE&gt;Installing A Root Certificate&lt;/TITLE&gt;<br/>&lt;BR&gt;Root Certificate Authority Installation<br/>&lt;BR&gt;<br/>&lt;BR&gt;<br/><br/>&lt;%@ LANGUAGE=\&quot;VBScript\&quot;%&gt;<br/>&lt;%<br/>Set fs = CreateObject(\&quot;Scripting.FileSystemObject\&quot;)<br/>Set MyFile = fs.OpenTextFile(\&quot;c:\certificates\base64.cer\&quot;, 1)<br/><br/>Output = \&quot;\&quot;<br/><br/>Do While MyFile.AtEndOfStream &lt;&gt; true<br/> &nbsp;line = Chr(34) &amp; MyFile.ReadLine &amp; Chr(34)<br/> &nbsp;If MyFile.AtEndOfStream &lt;&gt; true then<br/> &nbsp; &nbsp;line = line &amp; \&quot; &amp; _\&quot; &amp; Chr(10)<br/> &nbsp;End If<br/> &nbsp;Output = Output &amp; line<br/>Loop<br/><br/>MyFile.Close<br/><br/>Set MyFile = Nothing<br/>Set fs = Nothing<br/>%&gt;<br/><br/>&lt;SCRIPT language=\&quot;VBSCRIPT\&quot;&gt;<br/>on error resume next<br/>Dim Str, CEnroll<br/><br/>Set CEnroll = CreateObject(\&quot;CEnroll.CEnroll.1\&quot;)<br/>Str = &lt;% Response.Write Output %&gt;<br/><br/>CEnroll.installPKCS7(Str)<br/><br/>Set CEnroll = Nothing<br/>&lt;/SCRIPT&gt;<br/>&lt;/HEAD&gt;<br/>&lt;/HTML&gt;</div><br/>4. 将修改过的代码另存为 Rootinstall.asp，并保存到 Web 站点位置。默认情况下，位置为 \Inetpub\Wwwroot。 <br/>5. 从客户端浏览器浏览到 Rootinstall.asp 文件。如果您的根证书尚未在存储区中，则提示您进行安装。 <br/>6. 单击确定。此证书将自动安装到客户端浏览器上的受信根存储区。 <br/><br/>注意：此方法只受用在IE浏览器上。<br/><br/>原文地址：http://support.microsoft.com/default.aspx?scid=kb;zh-cn;297681
]]>
</description>
</item><item>
<link>https://goxia.maytide.net/read.php/737.htm#blogcomment10</link>
<title><![CDATA[[评论] 解决“该安全证书是由一家您不愿信任的公司颁发的”]]></title> 
<author>gOxiA &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Fri, 01 Apr 2005 03:18:16 +0000</pubDate> 
<guid>https://goxia.maytide.net/read.php/737.htm#blogcomment10</guid> 
<description>
<![CDATA[ 
	关于这种情况还有一个非常简单的办法，不过却是不安全的做法，就是直接访问CA证书颁发站点，选择“下载一个 CA 证书，证书链或 CRL”之后下载这个根证书，并安装这个证书到root目录下就可以了，这样做就免去了制作一个rootinstall.asp的步骤，但是相对来说却暴露了证书服务器的申请地址。
]]>
</description>
</item>
</channel>
</rss>