1

我想知道是否可以连接到本地虚拟机上托管的 Service Insight?我的意思是:

  • 我在云中的 VM 上安装了 Service Insight
  • 可以通过远程桌面远程进入它
  • 可以在盒子上启动 Service Insight 以查看消息流量

但是,我在本地安装了 Service Insight,当我尝试连接到托管在我的 VM 上的服务控制时,我不确定如何执行此操作。查看特定网站也找不到太多文档。服务控制需要一个我认为应该是的 URL,http://serviceins.cloudapp.net:33333/api/但这不会解决任何问题。

我的虚拟机的名称叫做serviceins.

我对 ServiceControl.config 进行了更改:

<appsettings>
    <add key="ServiceControl/Hostname" value="serviceins.cloudapp.net"/>
        <add key="ServiceControl/HoursToKeepMessagesBeforeExpiring" value="24"/>
</appsettings>

服务脉冲配置

service_control_url: 'http://serviceins.cloudapp.net:33333/api/'

我想我的问题是如何在无需远程访问 VM 的情况下访问 Service Insight?我可以通过简单地向 Service Insight 提供 URL 来访问它吗?

谢谢,DS。

4

1 回答 1

4

安全警告

ServiceControl 没有内置安全层,因此如果您将 API URL 公开到 Internet,则任何可以连接到端口 33333 的人都可以访问存储在 ServiceControl 中的所有消息。这就是默认情况下限制为 localhost 的原因。

我怎么强调都不应该在生产系统上完成

对于 Azure,更安全的方法是使用点到站点 VPN 连接之类的东西。(请参阅:https ://msdn.microsoft.com/en-us/library/azure/jj156206.aspx )但这可能需要重新配置。

如果您仍然热衷于以不安全的方式公开 URL,请按照以下方式进行操作:

1. 将 App.config 中的主机名设置为通配符:

<add key="ServiceControl/HostName" value="*" />

2. 更新 URLACL 以响应通配符。

您可以通过在 cmd 提示符下发出以下命令来查看 URLACL 设置:

netsh http show urlacl 

如果您有端口http://localhost:33333/api/http://serviceins.cloudapp.net:33333/api/的现有设置,请 使用以下命令删除它们:

netsh http delete urlacl URL=http://localhost:33333/api/
netsh http delete urlacl URL=http://serviceins.cloudapp.net:33333/api/

添加通配符 URLACL

netsh http add urlacl URL=http://*:33333/api/ User=Users

通过 show 命令检查它,它应该有一个像这样的条目

Reserved URL            : http://*:33333/api/
User: BUILTIN\Users
Listen: Yes
Delegate: No
SDDL: D:(A;;GX;;;BU)

3.Windows防火墙

将入站规则添加到 Windows 防火墙。默认情况下,端口 33333 将被阻止传入连接。您可以使用以下命令通过 Admin Powershell 执行此操作(我假设您的 VM 是 Win2012)

New-NetFirewallRule -Name ServiceControl -Direction Inbound -Protocol TCP -LocalPort 33333  -Action Allow -Enabled True

4. 添加 Azure 端点

您还需要打开 Azure 终结点连接以允许连接到端口 33333。这本质上是另一个防火墙。而不是记录这个我会在这里向你推荐微软自己的文档:http: //azure.microsoft.com/en-us/documentation/articles/virtual-machines-set-up-endpoints/

作为端点配置的一部分,您可以通过限制允许连接到端口的 IP 范围来增加一些安全性。这仅在您拥有静态 IP 时才真正有用。

于 2015-03-03T02:59:45.670 回答