如何在 windows 主机中访问虚拟 ubuntu 上的 graylog 运行 的 Web 界面

How to access, in windows host, to the web interface of graylog running on a virtual ubuntu

我遇到了问题: 如文档所述,我在 virtualbox 的 ubuntu 运行 中安装了 graylog(安装所需的 elasticsearch 2x 和 mongodb)。默认情况下,Web 界面在 localhost:9000 可用,我在虚拟机中启动 graylog 后可以访问它,但是,我的问题来了,我无法访问 windows 主机中的界面。

我正在使用带端口转发的 NAT 网络配置。这里有一张带有端口转发配置的图片,其中突出显示了 graylog 端口(其他来自其他尝试): Port-forwarding configurations in virtualbox

我已经用 xampp 测试了端口转发,我将它安装在虚拟 ubuntu 中,然后按照图像(端口 2223)配置了端口转发。在虚拟机中使用 xampp 运行,我在 windows 中访问了 10.46.1.24:2223 并且成功了。 我尝试了其他类型的网络配置(桥接、仅主机),但没有用。 我也尝试过使用graylog下载页面提供的虚拟设备,但是没有用。

我不知道我是否遗漏了一些配置或其他东西,我再次阅读了 graylog 文档,看看我是否遗漏了一些东西,但我无法解决这个问题,这就是我在这里寻求帮助的原因。

请告诉我你是否知道如何配置这个或者你是否推断我在某些步骤中失败了。

我已经解决了我的问题,下面是我所做的:

我在 /etc/graylog/server/server.conf 中更改了(并取消注释)变量:

  • web_listen_uri 得到这个:IP_virtualmachine:9000/
  • rest_listen_uri 与:IP_vortualmachine:12900/
  • rest_transport_uri: IP_windowshost:12900

然后我将虚拟框 NAT 配置中的端口转发到 windows 中的相同端口(9000 和 12900)。

rest_transport_uri中的变化是因为当我使用ip:9000进入网络界面时,界面尝试访问其余的api(默认定义的rest_listen_uri), 由于 rest_listen_uri 是在虚拟机的 IP 中定义的,在主机中它会失败,这就是为什么我在 rest_transport_uri 中输入我的 windows 主机 ip。这会导致 Web 界面在虚拟机中停止工作,但它将在 windows 主机中工作。

rest_listen_uri 和 web_listen_uri 在不同的端口中指定,因为在端口转发中需要它(因为无法转发其余 api 在 ip:9000/api/.