Tomcat 将TCP流量路由到Azure VM上的端口8080
我在Azure的CentOS虚拟机上运行Tomcat。主机上没有防火墙。wget localhost:8080返回一个页面,与私有IP地址上的相同请求一样。我可以使用公共IP地址SSH到服务器,但是wget public_IP_address:8080不会路由到主机 我已经为端口8080启用了入站安全规则,该规则看起来与允许通过端口22进行SSH的规则相同 我已经研究了好几个小时了。似乎所有关于在Azure的linux主机上运行Tomcat的文章都是用经典的虚拟机管理UI编写的。他们讨论指定一个端点,这在现代Azure UI中是不可用的。我也看到了,但这似乎需要powershell,它不在我的CentOS主机上 同样,我也找不到任何关于修改上述文章中说明的所谓“VIP”的内容 启用TCP访问Azure中CentOS虚拟机上侦听端口8080的Tomcat服务器,我缺少什么 更新: 根据@MichaelB的建议,我在Mac OS X上安装了Azure命令行工具Tomcat 将TCP流量路由到Azure VM上的端口8080,tomcat,azure,routing,centos,azure-virtual-machine,Tomcat,Azure,Routing,Centos,Azure Virtual Machine,我在Azure的CentOS虚拟机上运行Tomcat。主机上没有防火墙。wget localhost:8080返回一个页面,与私有IP地址上的相同请求一样。我可以使用公共IP地址SSH到服务器,但是wget public_IP_address:8080不会路由到主机 我已经为端口8080启用了入站安全规则,该规则看起来与允许通过端口22进行SSH的规则相同 我已经研究了好几个小时了。似乎所有关于在Azure的linux主机上运行Tomcat的文章都是用经典的虚拟机管理UI编写的。他们讨论指定一
$ azure vm show minimalfalcon
info: Executing command vm show
+ Getting virtual machines
warn: No VMs found
info: vm show command OK
在当前门户UI中,单击“虚拟机(经典)”不会显示任何实例。当我单击“虚拟机”时,这就是我访问虚拟机所有设置的方式。我怀疑Azure CLI工具正在连接到经典API,而不是当前门户使用的任何API。而且门户网站没有提供对我的虚拟机的经典访问
此外,我还按照@MichaelB的建议,在安全组中禁用SSH的入站规则。果不其然,SSH访问将持久化到此VM!因此,当我导航时:
虚拟机>>minimalfalcon>>设置>>网络接口>>minimalfalcon 447>>网络安全组(minimalfalcon)>>设置>>入站安全规则
这些并不能真正控制对我的虚拟机的访问。请参见下面的屏幕截图。要将此网络安全组策略应用于我的虚拟机,需要突破什么障碍?我真的不明白这怎么会不适用。感谢您的指导
除非您需要创建端口转换,否则您应该能够仅使用门户公开该端口 如果使用新的资源管理器(通过门户或ARM脚本)创建VM,端点的概念将不再存在。相反,您有一个与NIC关联的IP地址。该NIC位于网络安全组(NSG)内。在NSG中,定义入站和出站端口规则。再点击几下,但是 首先查看虚拟机的设置并导航到网络接口: 然后导航到网络安全组: 最后,编辑入站规则:
这对我很有用。确保使用VM刀片服务器的“Essentials”部分中列出的公共IP地址 创建入站安全规则时,请确保:
- 使用低于65500的优先级编号
- 将源端口范围设置为
*
希望这有帮助!:) 您确定该安全组已应用于该计算机吗?i、 e.如果阻止端口22,SSH访问是否停止。(您可以使用Azure Xplat工具,它们的功能基本相同)提供的链接指的是经典的虚拟机管理,而不是当前的门户。现代Azure门户中没有“端点”选项。提供的链接包括这两个示例,第一段是经典的“是”,但其余的响应是针对arm的。