【问题标题】:ShoutCast over SSL基于 SSL 的 ShoutCast
【发布时间】:2011-02-10 14:16:01
【问题描述】:

所以我已经开始设置我的 ShoutCast 服务器 DNAS 并在我的主机上的 Winamp 中设置我的 DSP。服务器侦听端口 8000,因此根据一些说明,我为 winamp(Shoutcast DSP)安装了一个输出插件,并使用 8000 和密码进行连接。服务器接受连接。

现在,我到底该怎么办?我的主机受 SSL 保护,并且 DNAS 服务器安装在安全的 Web 目录中(如果重要的话)。我想要的最终结果是我想在家中(主机)从任何计算机上收听我的 ShoutCast 设置。

我尝试浏览到我的 IP 地址和端口 8000(不使用 HTTPS),但它什么也没有返回。如果我使用HTTPS://my.server.com:8000 浏览,我会得到错误代码:ssl_error_rx_record_too_long)

我完全错过了什么,还是我只是个白痴?

谢谢。

【问题讨论】:

标签: ssl streaming shoutcast internet-radio winamp


【解决方案1】:

SHOUTcast 不支持 SSL。端口 8000 上的服务是 HTTP 和 ICY 的未加密服务器(相当无意义的 SHOUTcast 原生流协议,几乎但不完全是 HTTP)。 ssl_error_rx_record_too_long 错误是尝试以 HTTPS 方式访问非 HTTPS 服务的特征。

您应该能够使用网络浏览器连接到 8000 并获得 DNAS 状态页面。另一方面,如果您使用媒体播放器连接到该端口,它将返回直接 MP3 流。 (不幸的是,在一个令人难以置信的愚蠢设计中,SHOUTcast 决定使用哪个响应的方式是通过嗅探您的 User-Agent 标头以查找以 Mozilla 开头的内容,因此,如果您使用替代浏览器或阻止您的 UA,您将无法获取状态,如果流关闭,您可能什么也得不到。)

要通过 SSL 收听 SHOUTcast 服务器,您需要在另一个端口上设置代理,将 HTTPS 请求转发到本地 HTTP 请求;它还必须是支持流式传输的代理,并且您可能需要一些技巧来阻止 ICY 破坏它。

可能更简单,您可以设置从客户端到服务器的 SSH 转发端口。这也是允许 DJ 通过加密连接到 SHOUTcast 的唯一方法,因为 DJ 协议根本不兼容 HTTP。显然 SSH 隧道对随机的公共监听器没有好处。

您也可以尝试使用 Icecast,它是 SHOUTcast 的替代品,我相信它具有一些 SSL 支持(并且还使用纯 HTTP 流而不是 ICY)。

【讨论】:

    猜你喜欢
    • 2014-12-11
    • 2013-03-01
    • 2016-03-31
    • 2014-03-28
    • 2019-07-04
    • 2016-02-20
    • 1970-01-01
    • 2017-02-28
    • 2011-12-23
    相关资源
    最近更新 更多