我對谷歌計算引擎有點陌生,并設法讓一個帶有 nginx 的網路服務器在我的谷歌域上作業并安裝了 WordPress。HTTP 訪問正常。現在我想讓 HTTPS 也能正常作業。
我注意到我沒有運行 SSL,所以我最終使用了 cloudflare,對我的 nginx 服務器進行了必要的更改,并在 Google Compute Engine 上更改了我的網路服務器 IP 地址的名稱服務器。這很好用。盡管如此,訪問IP地址而不是域名時仍然存在一些錯誤(400 Bad Request No required SSL certificate was sent nginx/1.18.0 (Ubuntu))。
所以,我聽說 Google 可以在我的 google 域上執行 SSL,但我真的堅持使用檔案https://cloud.google.com/appengine/docs/standard/python/securing-custom-domains-with-ssl? authuser=2#upgrading_to_managed_ssl_certificates。它談到了 Google App Engine,我還沒有找到將 SSL 證書應用于我的 Google Compute Engine 實體的檔案。雖然,我在那里添加了一個自定義域,但它指向的 IP 地址與我在 Google Compute Engine 上的網路服務器不同。那肯定不是正確的方法?
因此,有誰知道如何使用 Google Compute Engine 上的 VM 實體從 Google 獲取 SSL 以在我的網路服務器上作業?
(我自己注意:https : //www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-20-04)
uj5u.com熱心網友回復:
在 Compute Engine 上設定 SSL 非常容易。
第 1 步:域名
確定您需要 SSL 證書的域名。通常你想要兩個。裸域 (example.com) 和區域 www ( www.example.com )。將 example.com 替換為您的實際域名。
注意:Let's Encrypt 不會為 IP 地址頒發 SSL 證書。這也意味著您無法使用 SSL 指定 IP 地址而不是域名來訪問您的 Web 服務器。嘗試這個會產生一個錯誤:https : //my-ip-address.com
第 2 步:設定 DNS
將您的 DNS 服務器更改為直接指向您的 Compute Engine 實體保留的靜態 IP 地址。此時,不要使用 CloudFlare。Let's Encrypt 將直接與您的 Nginx Web 服務器對話。驗證每個域名是否配置正確,并且您可以通過 HTTP(http://example.com和http://www.example.com)訪問您的站點。
以下說明取決于作業系統,適用于基于 Debian 的系統,例如 Debian 和 Ubuntu。CentOS、Red Hat等也有類似的步驟。
第 3 步:安裝 Certbot
Certbot 是 Let's Encrypt 的軟體代理。這需要在您的系統上安裝 Python3。大多數 Google Cloud 實體都安裝了 Python 3。
在您的虛擬機實體上運行以下命令:
- sudo apt 更新
- sudo apt 升級 -y
- 須藤 apt 安裝 certbot python3-certbot-nginx
第 4 步:VPC 防火墻
確保在 Google Cloud VPC 防火墻中允許埠 80 和 443。
使用防火墻規則
第 5 步:頒發 SSL 證書
在您的虛擬機實體上運行以下命令。將 example.com 替換為您的域名。
- 須藤 certbot --nginx -d example.com -d www.example.com
概括
您的服務器現在已配置 SSL。SSL 證書將自動續訂。只要您不更改域名或 DNS 服務器設定,SSL 將繼續發揮作用。
將來,您可能決定將 SSL 證書卸載到其他服務,例如 Cloudflare 或 Google HTTP(S) 負載均衡器。我建議您了解如何直接在您的實體上設定 SSL,以便進行端到端加密。然后,您可以決定 SSL 卸載、快取、負載平衡、自動縮放和更多選項。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/384732.html
