使用端口转发从本地 Web 浏览器访问 EC2 Ubuntu 实例的本地主机地址



我有一个在 AWS EC2 上运行的 Linux Ubuntu 实例。在此实例上,我有一个服务在localhost:8889上运行,这意味着该服务在实例本地主机上的端口 8889 上运行。

我想从我的 Mac 访问此本地主机地址。我已经尝试使用以下地址访问它,但没有一个有效:

http://<public-dns>:8889
http://<public-ip>:8889
http://<private-ip>:8889

我也尝试在 Google 中搜索它,但到目前为止,如果这些方法对我有用,包括将弹性 IP 地址关联到实例以及编辑安全组上的入站和出站规则以允许所有人移植。

我已经阅读了一些关于端口转发的内容,但我不确定我是否完全理解它。我已经理解了它的想法,但我不明白该怎么做。

如果您能帮助我弄清楚如何使用端口转发访问实例的本地主机,那就太好了。我意识到它与终端有关,但我不明白我需要在哪里运行命令(在 Mac 或实例上(,以及我需要使用的参数是什么。

在您的情况下,服务jupyter-notebook仅侦听本地主机接口,因此您将无法从服务器的 IP 进行访问。

一个简单的解决方案是开始使用特定的配置。

$ Jupiter-notebook --config=jupyter_notebook_config.py

并在您的jupyter_notebook_config.py文件中至少拥有该属性

c.NotebookApp.ip = "0.0.0.0"

您可以查看文档以获取有关可能配置的所有详细信息。通过监听0.0.0.0可以在不同的 IP(duns、私有或公共 IP(上访问该服务