Sun*_*nny 13 iis ssl certificate renew
我的一个 SSL 证书(仅限简单域验证)即将在 Windows 2003 IIS 7.0 服务器上过期。
我从另一家供应商那里得到了更好的报价,最初颁发我证书的人不想谈判更低的价格。
无论如何 - 通过 IIS 中的证书向导,我可以选择“更新”或“卸载”,然后安装新证书。
那么 - 我可以使用“更新”选项来创建证书请求并将其传递给新供应商,还是需要从“新”请求开始?对于新供应商来说,以前的证书是由另一个签名者颁发的,这是否重要?
问题是,我不想因为删除旧证书和创建新 CSR 而停止服务器(至少是安全部分),并等待新证书安装。
或者,是否可以选择在不删除旧证书的情况下准备新的 CSR?
更新证书允许您在更新证书的到期日期时保留相同的公钥和私钥。这样做的好处是,如果您必须将指纹存储在路由器或其他东西上。我相信更新请求需要相同的颁发 CA,因此手动生成新请求可能更容易。
您可以手动创建证书请求并提交。获得新证书后,您就可以切换 IIS7 正在寻找的证书。如何手动创建 Web 服务器 SSL 证书。
该过程的简单要点是您将创建一个包含所需信息的 inf 文件 run certreq -new file.inf file.req
。获得请求文件后,您可以将其提交给要颁发证书的 CA,然后接受他们使用命令发送给您的公钥certreq -accept file-from-ca.req
[Version]
Signature="$Windows NT$"
[NewRequest]
Subject = "CN=fully.qualified.domain.name, OU=Organizational Unit, O=Company, L=City, S=State, C=Country"
KeySpec = 1
KeyLength = 2048
HashAlgorithm = SHA256
Exportable = FALSE
MachineKeySet = TRUE
SMIME = FALSE
PrivateKeyArchive = FALSE
UserProtected = FALSE
UseExistingKeySet = FALSE
RequestType = PKCS10
KeyUsage = 0xa0
ProviderName = "Microsoft RSA SChannel Cryptographic Provider"
FriendlyName = ""
[EnhancedKeyUsageExtension]
OID=1.3.6.1.5.5.7.3.1 ; Server Authentication
[RequestAttributes]
CertificateTemplate = WebServer
[Extensions]
2.5.29.17 = "{text}"
_continue_ = "DNS=&"
_continue_ = "DNS="
Run Code Online (Sandbox Code Playgroud)
上面的示例 inf 是我在内部为自己的 CA 使用的示例,但可以适用于大多数环境。Exportable
如果您希望能够存档您的密钥,您可以设置为 TRUE。这FriendlyName
是完全可选的,该Extensions
部分用于使用备用 DNS 名称(主题备用名称)。
SAN 条目的一个示例是:
[Extensions]
2.5.29.17 = "{text}"
_continue_ = "DNS=example.com&"
_continue_ = "DNS=www.example.com&"
_continue_ = "DNS=secure.example.com"
Run Code Online (Sandbox Code Playgroud)
这将允许您对上述三个站点使用相同的证书,而不会抱怨名称不匹配(在现代浏览器上 - 我认为 IE6 无法理解)。如果您设置了完全限定域名(主题行的 CN),请务必将其包含在 SAN 中。如果您不需要多个域名,您也可以完全删除扩展区域(此外,某些 CA 可能不支持它)。
一旦你保存了上述信息(我知道它很多)。按着这些次序:
certreq -new above.inf request.req
certreq -accept file-from-ca.cer
以完成设置密钥。祝你好运!
certreq 和 inf 文件的完整语法可以在附录 3:Certreq.exe 语法(Windows Server 2003 SP1)中找到。该FriendlyName
和HashAlgorithm
仅服务器2008(和R2)。您可以通过运行命令certutil -csplist
并查看输出来查看受支持的加密提供程序的列表。当前的 Windows 2003 SP2 框确实将“Microsoft RSA SChannel Cryptographic Provider”列为可用提供程序,因此请确保您的文件正确设置了引号,并且该条目仅位于一行(无换行或多行)。
您还可以将 ProviderName 更改为 ProviderType 并使用certreq -csplist
.
在这种情况下,我得到以下输出:
Provider Name: Microsoft RSA SChannel Cryptographic Provider
Provider Type: 12
Run Code Online (Sandbox Code Playgroud)
所以我可以使用
ProvderName = "Microsoft RSA SChannel Cryptographic Provider"
Run Code Online (Sandbox Code Playgroud)
或者
ProviderType = 12
Run Code Online (Sandbox Code Playgroud)
您只需要使用 IIS 6.0 创建一个临时网站。IIS 7.0 允许您一次创建多个挂起的请求。
IIS 7.0 实际上有一个错误,它会导致更新功能生成一个带有非常大的密钥(比您想要的大得多)的 CSR。因此,建议您创建一个新的待处理请求,而不是选择续订选项。安装后,您只需在网站上切换 SSL 绑定,就不会出现任何停机时间。这还允许您在每次续订时生成一个新密钥,从而提高安全性。
证书提供者 (CA) 不关心您是使用新选项还是续订选项,无论您是使用同一个 CA 还是从新 CA 订购,您都可以使用任一选项。
归档时间: |
|
查看次数: |
18667 次 |
最近记录: |