通过SSL的ShoutCast

问题描述 投票:2回答:1

所以,我已经提前在我的主机上设置了我的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个回答
5
投票

SHOUTCast不支持SSL。8000端口上的服务是一个HTTP和ICY(相当无意义的SHOUTcast本地流媒体协议,几乎是但不完全是HTTP)的未加密服务器。这个 "SHOUTcast "是一个未加密的服务器,用于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)。

© www.soinside.com 2019 - 2024. All rights reserved.