如何在 EC2 实例上打开 Web 服务器端口
Posted
技术标签:
【中文标题】如何在 EC2 实例上打开 Web 服务器端口【英文标题】:How to open a web server port on EC2 instance 【发布时间】:2013-06-14 05:21:07 【问题描述】:我在 EC2 实例上的 0.0.0.0:8787
上运行 CherryPy Web 服务器。
我可以通过 EC2 机器上的本地 wget
连接到 Web 服务器,但我无法从我自己的远程机器访问实例(我通过 ssh 连接到 EC2)。
我需要打开 8787 端口才能远程访问 Web 服务器吗?如果是这样,如何做到这一点?另外,我可以为此使用 EC2 实例的公共 IP 吗?
【问题讨论】:
Opening port 80 EC2 Amazon web services的可能重复 EC2: How to add port 8080 in security group?的可能重复 对,我应该预料到一年后有人会问同样的问题 如果您在 EC2 实例上打开非标准端口(例如 8787)并尝试从公司网络访问主机但无法访问,则可能是您的组织正在阻止对该端口的出站访问。在这种情况下,请查看this answer。 【参考方案1】:按照this answer 中描述的步骤,而不是使用下拉菜单,在“端口范围”中键入端口 (8787),然后在“添加规则”中键入。
Go to the "Network & Security" -> Security Group settings in the left hand navigation
找到您的实例所属的安全组 点击入站规则 使用下拉菜单并添加 HTTP(端口 80) 点击应用并享受
【讨论】:
我没有看到“应用”我只看到“保存”。当我点击“保存”时,它没有打开我的 3000 端口,是否有“应用”按钮? @Noitidart Save 就是他的意思。但我相信你现在已经明白了:) 谢谢@mattdevio - 它似乎工作但不是从某些地方,我想我可能搞砸了。 另外,如果您正在处理 Windows EC2 实例,请查看@SurajKj 提供的解决方案。这个解决方案和这个解决方案对我有用。 从链接的说明中我并没有立即清楚,但您应该选择“自定义 TCP”。否则您将无法更改端口。【参考方案2】:您需要在 ec2 安全组中打开 TCP 端口 8787。还需要在 EC2 实例的防火墙上打开相同的端口。
【讨论】:
它使用iptables
吗?
怎么样,有链接或教程吗?
如何在 EC2 实例的防火墙上打开端口?
@MahshidZeinaly parallels.com/blogs/ras/…
这适用于windows。我不认为对于 ubuntu 你需要做任何事情!只需打开 Ubuntu 的安全组【参考方案3】:
您需要按照 cyraxjoe 的说明配置安全组。 除此之外,您还需要打开系统端口。 windows打开端口的步骤:-
-
在“开始”菜单上,单击“运行”,键入 WF.msc,然后单击“确定”。
在高级安全 Windows 防火墙的左窗格中,右键单击入站规则,然后单击操作窗格中的新建规则。
在“规则类型”对话框中,选择“端口”,然后单击“下一步”。
在“协议和端口”对话框中,选择 TCP。选择特定本地端口,然后键入端口号,例如默认实例为 8787。点击下一步。
在“操作”对话框中,选择“允许连接”,然后单击“下一步”。
在“配置文件”对话框中,选择任何描述您要连接时的计算机连接环境的配置文件,然后单击“下一步”。
在“名称”对话框中,键入此规则的名称和说明,然后单击“完成”。
参考:-Microsoft Docs for port Opening
【讨论】:
我被这个问题困扰了很久;这就像一个魅力。非常感谢!这个解决方案需要更多的牵引力。以上是关于如何在 EC2 实例上打开 Web 服务器端口的主要内容,如果未能解决你的问题,请参考以下文章
我们如何在aws ec2 linux实例的不同端口安装多个apache服务器
无法连接到端口 8080 上的 EC2 Windows 实例