powershell傳教士原創 2020-04-12
Let’s Encrypt證書有效期3個月,支持泛域名【*.你的網站.net】。支持n天內(通常10天內就夠用了),用腳本自動續期。
簡介:
這個模塊支持acmev2的api,這個模塊支持跨平臺運行,支持linux下使用。
這個模塊,能夠經過http,設置下級域名(dns)來認證域名。不支持經過在httpd下存放特殊文件,來驗證域名。
dns插件支持:azure,aliyun,dnspod,aws,windns,bind等
dns插件支持列表:
https://github.com/rmbolger/Posh-ACME/wiki/List-of-Supported-DNS-Providers
官網:
https://github.com/rmbolger/Posh-ACME
powershell畫廊網址:
https://www.powershellgallery.com/packages/Posh-ACME
win,linux下,用管理員安裝:
Install-Module -Name Posh-ACME
用管理員權限,開啓powershell執行權限:(linux跳過此步驟)
Set-ExecutionPolicy RemoteSigned -Force
指定從Let’s Encrypt非生產服務器獲取證書,並接受協議:
Set-PAServer LE_STAGE #設定測試服務器,能夠無限次數獲取證書玩。
指定從Let’s Encrypt生產服務器獲取證書,並接受協議:
Set-PAServer LE_PROD #設定生產服務器,限制速率。
建立Let’s Encrypt帳戶:
New-PAAccount -AcceptTOS ` #接受協議,並建立帳戶,只須要運行一次
-Contact 'me@example.com' #你的網站管理郵箱
經過dns和應答txt,來獲取Let’s Encrypt證書:
New-PACertificate '*.example.com','example.com' ` #要受權的域名
-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管理權限,經過命令,去dns上設置個【uuid相似】的特殊子域名,來證實你擁有域名的管理權限。
#因此這裏,
須要輸入你的dns管理員,帳戶和密碼。
獲得的證書,的存儲路徑:
Windows:
%LOCALAPPDATA%\Posh-ACME
linux:
~/.config/Posh-ACME
證書文件說明:
cert.cer(Base64編碼的PEM證書)
cert.key(Base64編碼的PEM私鑰)
cert.pfx(帶有證書+密鑰的PKCS12容器)
chain.cer(帶有頒發CA證書鏈的Base64編碼的PEM)
fullchain.cer(帶有cert + chain的Base64編碼的PEM)
fullchain.pfx(帶有證書+密鑰+鏈的PKCS12容器)
輸出,獲得的證書,詳細信息:
Get-PACertificate | Format-List
續訂證書:
Submit-Renewal
centos先更新根證書:
yum install ca-certificates update-ca-trust