毫无疑问,开发人员和IT管理员需要使用SSL证书通过HTTPS部署一些网站。虽然这个过程对于生产站点来说非常简单,但是出于开发和测试的目的,您可能会发现这里也需要使用SSL证书。
作为购买和续订年度证书的替代方法,您可以利用Windows服务器生成自签名证书的能力,该证书方便、简单,并且应该完全满足这些类型的需要。
虽然有几种方法可以完成创建自签名证书的任务,但我们将使用来自Microsoft的SelfSSL实用程序。不幸的是,它没有随IIS一起提供,但是它可以作为iis6.0资源工具包的一部分免费提供(本文底部提供了链接)。尽管名称为“iis6.0”,但该实用程序在iis7中运行良好。
所需的只是提取IIS6RT以获取selfssl.exe实用程序。从这里您可以将它复制到您的Windows目录或网络路径/USB驱动器,以便将来在另一台机器上使用(因此您不必下载并提取完整的IIS6RT)。
安装好SelfSSL实用程序后,以管理员身份运行以下命令,并根据需要替换<>中的值:
selfssl /N:CN=<your.domain.com> /V:<number of valid days>
下面的示例针对“”生成自签名通配符证书mydomain.com“并将其设置为有效期为9999天。此外,通过对提示回答yes,此证书将自动配置为绑定到IIS默认网站内的端口443。
虽然此时证书可以使用,但它只存储在服务器上的个人证书存储中。最好的做法是在受信任的根目录中也设置此证书。
进入开始>运行(或Windows键+R)并输入“mmc”。您可能会收到一个UAC提示,接受它并打开一个空的管理控制台。
在控制台中,转到“文件”>“添加/删除管理单元”。
从左侧添加证书。
选择计算机帐户。
选择本地计算机。
单击“确定”查看本地证书存储。
导航到“个人”>“证书”,并找到使用SelfSSL实用程序设置的证书。右键单击证书并选择“复制”。
导航到受信任的根证书颁发机构>证书。右键单击证书文件夹并选择粘贴。
SSL证书的条目应出现在列表中。
此时,服务器在使用自签名证书时应该没有问题。
如果您要访问的站点在任何客户机(即不是服务器的任何计算机)上使用自签名SSL证书,为了避免证书错误和警告的潜在冲击,应在每个客户机上安装自签名证书(我们将在下面详细讨论)。为此,我们首先需要导出相应的证书,以便将其安装到客户机上。
在已加载证书管理的控制台内,导航到Trusted Root Certification Authorities>Certificates。找到证书,右键单击并选择“所有任务”>“导出”。
当提示导出私钥时,选择“是”。单击“下一步”。
保留文件格式的默认选择,然后单击“下一步”。
输入密码。这将用于保护证书,如果不输入此密码,用户将无法在本地导入证书。
输入导出证书文件的位置。它将是PFX格式。
确认设置并单击“完成”。
生成的PFX文件将安装到您的客户机上,告诉他们您的自签名证书来自可信的来源。
一旦在服务器端创建了证书并使所有内容正常工作,您可能会注意到,当客户机连接到相应的URL时,会显示一个证书警告。这是因为证书颁发机构(您的服务器)不是客户端上SSL证书的可信源。
您可以单击警告并访问该站点,但是您可能会收到以突出显示的URL栏或重复证书警告形式出现的重复通知。为了避免这种麻烦,您只需在客户机上安装自定义SSL安全证书。
根据您使用的浏览器,此过程可能会有所不同。IE和Chrome都从Windows证书存储读取,但是Firefox有一个处理安全证书的自定义方法。
重要提示:永远不要安装来自未知源的安全证书。实际上,只有在生成证书时才应该在本地安装证书。没有合法的网站会要求你执行这些步骤。
注意:即使Firefox不使用本机Windows证书存储,这仍然是一个建议的步骤。
将从服务器(PFX文件)导出的证书复制到客户端计算机或确保它在网络路径中可用。
使用与上面完全相同的步骤打开客户端计算机上的本地证书存储管理。你最终会出现在下面的屏幕上。
在左侧,展开Certificates>Trusted Root Certification Authorities。右键单击证书文件夹并选择所有任务>导入。
选择本地复制到计算机的证书。
输入从服务器导出证书时分配的安全密码。
存储“受信任的根证书颁发机构”应作为目标预先填充。单击“下一步”。
查看设置并单击“完成”。
你应该看到一条成功的信息。
刷新“受信任的根证书颁发机构”>“证书”文件夹的视图,您将看到存储中列出了服务器的自签名证书。
完成后,您应该能够浏览到使用这些证书的HTTPS站点,并且不会收到任何警告或提示。
Firefox处理这个过程有点不同,因为它不从Windows应用商店读取证书信息。它允许您为特定站点上的SSL证书定义异常,而不是安装证书(本身)。
当您访问一个有证书错误的站点时,您将得到如下警告。蓝**域将命名您尝试访问的相应URL。要创建异常以绕过相应URL上的此警告,请单击“添加异常”按钮。
在“添加安全异常”对话框中,单击“确认安全异常”以在本地配置此异常。
请注意,如果某个特定站点从其自身重定向到子域,您可能会收到多个安全警告提示(每次的URL略有不同)。使用与上面相同的步骤为这些url添加异常。
值得重复上面的注意事项,即永远不要安装来自未知源的安全证书。实际上,只有在生成证书时才应该在本地安装证书。没有合法的网站会要求你执行这些步骤。
从Microsoft下载IIS 6.0资源工具包(包括SelfSSL实用工具)
... (反向代理允许服务器代表客户机从一个或多个其他服务器检索资源或数据。在许多情况下,这是一种保护服务器的安全措施。) ...
...要事先知道这些功能到底是什么,它们做什么,以及它们如何帮助您。 ...
...坦的问题。全世界的互联网用户都应该意识到安全工具是如何被滥用的。这些工具可能会损害隐私,并收集有关您访问的网站和在线发送的消息的数据。 ...
...。 客户端验证证书信息。 客户机使用服务器公钥生成共享密钥(也称为预主密钥)并将其发送到服务器。 服务器解密秘密共享密钥。 客户机和服务器现在可以使用秘密...
... 大多数描述如何安装SSL证书的指南都会告诉您必须有一个专用的IP。这意味着购买更昂贵的专用托管计划。 ...
...访问的人会认为你更值得信任。现在,大多数用户都知道如何检查安全连接,因此安装SSL证书表明您认真对待他们的隐私。 ...
... 下面介绍如何快速生成SSL证书,并在几分钟内免费在您的网站上实现它们。 ...
...洞总是被释放,这也是保持更新的另一个原因。 相关:如何设置NAS(网络连接存储)驱动器 禁用默认管理员帐户 你的NAS有一个默认的管理员帐户,用户名很可能是“admin”(真有创意,哈?)。问题是您通常无法更改此默认帐...