SUBSONICの構築

2022年9月29日

VPSサーバに “SUBSONIC" というweb上で音楽ストリーミングできるwebアプリケーションを入れてみました。
PC・スマートフォンで音楽聴ければ良いなぁ~と思ってやってみました。
また、セキュリティの部分でSSL設定も設定ができましたので・・・ご紹介が出来たらなと思います。

【前提条件】
1.Apacheの設定が出来ていることを前提とします。
2.SSL証明書が購入されていることを前提とします。
3.JAVA言語が必要になりますので、その設定が出来ていることを前提とします。

【開発環境】
OS:centOS7
必要環境:Apache, java

【設定方法】
1.SUBSONIC からwebアプリケーションソフトをダウンロードします。
ダウンロード先:http://www.subsonic.org/pages/download.jsp
OS環境が “centOS" なので、"Red Hat / Fedora" からダウンロードします。
VPSサーバにアップロードする場合はFTPなどを使用し、指定の場所に保存をする。

コマンドの場合は、保存先の指定してから実行を行う。

[user@localhost] wget http://www.subsonic.org/pages/download2.jsp?target=subsonic-6.0.rpm

2.インストールを行う。
※インストールが無事した場合、自動的に起動がされます。

[user@localhost] rpm -ivh subsonic-6.0.rpm

3.ApacheにSSL通信が出来るように設定する。
※Apacheですが、個々の設定がされていると思います。
設定が壊れないように気をつけて行って下さい。
今回は自分が設定したことを記述します。
また、"https://[サブドメイン]" だけ起動が出来るように設定しています。

3.1 SSLのモジュールをインストールする。

[user@localhost] yum -y install mod_ssl 

3.2 SSL・バーチャルホスト・リバースプロキシの設定を行う。
※SSL通信を行う場合は、リバースプロキシを使わないと出来ませんので設定をしていきます。
※サブドメインで行っていきますので、バーチャルホストの設定もしていきます。
※SSL設定で細かい部分は省かせて頂いています。

【ファイルを開く】

[user@localhost] vi /etc/httpd/conf.d/ssl.conf

【ファイル内容】


~~~ 省く ~~~

<VirtualHost *:443>

#---サブドメインの設定 ---
ServerName subsonic.tmyinsight.net:443
#---

#--- リバースプロキシの設定
proxyRequests off
ProxyPass / http://tmyinsight.net:4040/
ProxyPassReverse / http://tmyinsight.net:4040/
#---

#---ログの設定
ErrorLog logs/ssl_subsonic_error_log
TransferLog logs/ssl_subsonic_access_log
#=--

#---暗号方式の設定
#---個々の設定があると思いますので省きます。
#---

#---証明書場所指定の設定
SSLCertificateFile /home/localhost/SSL/subsonictmyinsightnet.crt
SSLCertificateKeyFile /home/localhost/SSL/subsonictmyinsightnet.key
SSLCACertificateFile /home/localhost/SSL/subsonictmyinsightnetinter.crt
#---

<Files ~ "\.(cgi|shtml|phtml|php3?)$">
    SSLOptions +StdEnvVars
</Files>

SetEnvIf User-Agent ".*MSIE.*" \
         nokeepalive ssl-unclean-shutdown \
         downgrade-1.0 force-response-1.0

CustomLog logs/ssl_request_log \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

</VirtualHost>

3.3 Apacheを再起動する。

systemctl restart httpd

エラーが発生しなければ設定が完了です。

【念のために確認】
◎正規のSSL証明なのか確認。
android・iphoneで subsonicの専用のアプリがあります。
SSL証明書が正規ではないとエラー起きますので確認が必要です。

自分はシマンテック社のサイトで確認をしました。
Symantec.CryptoReport

◎SUBSONICが起動に時間が掛かる場合があります。
起動に時間が掛かる場合は “エラーコード503″ がサイトで出力する場合があります。
少し待ってから更新などをして頂いた方がよろしいと思います。
しかし、かなり時間が掛かる場合はシステム上に何らかのエラーが疑われると思いますのでチェックが必要になります。

◎subsonicを自動起動設定がされていませんので、"hsystemctl" のコマンドを設定を行って下さい。

◎初期IDとパスワードについて
ID:admin
pass: admin
ログインが出来ると思います。後々は管理者用のID・PASSをして下さい。
その他、subsonic内の細かな設定は、個々に調べて下さい。
特に難しい部分は無いと思いますが。。。

【参考文献】
Carpe Diem さん – Subsonicの導入
geek.note – 無料の音楽ストリーミング環境を構築する 2(SubSonic on CentOS7)