Windows申请免费SSL证书
以下脚本是在Windows下用PowerShell的ACMESharp申请 let\’s encrypt的免费SSL证书(单证书签多域名)
$domain1 = "www.domain.com" $alias2 = "www$(get-date -format yyyyMMddHH)" $domain2 = "us.domain.com" $alias2 = "us$(get-date -format yyyyMMddHH)" $multiNameCert = "multiNameCert$(get-date -format yyyyMMddHH)" $certPassword = "pa$$word" $mail = "lu@shaobin.cn" $path = "D:\证书\path\" #1 导入模块 Import-Module ACMESharp #2 初始化存储证书和相关信息 Initialize-ACMEVault #3 注册用户信息 New-ACMERegistration -Contacts mailto:$mail -AcceptTos #4 创建域名 New-ACMEIdentifier -Dns $domain1 -Alias $alias1 #验证域名所有权( 5.1 IIS验证 和5.2 DNS验证 方式选择 一个就可以 ) #5.1.1 基于IIS验证(IIS的站点名和验证的域名要一致) Complete-ACMEChallenge $alias1 -ChallengeType http-01 -Handler iis -HandlerParameters @{ WebSiteRef = \'$domain1\' } #5.1.2 提交申请 Submit-ACMEChallenge $alias1 -ChallengeType http-01 #5.2.1 基于DNS 认证(需要添加一条TXT记录) Complete-ACMEChallenge $alias1 -ChallengeType dns-01 -Handler manual #5.2.2 提交申请 Submit-ACMEChallenge <Mark> -ChallengeType dns-01 #5.2.3 验证DNS (Update-ACMEIdentifier $alias1 -ChallengeType dns-01).Challenges | Where-Object {$_.Type -eq "dns-01"} #6 查看Let\'s Encrypt的验证结果 Update-ACMEIdentifier $alias1 # 重复4-6流程 添加第2个域名 #7 创建证书(-AltRefs 多域名一起提交) New-ACMECertificate $alias1 -Generate -AltRefs $alias1,$alias2 -Alias $multiNameCert #8 提交证书 Submit-ACMECertificate $multiNameCert #9 更新证书 Update-ACMECertificate $multiNameCert #10 下载证书文件 #下载私钥 Get-ACMECertificate $multiNameCert -ExportKeyPEM "$path$multiNameCert.key.pem" #下载证书签名请求(CSR) Get-ACMECertificate $multiNameCert -ExportCsrPEM "$path$multiNameCert.csr.pem" #下载LE证书 Get-ACMECertificate $multiNameCert -ExportCertificatePEM "$path$multiNameCert.crt.pem" #下载CA中间证书 Get-ACMECertificate $multiNameCert -ExportIssuerPEM "$path$multiNameCert-issuer.crt.pem" -ExportIssuerDER "$path$multiNameCert-issuer.crt" #下载IIS用的pfx文件 Get-ACMECertificate $multiNameCert -ExportPkcs12 "$path$multiNameCert.pfx" -CertificatePassword $certPassword
相关链接:
ACMESharp:https://github.com/ebekker/ACMESharp
参考文章:http://www.cnblogs.com/denny-duan/p/apply-free-ssl-ca-win7-powershell-letsencrypt.html
版权声明:本文为shaobin86原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。