当 ssh 正常工作时,无法 curl 到我的虚拟机

当 ssh 正常工作时,无法 curl 到我的虚拟机

我正在尝试在 Ubuntu VM 上运行一个简单的 flask 服务器。

我可以通过 ssh 进入它,[email protected]但如果我执行,curl 123.456.789:8000我会得到一个操作超时,即使服务器正在监听:

 * Serving Flask app "app.py"                        
 * Environment: production                                                        
   WARNING: This is a development server. Do not use it in a production deployment.                  
   Use a production WSGI server instead.                 
 * Debug mode: off                                                                   
 * Running on http://127.0.0.1:8000/ (Press CTRL+C to quit)

我的iptables -vnL输出如下:

Chain INPUT (policy ACCEPT 11434 packets, 8571K bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8000

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 7590 packets, 4856K bytes)
 pkts bytes target     prot opt in     out     source               destination

所以端口 8000 应该没问题。在上面lsof我也可以看到它:

flask     16268           robin    3u  IPv4 167958      0t0  TCP 127.0.0.1:8000 (LISTEN)

我以前并没有真正这样做过,所以这可能是一个愚蠢的错误,但你能想到这里可能还存在什么错误吗?

答案1

python/flask 应用程序正在监听 127.0.0.1,因此限制对本地主机的访问。

让它监听特定的 IP 或 0.0.0.0,这取决于您的需要。

相关内容