是什么导致了这个 IcecastV2 "Bad or missing password on admin command request" 警告?

What is causing this IcecastV2 "Bad or missing password on admin command request" warning?

我是 运行 IcecastV2,虽然一切似乎都在工作 - 日志文件显示此消息。

INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)

我找不到可能导致此问题的原因?

编辑:Icecast V2.4.4 编译于 Mac。

编辑:

这来自 error.log 文件,后面匹配来自 access.log

的相同时间段
    [2019-01-01  13:08:31] INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)
[2019-01-01  13:08:31] INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)
[2019-01-01  13:08:31] INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)
[2019-01-01  13:08:44] INFO format-vorbis/initial_vorbis_page seen initial vorbis header
[2019-01-01  13:08:44] INFO admin/admin_handle_request Received admin command metadata on mount "/live.aac"
[2019-01-01  13:08:44] INFO admin/command_metadata Metadata on mountpoint /live.aac changed to "Kostas Pavlidis - Fake Life"
[2019-01-01  13:08:44] INFO admin/admin_handle_request Received admin command metadata on mount "/live.mp3"
[2019-01-01  13:08:44] INFO admin/command_metadata Metadata on mountpoint /live.mp3 changed to "Kostas Pavlidis - Fake Life"
[2019-01-01  13:09:31] INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)
[2019-01-01  13:09:31] INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)
[2019-01-01  13:09:31] INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)
[2019-01-01  13:10:32] INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)
[2019-01-01  13:10:32] INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)
[2019-01-01  13:10:32] INFO admin/admin_handle_request Bad or missing password on admin command request (command: stats.xml)

access.log

192.168.0.7 - - [01/Jan/2019:13:08:31 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:08:31 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:08:31 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:08:31 +0000] "GET /admin/stats.xml HTTP/1.0" 200 4439 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:08:31 +0000] "GET /admin/stats.xml HTTP/1.0" 200 4439 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:08:31 +0000] "GET /admin/stats.xml HTTP/1.0" 200 4439 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:08:44 +0000] "GET /admin/metadata HTTP/1.0" 200 396 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:08:44 +0000] "GET /admin/metadata HTTP/1.0" 200 396 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:09:31 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:09:31 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:09:31 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:09:32 +0000] "GET /admin/stats.xml HTTP/1.0" 200 4415 "-" "sambc/2018.10" 1
192.168.0.7 - - [01/Jan/2019:13:09:32 +0000] "GET /admin/stats.xml HTTP/1.0" 200 4415 "-" "sambc/2018.10" 1
192.168.0.7 - - [01/Jan/2019:13:09:32 +0000] "GET /admin/stats.xml HTTP/1.0" 200 4415 "-" "sambc/2018.10" 1
192.168.0.7 - - [01/Jan/2019:13:10:32 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:10:32 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:10:32 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:10:32 +0000] "GET /admin/stats.xml HTTP/1.0" 200 4415 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:10:32 +0000] "GET /admin/stats.xml HTTP/1.0" 200 4415 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:10:32 +0000] "GET /admin/stats.xml HTTP/1.0" 200 4415 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:11:32 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0
192.168.0.7 - - [01/Jan/2019:13:11:32 +0000] "GET /admin/stats.xml HTTP/1.1" 401 360 "-" "sambc/2018.10" 0

从合并的日志中可以很明显地看出这里发生了什么:

  • 您 运行 至少有 3 个源客户端进入挂载点
  • 每次源客户端似乎都是sambc/2018.10(可能是SAM Broadcaster?)
  • 这些源客户端正在通过 /admin/metadata 发出流元数据更新请求
    • 对于 Ogg,这实际上是一个错误,可能元数据对于听众而言已损坏。
    • 它应该将元数据嵌入到发送到服务器的流中!
  • 这些源客户端都是通过/admin/stats.xml轮询统计的
    • 出于某种原因,源客户端不会缓存此 URL 需要身份验证的事实,并且每次都遵循 'from zero' HTTP 请求过程
      1. 首先它不发送凭据
      2. 它被拒绝并返回 HTTP 401 状态
      3. 它再次发送相同的请求,但包括凭据

总结:您所关注的行为完全符合 HTTP 标准的定义。 Icecast 只是在那个特定事件上有点罗嗦。