首页 文章

将TCP流量路由到Azure VM上的端口8080

提问于
浏览
3

我在Azure的CentOS虚拟机上运行Tomcat . 主机上没有防火墙 . wget localhost:8080和私有IP地址上的相同请求一样返回页面 . 我可以使用公共IP地址SSH服务器,但是wget public_IP_address:8080不会路由到主机 .

我为端口8080启用了入站安全规则,该规则看起来与允许SSH通过端口22的端口相同 .

Inbound security rules

我在现代Azure UI中可以使用've been researching this for hours. It seems all the articles about running Tomcat on a linux host in Azure are written with Classic Virtual Machine administration UI. They talk about specifying an endpoint, which isn't . 我同样看到info about establishing an "ILPIP,"但似乎需要powershell,这不在我的CentOS主机上 .

我同样无法找到任何关于修改上述文章中所说的“VIP”的内容 .

在Azure中的CentOS虚拟机上启用TCP访问我的Tomcat服务器上的端口8080时,我缺少什么?

更新:

根据@MichaelB的建议,我在Mac OS X上安装了Azure命令行工具 .

$ azure vm show minimalfalcon
info:    Executing command vm show
+ Getting virtual machines                                                     
warn:    No VMs found
info:    vm show command OK

在当前的Portal UI中,单击“虚拟机(经典)”不显示任何实例 . 当我单击“虚拟机”时,就是我访问VM的所有设置的方式 . 我怀疑Azure CLI工具是连接到经典API而不是当前门户使用的任何API . 门户网站不提供对我的VM的经典访问 .

我另外遵循@MichaelB的建议,禁用安全组中的SSH入站规则 . 果然,SSH访问持久存在于这个VM!所以,当我导航:

虚拟机>> minimalfalcon >>设置>>网络接口>> minimalfalcon447 >>网络安全组(minimalfalcon)>>设置>>入站安全规则

那些并不真正控制对我的虚拟机的访问 . 见下面的截图 . 需要跳出什么箍来将此网络安全组策略应用到我的VM?我真的看不出这应该怎么做 . 任何指导赞赏!

Network Security Group Screenshot

3 回答

  • 0

    除非您需要创建端口转换,否则您应该只能使用Portal公开该端口 . Check this

    如果使用新的资源管理器(通过门户网站或通过ARM脚本)创建VM,则Endpoint的概念不再存在 . 相反,您有一个与NIC关联的IP地址 . 该NIC位于网络安全组(NSG)内 . 在NSG中,您可以定义入站和出站端口规则 . 点击几下,但......

    首先查看VM的设置并导航到网络接口:

    NIC

    然后导航到网络安全组:

    Network Security Group

    最后,编辑入站规则:

    inbound rules

  • 0

    它对我有用inbound rule . 确保使用VM刀片的"Essentials"部分中列出的公共IP地址 .

    创建入站安全规则时,请确保:

    注意:Azure有两种不同的部署模型:Resource Manager and classic . ILPIP仅与经典部署模型相关 .

    注意:从门户(在ARM模型中)创建VM时,它会自动关联到虚拟网络(vnet),vnet中的特定子网和网络安全组 .

  • 0

    2个想法:

    1)默认情况下,ARM上的所有端口都是打开的(除非您有防火墙等) . 这就是为什么即使没有入站规则你的ssh也会通过 . 如果要阻止对端口的访问,则必须明确执行此操作 . 因此,如果这是出于测试目的,您可以完全删除NSG;这可以帮助确定问题是NSG还是其他问题 .

    2)你说你可以从VM中找到localhost:8080并且它可以工作,对吗?这让我觉得也许你的tomcat正在监听127.0.0.1而不是你的公共ip(或简称为0.0.0.0) .

    希望这可以帮助! :)

相关问题