Lets-Encrypt
Certbot 未經授權和連接錯誤
我在 Google Cloud CentOS 7 上有一個 Spring Boot 應用程序。我希望通過 Let’s Encrypt 和 Certbot 安裝 SSL 證書。當我使用
certbot --apache -d mydomain.zone
命令時,我收到一個錯誤:我的域名在 Namecheap 上註冊。我在 Google Cloud 上的 A 記錄:
我還像本教程一樣在 Namecheap 中提供了Google云名稱伺服器:https ://www.wpmentor.com/setup-domain-google-cloud-platform/
你能告訴我問題出在哪裡嗎?我也想知道我的應用程序中的 java 程式碼是否有問題。例如,有時在訪問索引頁時,會呼叫 error_page。當我的控制器中有一個方法時:
@RequestMapping(value = "/error_page", method = RequestMethod.GET) public String homeError(Model model) { return "/error_page"; }
我有一個不同的 certvbot 錯誤:
但是當我評論/刪除錯誤頁面的控制器方法時,我收到此錯誤:
可能是應用程序錯誤嗎?還是apache的問題?
我試圖關閉Tomcat。現在我收到此錯誤:
注意:我的 Apache 轉發到 8080,不知道會不會有問題?
iptables -A PREROUTING -t nat -p tcp --dport 80 -j REDIRECT --to-port 8080
Let’s Encrypt 正在嘗試通過啟動一個臨時 Web 伺服器並讓 Let’s Encrypt 伺服器嘗試與其聯繫來驗證您對伺服器的所有權。
您將需要:
- 禁用任何目前正在執行的 Web 伺服器
- 確保可以從 Internet 訪問埠 80
您已經通過停止 Apache 完成了第 1 步,現在您需要修復您的
iptables
規則。看起來您正在將流量從埠 80 轉發到埠 8080,這很可能是您收到
Connection refused
錯誤的原因,因為臨時 Web 伺服器的流量正在進入埠 8080。禁用/修復該規則並且驗證應該成功。