我正在IIS 7.5中创build自签名SSL证书供内部使用。 我所面临的问题是我想要创造它们,使它们保持10年,因为它只是一个开发环境。
我在IIS 7.5中看不到选项,您可以在其中指定证书的有效时间。 默认情况下,它会创build一年内过期的证书。
有没有办法可以改变这个,所以创造它们,所以它们有效10年?
您可以使用IIS6资源工具包随附的SelfSSL.exe工具来执行此操作。 您可以从这里获取资源工具包:
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=17275
安装程序只是将工具解压缩到一个文件夹中,不会干扰您的任何机器设置。 自定义安装选项还允许您select要安装的工具,并将其放入您自己select的文件夹中。
打开pipe理员命令行并将目录更改为安装了SelfSSL命令行工具的位置。
要生成一个在10年内到期的新的自签名SSL证书,请执行以下操作:
selfssl /n:cn=www.mydomain.com / v:3650 / s:8 / k:2048
这将生成一个ssl,其中:
/n:cn=www.mydomain.com – SSL适用于www.mydomain.com 。 cn= (通用名)很重要,所以千万不要错过。
/v:3650 – 证书的有效天数,在这种情况下是十年
/s:8 – 在站点ID 8安装证书
/k:2048 – 使用2048位的密钥长度。
不幸的是,没有办法将SSL直接输出到一个文件,你必须把它安装到一个站点。 好消息是证书是可导出的。
如果您希望在使用自签名SSL浏览网站时关于SSL的警告不被信任,那么您也可以修复此问题:
.pfx文件(您需要设置密码,确保记住它) mmc certmgr.msc 浏览到Trusted Root Certificate Authorities -> Certificates并右键单击以进入Import...选项:

按照向导指定要导入的.pfx ,然后单击下一步(您将需要在步骤1中设置的密码):

在下一个向导步骤中,我们需要select使用哪个存储。 点击Browse...button,打开Select Certificate Store窗口。 我们需要看到实体店,所以确保在实体店里有一个勾号。

展开Trusted Root Certificate Authorities并根据上面的屏幕截图selectLocal Computer ,然后单击OK ,然后单击Next >
点击最后的向导步骤中的Finishbutton,如果一切正常,您应该看到:

警告和诀窍:
SelfSSL 可能需要安装IIS6pipe理兼容性组件。 我不能说,因为我自己的机器已经安装了这个,并没有得到一个虚拟机方便地通过删除它们来testing这个理论。
如果您希望能够将SSL添加到“受信任的根证书颁发机构”存储中,请将SSL发布到cn=www.mydomain.com而不是cn=mydomain.com 。
据我所知,IIS 7.x的问题是你不能设置SSL绑定的主机头。
使用appcmd命令行实用程序,您应该可以执行此操作。 网站可以使用相同的证书,但会有不同的主机头。
如果用数据运行以下2个命令,则应该configuration主机头。
c:\Windows\System32\inetsrv>appcmd set site /site.name:"local.yourdomain.com" /+bindings.[protocol='https',bindingInformation='*:443:local.yourdomain.com'] c:\Windows\System32\inetsrv>appcmd set site /site.name:"local.dev.yourdomain.com" /+bindings.[protocol='https',bindingInformation='*:443:local.dev.yourdomain.com']
不幸的是,还有一些事情需要你去做,但我不确定究竟是什么。 我知道我做了一些IIS重置,我重新select了SSL证书,但是我不确定这样做的顺序。 但是我知道我没有做任何“花哨”的东西,就像使用另一种工具。
OpenSSL也可以用来创build自我签署的证书,如本文所述堆栈溢出答案:
生成自签名证书的另一个简单方法是使用Jexus Manager,

https://jexus.lextudio.com/en/latest/tutorials/self-signed.html