SSH が動作しているときに VM に curl できない

SSH が動作しているときに VM に 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 でリッスンしているため、localhost へのアクセスが制限されます。

必要に応じて、特定の IP または 0.0.0.0 でリッスンするようにします。

関連情報