이전에 有寫過一篇「在 Windows 申請 Let’s Encrypt wildcard 憑證」,該篇主要是透過 “Get HTTPS for free!” 網站以動手動方式申請或展延憑證。最近在架新的網站時,試著用 WIN-ACME 工具來申請,以方便之後使用其自動展延 (renewal) 功能。
◎ 首先至 WIN-ACME 的 GitHub 다운로드最新的工具,這邊以 win-acme.v2.1.22.1260.x64.pluggable.zip 為範例。
◎ 下載完成並解壓縮後,以「系統管理員身分」執行 wacs.exe。
◎ 다음,主要都是以 WIN-ACME 官方針對 apache 環境的範例설정。
◎ 輸入 “m”,手動設定各參數。

◎ 輸入 “m” 或按 Enter (預設 m),手動設定各參數。

◎ 輸入要申請憑證的網址,如 www.abc.com。

◎ 為此域名輸入一個好識別的別名,或是按 Enter 使用預設值。

◎ 輸入 “1”,제공 本機網站目錄路徑以進行域名驗證。

◎ 輸入本機網站根目錄路徑,如 C:\Web\Apache24\htdocs\abc。

◎ 輸入 “yes”,允許程式複製 web.config 至網站目錄做驗證。

◎ 輸入 “2” 或按 Enter (預設 2),以 RSA 產生 private key。

◎ 輸入 “2”,以產生 apache 適用的 PEM 憑證檔案。

◎ 輸入欲存放憑證檔案的目錄路徑,如 C:\Web\SSL。

◎ 輸入 “2”,為私鑰加上密碼,或輸入 “1” 不加密。

◎ 如果沒有要產生第二份憑證,입력 “5” 或按 Enter (預設 5) 계속。

◎ 특별한 요구가 없으면,입력 “3” 或按 Enter (預設 3) 계속。

◎ 검증 통과 후,'작업 스케줄러'에 인증서 갱신을 확인하는 스케줄 항목이 추가됩니다,이 작업을 특정 사용자로 실행할 필요가 없으면,입력 “아니요” 계속。

◎ 여기까지,인증서 신청이 완료됩니다。

◎ 이어서 인증서 디렉터리에서 방금 생성한 인증서를 확인할 수 있습니다。

주의. *-crt.pem + *-chain-only.pem = *-chain.pem
◎ '작업 스케줄러'에서 새로 추가된 WIN-ACME 항목을 볼 수 있습니다。

◎ 開啟 apache 的 httpd-ahssl.conf (或 httpd-ssl.conf 或 httpd.conf,看你的환경),增加一組 SSL 的 VirtualHost。
<VirtualHost *:443>
SSLEngine on
ServerName www.abc.com:443
SSLCertificateFile "C:\Web\SSL\www.abc.com-chain.pem"
SSLCertificateKeyFile "C:\Web\SSL\www.abc.com-key.pem"
DocumentRoot "${SRVROOT}/htdocs/abc"
</virtualhost>
◎ 如果 80 port 的 VirtualHost 不關,但想將 80 自动轉至 443,可在 80 port 的 VirtualHost 增加 “Redirect” 參數。
<VirtualHost *> DocumentRoot C:\Web\Apache24\htdocs\abc ServerName www.abc.com Redirect / https://www.abc.com/ </VirtualHost>
주의. https://www.abc.com/ 후면要有斜線,이렇게 才會將 http://www.abc.com/def 導至 https://www.abc.com/def,否则會變成 http://www.abc.comdef。
[相關連結],
- 在 Windows 申請 Let’s Encrypt wildcard 憑證 | 노송상담
- Releases · win-acme/win-acme · GitHub
- win-acme
- [apache] 安裝免費SSL 與設定 80 轉443 fro windows | 散步在海洋中的碼農 – 點部落
- Apache 重新定向到 HTTPS – SSL 사이트 보안 인증서 – ztabox.com
- Windows용 Let’s Encrypt for Apache | 노홍의 IT 학습 시스템








댓글 남기기