Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 无法从浏览器访问ubuntu实例的AWS公共DNS_Amazon Web Services_Ubuntu_Dns - Fatal编程技术网

Amazon web services 无法从浏览器访问ubuntu实例的AWS公共DNS

Amazon web services 无法从浏览器访问ubuntu实例的AWS公共DNS,amazon-web-services,ubuntu,dns,Amazon Web Services,Ubuntu,Dns,我对AWS比较陌生,在过去的几天里,我一直在看很多教程,试图找出如何使我的AWS ubuntu实例可以从浏览器访问 我所做的: 第一:我将安全组配置为接受ssh、http、https的所有流量,只是为了查看实例中列出的公共DNS是否可访问 第二:我把我实例的IP改成了弹性IP 第三:我编写了一个简单的node.js文件,用于监听端口9000和console.logs上的“hello world” 出于某种原因,ssh可以工作,我可以运行node.js文件,但agina我无法从浏览器访问远程实例

我对AWS比较陌生,在过去的几天里,我一直在看很多教程,试图找出如何使我的AWS ubuntu实例可以从浏览器访问

我所做的:

第一:我将安全组配置为接受ssh、http、https的所有流量,只是为了查看实例中列出的公共DNS是否可访问

第二:我把我实例的IP改成了弹性IP

第三:我编写了一个简单的node.js文件,用于监听端口9000和console.logs上的“hello world”

出于某种原因,ssh可以工作,我可以运行node.js文件,但agina我无法从浏览器访问远程实例

任何帮助都将不胜感激,因为我已经做了几天了

谢谢

谢谢大家的快速回复

我的问题是我没有将TCP规则包含到我的特定端口。现在我可以通过ec2 DNSNAME:9123访问该端口


而且,为了澄清,如果我想为所有流量托管该DNS,我应该为TCP规则指定“anywhere”,对吗?

首先转到您的EC2,看看curl是否有效

另外,如果您在端口9000上公开您的节点;你是否也在安全组上打开了9000

我将安全组配置为接受ssh、http和https的所有流量

在安全组中,HTTP并不意味着任何端口上的HTTP。。。这意味着TCP端口80-80上的任何流量都是HTTP的标准

安全组不知道您要传递的通信量的类型,只知道IP协议,例如TCP、UDP、ICMP、GRE等,以及使用端口号的协议的端口号和任何协议特定信息ICMP消息类型

您需要一个允许流量到端口9000的规则。

需要检查的事项如下:

安全小组 子网NACL这些可以作为子网级别 防火墙,但除非你弄乱了它们,否则它们应该允许所有 交通 如果在服务器上运行netstat-na | grep,您是否看到 应用程序是否在正确的端口上侦听? 您还可以检查您的系统是否存在可能使请求短路的防火墙。 如果上面没有指出您的问题所在,您可以获取tcpdump并对其进行过滤,仅针对来自web浏览器的请求,例如在安装tcpdump后-vvn host 10.20.30.40 port 8000替换您的ip和端口。这会让你知道你是否遇到了网络问题,数据包没有到达服务器,或者应用程序有问题

我还建议在进行初始故障排除时使用IP地址。这样我们就可以在进入DNS之前确定它不是网络/服务器配置