我正在尝试用一个新的证书替换过期的证书,该证书有 2 年的有效期(使用 IIS GUI 创建自签名证书,我只获得了 1 年),并使用 Exchange 管理外壳,使用如下方法:
new-exchangecertificate -subjectname "<...>" -domainname <...> -generaterequest:$True -keysize 2048 -path <...> -privatekeyexportable:$True
然后选择我的 CA。之后,
certreq.exe -submit -attrib "CertificateTemplate:WebServer" <...>
设置证书用途。
但经过仔细检查后,该证书似乎没有私钥。
所以我的问题是,如何添加或生成包含私钥的自签名证书,以便能够将其导入到 IIS。
答案1
从 WS Exchange 管理控制台,我能够生成并设置证书模板(就像在这里完成的那样:http://www.beaconitservices.com/blog/2014/09/creating-self-signedinternal-ca-certificates-for-exchan...),就像一个 web 服务器(https),并将其链接到当前的 CA:
New-ExchangeCertificate -subjectName “CN=contoso.com” -DomainName contoso.com -GenerateRequest:$True -Keysize 2048 -path c:\temp\contoso.req -privatekeyExportable:$true
certreq.exe -submit -attrib “CertificateTemplate:WebServer” c:\temp\contoso.req
然后必须将其导入到 certmgr,然后使用私钥导出,以便我将其设置为 pkcs(*.pfx)。之后,我执行了下一步,没有检查任何选项。并为这个 *.pfx 设置密码。之后,我从服务器中删除该私钥文件。在 ISS 中,进行导入,然后进入交换 Web 服务并选择“绑定”HTTPS(443) 以使用我的新证书。
在此过程之后,请不要忘记删除私钥。