powershell傳教士原創(chuàng) 2020-04-12
Let’s Encrypt證書有效期3個月,支持泛域名【*.你的網(wǎng)站.net】。支持n天內(nèi)(一般10天內(nèi)就夠用了),用腳本自動續(xù)期。
簡介:
這個模塊支持acmev2的api,這個模塊支持跨平臺運行,支持linux下使用。 這個模塊,可以通過http,設(shè)置下級域名(dns)來認證域名。不支持通過在httpd下存放特殊文件,來驗證域名。 dns插件支持:azure,aliyun,dnspod,aws,windns,bind等
dns插件支持列表: https://github.com/rmbolger/Posh-ACME/wiki/List-of-Supported-DNS-Providers
官網(wǎng):
https://github.com/rmbolger/Posh-ACME
powershell畫廊網(wǎng)址: https://www./packages/Posh-ACME
win,linux下,用管理員安裝:
Install-Module -Name Posh-ACME
用管理員權(quán)限,開啟powershell執(zhí)行權(quán)限:(linux跳過此步驟) Set-ExecutionPolicy RemoteSigned -Force
指定從Let’s Encrypt非生產(chǎn)服務(wù)器獲取證書,并接受協(xié)議:
Set-PAServer LE_STAGE #設(shè)定測試服務(wù)器,可以無限次數(shù)獲取證書玩。
指定從Let’s Encrypt生產(chǎn)服務(wù)器獲取證書,并接受協(xié)議:
Set-PAServer LE_PROD #設(shè)定生產(chǎn)服務(wù)器,限制速率。
創(chuàng)建Let’s Encrypt賬戶:
New-PAAccount -AcceptTOS ` #接受協(xié)議,并創(chuàng)建賬戶,只需要運行一次 -Contact 'me@example.com' #你的網(wǎng)站管理郵箱
通過dns和應(yīng)答txt,來獲取Let’s Encrypt證書:
New-PACertificate '*.example.com','example.com' ` #要授權(quán)的域名 -DnsPlugin Flurbog `#dns插件名字 -PluginArgs @{FBServer='fb.example.com'; FBCred=(Get-Credential)}
dns插件支持列表: https://github.com/rmbolger/Posh-ACME/wiki/List-of-Supported-DNS-Providers
#原理:它通過某個dns插件來工作。支持阿里,騰訊,dnspod等。 #通過dns插件,得到dns管理權(quán)限,通過命令,去dns上設(shè)置個【uuid類似】的特殊子域名,來證明你擁有域名的管理權(quán)限。 #所以這里,需要輸入你的dns管理員,賬戶和密碼。
得到的證書,的存儲路徑:
Windows: %LOCALAPPDATA%\Posh-ACME
linux: ~/.config/Posh-ACME
證書文件說明:
cert.cer(Base64編碼的PEM證書) cert.key(Base64編碼的PEM私鑰) cert.pfx(帶有證書+密鑰的PKCS12容器) chain.cer(帶有頒發(fā)CA證書鏈的Base64編碼的PEM) fullchain.cer(帶有cert + chain的Base64編碼的PEM) fullchain.pfx(帶有證書+密鑰+鏈的PKCS12容器)
輸出,得到的證書,詳細信息:
Get-PACertificate | Format-List
續(xù)訂證書:
Submit-Renewal
centos先更新根證書:
yum install ca-certificates update-ca-trust
|