IIS 7.5创buildvalidationdate为一年以上的自签名证书

我正在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.comcn= (通用名)很重要,所以千万不要错过。

  • /v:3650 – 证书的有效天数,在这种情况下是十年

  • /s:8 – 在站点ID 8安装证书

  • /k:2048 – 使用2048位的密钥长度。

不幸的是,没有办法将SSL直接输出到一个文件,你必须把它安装到一个站点。 好消息是证书是可导出的。

如果您希望在使用自签名SSL浏览网站时关于SSL的警告不被信任,那么您也可以修复此问题:

  1. 将自签名的SSL导出到.pfx文件(您需要设置密码,确保记住它)
  2. 启动(从命令行或开始 – >运行) mmc certmgr.msc
  3. 浏览到Trusted Root Certificate Authorities -> Certificates并右键单击以进入Import...选项:

    在这里输入图像描述

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

    在这里输入图像描述

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

    在这里输入图像描述

    展开Trusted Root Certificate Authorities并根据上面的屏幕截图selectLocal Computer ,然后单击OK ,然后单击Next >

  6. 点击最后的向导步骤中的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自我签署的证书,如本文所述堆栈溢出答案:

https://stackoverflow.com/a/30517344/537961

生成自签名证书的另一个简单方法是使用Jexus Manager,

Jexus经理

  1. 在“连接”面板中select一个服务器节点。
  2. 在中间的面板中,单击服务器证书图标打开pipe理页面。
  3. 在“动作”面板下,单击“生成自签名证书…”菜单项。

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