2016-10-06 97 views
1

我刚刚在Azure中创建了Linux Ubuntu 14.04虚拟机。 虚拟机已启动,我可以通过SSH进行连接。Apache无法从Azure Ubuntu虚拟机外部访问

我已经设置了apache2并且正在运行。 当我尝试从外部访问我的公共IP时,我的问题就开始了。

我认为Apache是​​启动和运行,因为:
1)的Nmap显示端口是开放的:

Starting Nmap 7.01 (https://nmap.org) at 2016-10-06 07:42 UTC 
Nmap scan report for localhost (127.0.0.1) 
Host is up (0.000055s latency). 
PORT STATE SERVICE 
80/tcp open http 

2)卷曲本地主机展示一些东西

3)运行的tcpdump -i eth0'网络端口80' 示出的传入连接

的OUPUTS:

netstat -ntlp 
(Not all processes could be identified, non-owned process info 
will not be shown, you would have to be root to see it all.) 
Active Internet connections (only servers) 
Proto Recv-Q Send-Q Local Address   Foreign Address   State  PID/Program name 
tcp  0  0 127.0.0.1:3306   0.0.0.0:*    LISTEN  -    
tcp  0  0 127.0.0.1:29131   0.0.0.0:*    LISTEN  -    
tcp  0  0 0.0.0.0:22    0.0.0.0:*    LISTEN  -    
tcp6  0  0 :::80     :::*     LISTEN  -    
tcp6  0  0 :::22     :::*     LISTEN  - 

但运行

ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//' 

它显示了只有我的私有IP和IPv6。

根据来自Azure的支持人员,我的虚拟机,网络安全组,端点和其他东西的设置似乎没问题。

+0

好吧,如果一切正常,最简单的故障排除方法是在新的资源组中创建一个新的vm?如果您在天蓝色方面正确配置了所有内容,则此简单配置无法正常工作。 – 4c74356b41

+1

@ 4c74356b41“如何设置新vm”是一种排除故障的方法? –

+1

请编辑您的问题以显示您如何配置您的端点(或网络安全组)。你在你的问题中提到了两个,但只有一个适用(取决于你是否通过经典或资源管理器设置了你的虚拟机)。只是说“Azure支持人员说没关系”在这里没有帮助。 –

回答

1

根据你的描述,也许我们需要做一些测试:

  1. 我们需要运行命令“远程登录大众80”与本地PC测试连接。 如果telnet正常,我们需要检查apache的设置。
  2. 如果telnet为false,我们需要运行命令“tcpdump -i eth0'port 80'”来捕获数据包,以确认是否有任何传入连接。 My result 如果您无法捕获数据包,我们需要检查虚拟机的网络设置。
    如果您可以捕获数据包,并且源地址来自公共网络,则需要检查端点或NSG设置。
  3. 如果VM以经典模式部署,我们需要检查端点设置,以确保端口80已打开。如果虚拟机部署在资源模式下,我们需要检查NSG设置。

    enter image description here 如果您还有问题,欢迎发表回复。谢谢。

相关问题