分享最新优惠信息
购买主机更加划算

Subsonic:适用于Linux系统的个人流媒体服务器软件

如果你正在寻找一个功能强大且易于使用的媒体流解决方案,那么Subsonic是一个绝佳的选择,它可以让用户远程访问自己的音乐库,与朋友分享自己的收藏,甚至进行视频流媒体播放。

Subsonic可以让用户随时随地完全控制自己的媒体,并且它功能丰富,还提供适用于Android和iOS的应用,使其成为一个多功能的媒体服务器。

在本文中,小编将简单介绍在Ubuntu和Debian系统上安装、配置和优化Subsonic的大致过程,并分享最佳实践设置,以提高安全性和性能。

为什么选择Subsonic?

Subsonic是一款功能丰富的基于Web的媒体服务器,它具有诸多特色功能,主要包括:

  • 从任何支持浏览器的设备访问整个媒体库。
  • 兼容MP3、AAC、FLAC、OGG、WMA等多种格式。
  • 在Android、iOS和智能电视上控制并流式播放媒体。
  • 自动转换音频/视频格式以提高兼容性。
  • 创建具有不同访问级别的多个用户。
  • 直接通过界面收听播客和网络电台。

Subsonic–个人媒体流媒体

步骤1:在Ubuntu和Debian上安装Subsonic

在安装Subsonic之前,请确保已经更新系统,以防止错误并确保兼容性:

sudo apt update && sudo apt upgrade -y

接下来,安装所需的依赖项,例如Java(用于运行)和FFmpeg(用于音频/视频流):

sudo apt install openjdk-8-jre ffmpeg curl -y

注意:在较新的Debian版本(如Debian 11、12)中,可能无法直接通过默认仓库安装该版本的OpenJDK。​在这种情况下,可能需要手动安装OpenJDK 8,或者使用系统默认提供的较新版本(如 OpenJDK 11),但这可能需要验证与Subsonic的兼容性。

安装所需的依赖项后,从官方网站下载最新的Subsonic .deb包或使用以下wget命令直接在终端上下载:

wget https://sourceforge.net/projects/subsonic/files/subsonic-6.1.6.deb

下载之后,使用以下命令安装.deb包:

sudo dpkg -i subsonic-6.1.6.deb
sudo apt-get -f install

安装后,Subsonic应该处于运行状态,命令如下所示:

systemctl restart subsonic
systemctl status subsonic

Subsonic运行状态

这个时候可以打开浏览器并访问以下地址:

http://localhost:4040
或者
http://服务器IP:4040

Subsonic更改管理员密码

首次登录时,出于安全原因,系统会提示你更改默认密码:

步骤2:配置媒体文件夹

Subsonic需要知道你的音乐和视频存储在哪里,因此请按照以下步骤添加你的媒体文件夹:

  • 前往“Settings” > “Media Folders”
  • 在ADD MEDIA FOLDER下面指定音乐和视频库的路径。

例子:

  • 以音乐为例:/home/ravi/music
  • 视频示例:/home/ravi/videos

配置媒体文件夹

单击“Save”, Subsonic将自动扫描文件夹并将你的媒体添加到其库中。

步骤3:启用转码以实现媒体兼容性

Subsonic支持实时转码,确保各种文件格式的流畅播放。要启用转码,请安装以下步骤操作:

  • 前往“Settings” > “Transcoding”
  • 为不同的格式添加必要的转码命令
ffmpeg -i %s -map 0:0 -b:a 128k -v 0 -f mp3 -

单击“Save”以应用更改。

启用媒体转码

步骤4:将Nginx/Apache配置为Subsonic的反向代理

反向代理将传入的HTTP/HTTPS请求转发到运行在端口4040的Subsonic后端,这不仅提高了安全性,还使你能够使用自定义域名通过HTTPS访问Subsonic。

选项1:将Nginx配置为Subsonic的反向代理

如果尚未安装Nginx,请使用以下命令安装:

sudo apt install nginx -y

/etc/nginx/sites-available/subsonic.conf中创建一个新的配置文件:

sudo nano /etc/nginx/sites-available/subsonic.conf

添加以下内容(将idccoupon.com替换成自己的主域名):

server {
    listen 80;
    server_name idccoupon.com.com www.idccoupon.com;

    location / {
        proxy_pass http://127.0.0.1:4040/;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        
        # Websocket support
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }

    # Enable Gzip for better performance
    gzip on;
    gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
}

接下来,启用配置并重新启动nginx:

sudo ln -s /etc/nginx/sites-available/subsonic.conf /etc/nginx/sites-enabled/
sudo systemctl restart nginx

选项2:将Apache配置为Subsonic的反向代理

如果尚未安装Apache ,请运行以下命令安装:

sudo apt install apache2 -y

要将Apache配置为反向代理,请启用所需的模块:

sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod ssl

/etc/apache2/sites-available/subsonic.conf中创建一个新的配置文件:

sudo nano /etc/apache2/sites-available/subsonic.conf

添加以下内容(将idccoupon.com替换成自己的主域名):

<VirtualHost *:80>
    ServerName idccoupon.com
    ServerAlias www.idccoupon.com

    ProxyRequests Off
    ProxyPass / http://127.0.0.1:4040/
    ProxyPassReverse / http://127.0.0.1:4040/

    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>

    ErrorLog ${APACHE_LOG_DIR}/subsonic_error.log
    CustomLog ${APACHE_LOG_DIR}/subsonic_access.log combined
</VirtualHost>

接下来,启用Subsonic配置并重新启动Apache:

sudo a2ensite subsonic.conf
sudo systemctl restart apache2

步骤5:使用HTTPS保护Subsonic

默认情况下,Subsonic在HTTP上运行,这对于通过互联网发送数据并不安全。为了保护你的连接,应该使用Let’s Encrypt和Certbot启用HTTPS(SSL/TLS加密)。

sudo apt update  
sudo apt install certbot python3-certbot-nginx python3-certbot-apache -y

一旦安装,certbot将为你的域名创建一个证书(替换idccoupon.com为你的实际域名)。

sudo certbot --nginx -d idccoupon.com -d www.idccoupon.com
或者
sudo certbot --apache -d idccoupon.com -d www.idccoupon.com

现在按照提示进行操作(需要输入电子邮件以接收续订提醒),你的证书将保存在/etc/letsencrypt/live/idccoupon.com/中。

配置后可以通过以下方式安全地访问Subsonic,例如:

https://idccoupon.com

步骤6:从移动设备访问 Subsonic

Subsonic提供专用的移动应用程序,可以让用户随时随地无缝播放媒体。这些应用程序提供流畅直观的界面,让你可以随时随地播放音乐和视频。

  • Android:可在Google Play商店中获取
  • iOS:可在Apple App Store上获取

总结

Subsonic提供了一个功能强大的替代方案,相比传统的流媒体平台,它更加全面。无论是音频还是视频,Subsonic都能提供安全、用户友好的体验,同时具备优秀的媒体管理、转码以及远程访问能力。

此外,使用Subsonic,你可以随时随地畅享喜爱的媒体,使其成为家庭和企业的理想媒体服务器,感兴趣的朋友可以了解看看。

未经允许不得转载:惠主机 » Subsonic:适用于Linux系统的个人流媒体服务器软件