GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu 18.04、19.04にSubsonic Media Serverをインストールし、HTTPSを有効にする方法

このチュートリアルでは、Ubuntu 18.04、19.04にSubsonicメディアサーバーをインストールする方法と、NginxまたはApache Webサーバーを使用してSubsonicのリバースプロキシを設定し、HTTPSを有効にする方法を説明します。

Subsonicは、Javaで記述された無料の(無料のクマのように)Webベースのメディアストリーマーであり、Linux、MacOS、およびWindowsで利用できます。 Subsonicを使用すると、自宅のコンピューターや一般向けのコンピューターから音楽をストリーミングしたり、Webブラウザーを使用してどこからでも音楽を聴いたりできるため、resiliosyncやSyncthingなどのファイル同期アプリケーションと音楽を同期する必要はありません。

亜音速機能

  • MP3、OGG、AAC、およびHTTP経由でストリーミングするその他のオーディオまたはビデオ形式をサポートします。
  • Winamp、iTunes、XMMS、VLC、MusicMatch、WindowsMediaPlayerなどのネットワーク対応メディアプレーヤーで動作します
  • アルバムアートディスプレイ、オンザフライプレイリスト、オンザフライトランスコーディング
  • Android、iPhone、Windows Phone向けのモバイルアプリ、Mac、Windows、Chrome向けのデスクトップアプリ。 Androidアプリはオフライン再生をサポートしています。
  • ポッドキャストを聴いたり、評価を割り当てたり、コメントを追加したり、再生リストを作成したりします。
  • 音楽を友達や家族と共有しましょう。
  • 動画のストリーミング(プレミアム機能)
  • その他

Ubuntu 18.04、19.04にSubsonicMediaServerをインストールする方法

SubsonicメディアサーバーはJavaで記述されているため、実行するにはJavaランタイム環境をインストールする必要があります。次のコマンドを使用して、openjdk8ランタイム環境をインストールできます。

sudo apt update

sudo apt install openjdk-8-jre

この記事の執筆時点では、SubsonicはJava11と互換性がありません。以前にUbuntu18.04、19.04にJava 11をインストールしたことがある場合は、次のコマンドを実行してデフォルトのJavaバージョンを選択する必要があります。

sudo update-alternatives --config java

数値を入力して、デフォルトバージョンとしてJava8を選択します。

次に、バージョン6.1.5をダウンロードする次のコマンドを使用してSubsonicdebパッケージをダウンロードします。 Subsonicのダウンロードページで最新バージョンを確認できます。新しいバージョンが利用できる場合は、6.1.5を新しいバージョン番号に置き換えるだけです。

wget https://s3-eu-west-1.amazonaws.com/subsonic-public/download/subsonic-6.1.5.deb

dpkgでインストールします 。

sudo dpkg -i subsonic-6.1.5.deb

インストールすると、Subsonicデーモンが自動的に起動します。次のコマンドでステータスを確認できます:

systemctl status subsonic

サンプル出力:

● subsonic.service - LSB: Subsonic daemon
   Loaded: loaded (/etc/init.d/subsonic; bad; vendor preset: enabled)
   Active: active (running) since Fri 2018-12-02 08:03:27 UTC; 7min ago
     Docs: man:systemd-sysv-generator(8)
   CGroup: /system.slice/subsonic.service
           └─3316 java -Xmx150m -Dsubsonic.home=/var/subsonic -Dsubsonic.host=0

実行されていない場合は、手動で開始できます

sudo systemctl start subsonic

また、システムの起動時に自動起動を有効にします。

sudo systemctl enable subsonic

デフォルトでは、亜音速は0.0.0.0:4040でリッスンします 、つまり、ローカルネットワークとインターネットからの要求を受け入れます。

SubsonicをローカルのUbuntuコンピューターにインストールした場合は、ブラウザーに次のアドレスを入力して、SubsonicのWebインターフェイスにアクセスします。

http://localhost:4040

インターネットに接続されたUbuntuサーバーにSubsonicをインストールした場合は、ブラウザに次のアドレスを入力してSubsonicWebインターフェイスにアクセスします。

http://your-server-ip:4040

UbuntuでJava11を使用している場合は、次のエラーが表示されます。解決策は、Java8を使用することです。

Subsonicメディアサーバーをホームサーバーにインストールし、外部ネットワークからアクセスする場合は、ルーターでポート転送を構成する必要があることに注意してください。 ISPから動的IPアドレスが指定されている場合は、動的DNSも設定する必要があります。

デフォルトのユーザー名とパスワードはadminです 。ログイン後、設定>ユーザーに移動する必要があります 管理者パスワードを変更します。

また、設定ページにメディアフォルダを追加し、保存ボタンをクリックします。 Subsonicが実行しているユーザーがフォルダにアクセスできる必要があることに注意してください。フォルダを追加したら、[メディアフォルダを今すぐスキャン]ボタンをクリックすると、インデックスページで音楽を聴くことができます。

ユーザーの変更

デフォルトでは、Subsonicプロセスはrootユーザーとして実行されます。セキュリティ上の理由から、通常のユーザーに変更する必要があります。これは、/etc/default/subsonicを編集して行います。 ファイル。

sudo nano /etc/default/subsonic

次の行を見つけます:

SUBSONIC_USER=root

rootをlinuxbabeのような独自のユーザーアカウントに変更します 。

SUBSONIC_USER=linuxbabe

ファイルを保存して閉じます。次に、亜音速デーモンを再起動して、変更を有効にします。

sudo systemctl restart subsonic

Subsonic用のNginxリバースプロキシの設定

Subsonic Webインターフェイスにドメイン名を使用する場合は、Nginxリバースプロキシを設定できます。以下のコマンドを使用して、Ubuntu 18.04/19.04にNginxをインストールします。

sudo apt install nginx

次に、プロキシ用のサーバーブロックファイルを作成します。

sudo nano /etc/nginx/conf.d/subsonic-proxy.conf

次のテキストをファイルに入れます。 subsonic.your-domain.comを置き換えます あなた自身のドメイン名で。 location {…}ブロックは、Subsonicデーモンに対してNginxプロキシリクエストを行います。サブドメインのAレコードを設定することを忘れないでください。

server {
        listen 80;
        server_name subsonic.your-domain.com;

        location / {
                proxy_pass http://127.0.0.1:4040;
                proxy_set_header Host $http_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;
        }
}

ファイルを保存して閉じます。次に、Nginx構成をテストします。

sudo nginx -t

テストが成功したら、新しい構成を有効にするためにNginxをリロードします。

sudo systemctl reload nginx

これで、亜音速メディアサーバーがNginxの背後に配置され、ドメイン名(subsonic.your-domain.com)を使用して亜音速WebUIにアクセスできるようになりました。 )

NginxでHTTPSを有効にする

HTTPSセキュア接続を有効にするには、Let’sEncryptから無料のTLS/SSL証明書を取得してインストールします。 Let’s Encrypt(certbot)クライアントを次のコマンドでインストールします:

sudo apt install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt install certbot python3-certbot-nginx

次に、次のコマンドを発行します。このコマンドは、Certbot Nginxプラグインを使用して、TLS証明書を自動的に取得してインストールします。赤いテキストを実際のデータに置き換えます。

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email your-email-address --domain subsonic.your-domain.com

数秒以内に、以下のようなおめでとうメッセージが表示されます。これは、証明書が正常に取得されたことを意味します。

SubsonicメディアサーバーのWebインターフェイスに再度移動すると、HTTP接続が自動的ににリダイレクトされます。 HTTPSの安全な接続。次に、Nginx構成ファイルを変更する必要があります。

sudo nano /etc/nginx/conf.d/subsonic-proxy.conf

CertbotがSSLサーバーブロックを自動的に構成したため(443 sslをリッスン)、2つのサーバー{…}ブロックがあります。 SSLサーバーブロックで、場所/{…}ブロックに次の行を追加します。

proxy_redirect http:// https://;

この行は、httpサーバーの応答をhttpsサーバーの応答にリダイレクトします。これは、Subsonic設定ページを正しく表示するために必要です。ファイルを保存して閉じます。 Nginxの構成をテストしてリロードします。

sudo nginx -t

sudo systemctl reload nginx

Apacheリバースプロキシの設定

NginxよりもApacheを使用する場合は、次のコマンドを使用してインストールします。

sudo apt install apache2

Apacheをリバースプロキシとして使用するには、proxyを有効にする必要があります モジュールとヘッダーモジュール。

sudo a2enmod proxy proxy_http headers

次に、Subsonicメディアサーバーの仮想ホストファイルを作成します。

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

次の構成をファイルに入れます。 subsonic.your-domain.comを置き換えます 実際のドメイン名で。このサブドメインのDNSAレコードを作成することを忘れないでください。

<VirtualHost *:80>
   ServerName subsonic.your-domain.com
   ErrorDocument 404 /404.html
   DocumentRoot /var/www
   ProxyPass / http://localhost:4040/
   ProxyPassReverse / http://localhost:4040/
   Header always unset X-Frame-Options
</VirtualHost>
の設定を解除します

ファイルを保存して閉じます。次に、この仮想ホストを有効にします。

sudo a2ensite subsonic-proxy.conf

Apacheを再起動します

sudo systemctl restart apache2

これで、ドメイン名を使用してSubsonicWebUIにアクセスできます。

ApacheでHTTPSを有効にする

HTTPSセキュア接続を有効にするには、Let’sEncryptから無料のTLS/SSL証明書を取得してインストールします。 Let’s Encrypt(certbot)クライアントを次のコマンドでインストールします:

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt install certbot python3-certbot-apache

次に、apacheプラグインを使用して証明書を取得してインストールします。

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --must-staple --email your-email-address -d subsonic.your-domain.com

数秒以内に、以下のようなおめでとうメッセージが表示されます。これは、証明書が正常に取得されたことを意味します。

TLS証明書が自動的にインストールされます。 SubsonicメディアサーバーのWebインターフェイスに再度アクセスすると、HTTP接続がHTTPSセキュア接続に自動的にリダイレクトされます。

このチュートリアルが、Ubuntu18.04およびUbuntu19.04にSubsonicメディアサーバーをインストールするのに役立つことを願っています。いつものように、この投稿が役に立った場合は、無料のニュースレターを購読してください。また、Google +、Twitter、またはFacebookページでフォローすることもできます。


Ubuntu
  1. Ubuntu20.04にPlexMediaServerをインストールする方法

  2. Ubuntu20.04にユニバーサルメディアサーバーをインストールしてセットアップする方法

  3. Ubuntu/DebianにGerberaMediaServerをインストールしてセットアップする方法

  1. Ubuntu20.04にNFSサーバーをインストールして構成する方法

  2. Ubuntu20.04にVNCをインストールして構成する方法

  3. Ubuntu18.04にPlexMediaServerをインストールする方法

  1. Ubuntu18.04にVNCをインストールして構成する方法

  2. Ubuntu18.04にNFSサーバーをインストールして構成する方法

  3. Ubuntu18.04LTSにAirsonicMediaServerをインストールする方法