Firewall

為 Vercel 服務添加 Google Cloud Platform 防火牆規則

  • January 18, 2021

我目前將我的數據庫託管在 Google Cloud Platform VM 上,連接到它的無伺服器 API 託管在 Vercel 上。

我已經設法在 GCP 防火牆中允許我的 IP,但是我在允許從 API 連接到數據庫時遇到了困難。

GCP 防火牆不接受防火牆的任何非 IP 值,所以我不能簡單地添加我的主機名。

我擁有 API 使用的域,但 IP 顯然由 Vercel 控制。我嘗試 ping 我的域以找出 Vercel 的 IP ( 76.76.21.21) 並將其作為IP Range 76.76.21.21/32添加到我的防火牆中,但我的 API 在嘗試連接時仍然超時。

我已經允許來自 Postgres 的所有連接,所以我知道不可能這樣。

關於如何允許我的 API 通過防火牆的任何想法?

我建議您啟用幾個小時的 VPC 和防火牆日誌記錄,以確認來自 Vercel API 的 IP,然後您可以將其列入白名單,但是我發現 Vercel 部署使用動態 IP 地址,因為平台,所以,IP將一直在變化。

您必須允許 GCP 防火牆規則 0.0.0.0/0 中的開放範圍通過您用於在 GCP 中查詢數據庫的 TCP/UDP 埠,並正確保護您的數據庫,他們建議使用隨機生成的密碼,儲存為一個環境變數,長度至少為 32 個字元,並定期輪換此密碼。

請檢查以下連結以獲取更多參考。

$$ 1 $$. https://vercel.com/knowledge/how-to-allowlist-deployment-ip-address $$ 2 $$. https://cloud.google.com/vpc/docs/using-flow-logs#console $$ 3 $$. https://cloud.google.com/vpc/docs/using-firewall-rules-logging#gcloud

引用自:https://serverfault.com/questions/1050281