Graylog登录时出现404错误

时间:2017-02-02 09:49:29

标签: nginx vmware graylog2 graylog

我目前正试图让Graylog工作。我安装了以下graylog-settings.json:

local-ip是我们网络上的graylog服务器本地ip。

graylog.domain.com是我们的graylog外部域名

{
  "timezone": "Europe/Paris",
  "smtp_server": "smtp.gmail.com",
  "smtp_port": 465,
  "smtp_user": "xxxx",
  "smtp_password": "xxxx",
  "smtp_from_email": "graylog@graylog",
  "smtp_web_url": "http://graylog",
  "smtp_no_tls": false,
  "smtp_no_ssl": false,
  "master_node": "127.0.0.1",
  "local_connect": false,
  "current_address": "local-ip",
  "last_address": "local-ip",
  "enforce_ssl": false,
  "journal_size": 1,
  "node_id": false,
  "internal_logging": true,
  "web_listen_uri": false,
  "web_endpoint_uri": false,
  "rest_listen_uri": false,
  "rest_transport_uri": false,
  "external_rest_uri": "http://graylog.domain.com:9000/",
  "custom_attributes": {

  }
}

我们有一个PFSense(我在每个端口都列入白名单)。

我配置了NAT条目以在我的graylog服务器上发送所有9000请求。

我将我的NGinx代理配置为将所有graylog.domain.com发送到local-ip

问题在于:

如果我到达graylog.domain.com:80,我可以看到登录页面,但是任何登录尝试,我得到:

  

错误 - 服务器返回:404 - 无法POST   http://graylog.domain.com:9000/system/sessions(404)

如果我到达graylog.domain.com:9000,我会直接收到此错误(没有登录页面):

  

我们在连接Graylog服务器时遇到问题   在http://local-ip:9000/api/。请验证服务器是否正确   健康,工作正常。

     

如果可以,您将自动重定向到上一页   连接到服务器。

     

你需要一只手吗?我们可以帮到你。

     

更多详情

我是RTFM,但我无法获得正确的配置..任何人都可以帮忙吗?

编辑:

感谢@joschi,我设法让这个工作。这是我的conf文件:

{
  "timezone": "Europe/Paris",
  "smtp_server": "smtp.gmail.com",
  "smtp_port": 465,
  "smtp_user": "xxx",
  "smtp_password": "xxx",
  "smtp_from_email": "graylog@graylog",
  "smtp_web_url": "http://graylog",
  "smtp_no_tls": false,
  "smtp_no_ssl": false,
  "master_node": "127.0.0.1",
  "local_connect": false,
  "current_address": "local-ip",
  "last_address": "local-ip",
  "enforce_ssl": false,
  "journal_size": 1,
  "node_id": false,
  "internal_logging": true,
  "web_listen_uri": false,
  "web_endpoint_uri": false,
  "rest_listen_uri": false,
  "rest_transport_uri": false,
  "external_rest_uri": "http://external-ip:9000/api/",
  "custom_attributes": {

  }
}

我使用以下命令更新我的conf文件:

sudo graylog-ctl set-external-ip "http://external-ip:9000/api/"

当然,external-ip是我们的公共IP。

1 个答案:

答案 0 :(得分:1)

您的external_rest_uri设置错误。它必须指向Graylog REST API的URI。

您也不应该手动编辑graylog-settings.json(除非您确实需要一些高级设置),但请使用graylog-ctl命令。

有关graylog-ctl命令的详细信息,请阅读http://docs.graylog.org/en/2.1/pages/configuration/graylog_ctl.html