65.9K
CodeProject 正在变化。 阅读更多。
Home

创建免费SSL证书用于开发的4个步骤

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.61/5 (54投票s)

2009年5月4日

CPOL

5分钟阅读

viewsIcon

349430

创建免费SSL证书用于开发的4个步骤

创建免费SSL证书用于开发的4个步骤

引言和目标

步骤 1:定位 makecert.exe

步骤 2:创建证书

步骤 3:将证书分配给站点

步骤 4:测试站点

步骤 5:找一家好餐厅

SSL 诊断工具

引言和目标
 

有时我们希望在开发环境中启用 SSL。SSL 证书需要从 Thawte、Verisign、GeoTrust 等地方购买。SSL 证书的典型成本如下所示。
 

描述

证书

设置费

定期费用

总计

第 1 个月

$27.95

$25.00

$9.00

$61.95

每季度

$0.00

$0.00

$9.00

$9.00

每 12 个月一次

$27.95

$0.00

$0.00

$27.95

这意味着您还需要为开发服务器购买 SSL 证书。如果还要设置开发和测试环境,此成本可能会加倍。所以这篇文章至少可以为您节省 100 美元。Microsoft 提供了“makecert.exe”工具,可以帮助我们为开发环境创建测试证书。

现在我正在分发我的 400 个问题和答案电子书,涵盖了主要的 .NET 相关主题,如 WCF、WPF、WWF、Ajax、Core .NET、SQL Server、架构等等。我相信您会喜欢这本电子书。
http://www.questpond.com/SampleDotNetInterviewQuestionBook.zip
 

步骤 1:定位 makecert.exe
 

第一件事是找到 makecert.exe。您可以在“C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\Bin”找到它,或者也可以从 Windows SDK 找到它。

让我们来详细了解一下“makecert.exe”及其各种参数的解释。我承认这一部分我厚颜无耻地复制自 http://msdn.microsoft.com/en-us/library/dd434713.aspx 

MakeCert (Makecert.exe) 是一个命令行工具,可创建一个由系统测试根密钥或另一个指定密钥签名的 X.509 证书。该证书将证书名称绑定到公钥对。证书保存在文件中、系统证书存储中,或两者兼有。

以下是使用 make cert 的详细列表
 

MakeCert [/b DateStart] [/e DateEnd] [/m nMonths] [/n "Name"] [/pe] [/r] [/sc SubjectCertFile] [/sk SubjectKey] [/sr SubjectCertStoreLocation] [/ss SubjectCertStoreName] [/sv SubjectKeyFile] OutputFilePartial list of switches and arguments

/b DateStart
指定证书首次生效的开始日期。DateStart 的格式为

月/日/年。
如果未指定 /b 开关,则默认开始日期为创建证书的日期。

/e DateEnd
指定证书有效期结束的结束日期。DateEnd 的格式为

月/日/年。
如果未指定 /e 开关,则默认结束日期为 2039 年 12 月 31 日。

/m nMonths

指定从开始日期起的有效月份数,在此期间证书将保持有效。

/n "Name"
为证书指定一个名称。此名称必须符合 X.500 标准。最简单的方法是使用“CN=MyName”格式。
如果未指定 /n 开关,则证书的默认名称为“Joe's Software Emporium”。

/pe
配置 MakeCert 使证书关联的私钥可导出。

/r
配置 MakeCert 创建一个自签名根证书。/sc SubjectCertFile
指定主题的证书文件名以及用于的现有主题公钥。

/sk SubjectKey
指定包含私钥的主题密钥容器的名称。如果密钥容器不存在,将创建一个新的密钥容器。如果未输入 /sk 或 /sv 开关,将创建一个默认密钥容器并默认使用。

/sr SubjectCertStoreLocation
指定证书存储的注册表位置。SubjectCertStoreLocation 参数必须是以下两者之一:
currentUser
指定注册表位置 HKEY_CURRENT_USER。
localMachine
指定注册表位置 HKEY_LOCAL_MACHINE。
如果未同时指定 /r 开关和 /s 开关,则 currentUser 是默认值。

/ss SubjectCertStoreName
指定存储生成证书的证书存储名称。

/sv SubjectKeyFile
指定包含私钥的主题 .pvk 文件的名称。如果未输入 /sk 或 /sv 开关,将创建一个默认密钥容器并默认使用。
OutputFile
生成证书保存的文件名。
 

步骤 2:创建证书
 

第二步是创建证书。您可以通过命令提示符在“C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\Bin”下键入以下内容。请注意,“compaq-jzp37md0”是服务器名称,您需要将其替换为您自己的 PC 名称。
 

makecert -r -pe -n "CN= compaq-jzp37md0 " -b 01/01/2000 -e 01/01/2050 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localMachine -sky exchange -sp "Microsoft RSA SChannel Cryptographic Provider" -sy 12

如果您通过命令提示符运行它,您应该会收到如下所示的成功消息。
 

 

步骤 3:将证书分配给站点
 

现在该将此证书分配给您的 IIS 网站了。因此,请转到 IIS 属性,单击目录安全选项卡,您应该会看到服务器证书选项卡。
 

 

因此,单击服务器证书选项卡,然后 IIS 证书向导将引导您完成。从向导中选择“分配现有证书”。

您可以看到证书列表。“compaq-jzp37md0”证书是我们刚刚使用“makecert.exe”创建的证书。

 

步骤 4:测试站点


现在尝试在没有“https”的情况下测试站点,您将收到如下所示的错误……这意味着您的证书正在工作。
 

 

步骤 5:找一家好餐厅
 

既然您已经节省了 100 美元,找一家好餐厅来花掉吧……
 

SSL 诊断工具
 

还有另一种简单的方法,可以使用 SSL 诊断工具。从 http://www.microsoft.com/downloads/details.aspx?familyid=CABEA1D0-5A10-41BC-83D4-06C814265282&displaylang=en 下载此工具,然后只需单击一下即可在 IIS 应用程序上创建新证书,如下所示。
 

图片来源:- http://pranas.net/Tutorials/ssl/SSLDiagnostics.htm

如需进一步阅读,请观看以下面试准备视频和分步视频系列。

© . All rights reserved.