![](/img/trans.png)
[英]google cloud platform - mySQL access denied from compute engine instance with public IP
[英]Cannot access Google Cloud Compute Instance External IP
我已經設置了一個谷歌雲計算實例:
我可以 ssh 在使用外部地址。
我已經安裝了vncserver
並且可以從本地主機以及內部 IP 端口 5901 訪問它。
我正在嘗試從 static、外部 IP 地址訪問它,但它不起作用。
我已將防火牆配置為打開端口0.0.0.0/0 ,但無法訪問。
誰能幫忙?
------根據兩個答案的提示進一步調查(謝謝,兩個):我有一個部分答案:
默認情況下,谷歌雲計算實例設置為不允許 HTTP 流量。 我重置配置以允許 HTTP 流量。 然后我嘗試了故障排除提示,在 python 中運行一個小的 HTTP 服務。我能夠通過 inte.net 從該服務獲得響應。
目前情況總結如下:
vncserver
的流量知道如何配置計算實例以允許vncserver
流量嗎?
如果您已經確認Google 防火牆或您的 VM 沒有阻止數據包,您必須確保 VNC 服務配置為偵聽外部 IP 地址。
您始終可以在 Google 項目之外使用諸如nmap 之類的實用程序來顯示有關端口狀態的信息。
根據需要啟用防火牆的 http/https 流量。 它會起作用!!
默認情況下,Google Cloud Compute 實例設置為不允許 HTTP 流量。 我重置了配置以允許 HTTP 流量。 然后我嘗試了故障排除技巧在 python 中運行一個小的 HTTP 服務。 我能夠通過互聯網從服務中得到響應。
因此,回答了原始問題,我可以訪問 Google Cloud Compute Instance External IP。 我的更廣泛的問題仍然沒有解決,但我會發布一個關於這個問題的新的、更具體的問題
使用提到的本地轉發端口在您的本地 ssh 配置文件中創建一個條目,如下所示。 在我的例子中,它是一個紗線 IP 的例子,我想在瀏覽器中訪問它。
Host hadoop
HostName <External-IP>
User <Local-machine-username>
IdentityFile ~/.ssh/<private-key-for-above-user>
LocalForward 8089 <Internal-IP>:8088
除了在 Google Cloud Platform 和實例的操作系統中設置允許 HTTP 流量的防火牆規則之外,請確保您安裝了 Web 服務器,例如 Apache 或 Nginx。
安裝 Web 服務器后,您使用 SSH 連接到實例,並使用以下命令驗證您沒有獲得失敗的連接:
$ sudo wget http://localhost
如果連接是肯定的,則意味着您可以訪問您的外部 URL:
http://<IP-EXTERNAL-VM>
TLDR:確保您請求的是http
而不是https
在我的情況下,我正在關注來自我的 CE 實例的External Ip
屬性的鏈接,該鏈接將您直接帶到https
版本,但我沒有設置 https,因此導致了“未找到站點”錯誤。
通常有兩個主要的事情要檢查。
1. Port
默認情況下,僅公開port 80, 443 and ICMP
。 如果您的服務器在不同的端口上運行,請為其創建一個記錄。
2. Firewall
確保您根據需要允許 http 和 https 流量。 瓦雷
對我來說,問題是我將防火牆規則的流量設置為“出口”而不是“入口”。
如果有人已經啟動了“https”,請將其禁用並再次檢查。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.