无法通过Google Cloud Compute引擎实例中的外部IP连接

时间:2018-12-30 05:37:04

标签: security google-cloud-platform google-compute-engine

我在GCP中创建了计算引擎实例来部署我的Web应用程序,它在实例中可以正常运行(localhost:8080)。 但是,使用外部IP地址,即使我已通过防火墙规则为所有实例允许0.0.0.0/0,我也无法访问它。我同时添加了端口tcp:8080和tcp:8444但它不允许甚至可以连接“ Telnet”。

Connecting To 35.185.98.244...Could not open connection to the host, on port 8444: Connect failed

Connecting To 35.185.98.244...Could not open connection to the host, on port 8080: Connect failed

有人可以帮助我解决这个问题吗?

我的git网址:https://github.com/ChkBuk/myexamples/tree/master/SyneBiz

1 个答案:

答案 0 :(得分:0)

  1. 看看GCP中的防火墙规则。确保您允许端口80的入口流量(因为您是从浏览器访问它的)。端口8080和8444是内部访问的本地端口。这些港口不向公众开放。您必须确保有一条转发规则将流量从端口8080/8444重定向到端口80。

  2. 最终,尝试在计算引擎实例内或GCP外部测试URL连接和端口。下面是一些示例:

    $ curl http://[external-IP-vm-address]:80

    $ telnet localhost 80

    $ nmap <external-ip-vm-address>

    $ netstat -plant

    您还可以执行其他网络测试。您可以查阅此讨论thread from Stackexchange

  3. 最后,可能是端口8080和8444已被其他进程使用。因此,您无法连接到它们。

    请尝试以下故障排除步骤。键入:

    $ netstat -tulpn

    上面的命令将显示在各自端口上运行的所有进程的列表。如果端口8080/8444存在,请查看端口上正在运行的现有进程。然后,您可以终止该过程。有关对在端口8444和8080上运行的进程进行故障排除的详细信息,您可以consult this article