Ubuntu 18.04 LTSにAirSonicをインストールする方法

AirSonicは無料でオープンソースのメディアストリーミングサーバーです。このチュートリアルでは、Ubuntu 18.04 LTSサーバーインスタンスにAirSonicサーバーインスタンスを最初からデプロイするプロセスについて説明します。

前提条件

  • 新しくデプロイされたVultr Ubuntu 18.04 LTSサーバーインスタンス。少なくとも2GBのメモリが必要です。IPv4アドレスがあるとします203.0.113.1
  • sudoのユーザー
  • airsonic.example.com上記のサーバーインスタンスをポイントしているドメイン。

ステップ1:基本的なシステム構成

スワップファイルを作成する

システムパフォーマンスを向上させるために、2 GBのメモリを搭載したマシンに2 GB(2048M)のスワップファイルを作成することをお勧めします。

sudo dd if=/dev/zero of=/swapfile count=2048 bs=1M
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile   none    swap    sw    0   0' | sudo tee -a /etc/fstab
free -m

注: 別のサーバーサイズを使用している場合は、スワップパーティションの適切なサイズが異なる場合があります。

マシンのホスト名と完全修飾ドメイン名(FQDN)を設定する

Let's Encrypt SSL証明書でHTTPSセキュリティを有効にするには、マシンのホスト名とFQDNを適切に設定する必要があります。

次のコマンドは、マシンのホスト名airsonicとFQDN airsonic.example.comをセットアップします。

sudo hostnamectl set-hostname airsonic
sudo sed -i 's/^127.0.1.1.*$/127.0.1.1 airsonic.example.com airsonic/g' /etc/hosts

結果は以下で確認できます。

hostname
hostname -f

インバウンド可能にするために、ファイアウォールのルールを変更しSSHHTTP、およびHTTPSトラフィック

AirSonicサーバーを実行するためのUFWファイアウォールルールを設定します。

sudo ufw allow OpenSSH
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

プロンプトが表示されたらCommand may disrupt existing ssh connections. Proceed with operation (y|n)?、入力yしてを押しENTERます。

システムを更新する

セキュリティとパフォーマンスの目的で、Ubuntu 18.04 LTSシステムを最新のステータスに更新する必要があります。

sudo apt update
sudo apt upgrade -y && sudo shutdown -r now

アップグレード中に、現在インストールされているバージョンのgrub構成ファイルがローカルで変更されたことが通知される場合があります。実際の変更は私たちの責任ではないため、UP矢印を使用してinstall the package maintainer's versionオプションを強調表示し、を押しENTERます。

システムが再起動したら、同じsudoユーザーとして再度ログインして次に進みます。

ステップ2:OpenJDK Javaランタイム環境(JRE)8をインストールする

OpenJDK JRE 8をインストールして、結果を確認します。

sudo apt install -y openjdk-8-jre-headless
java -version

2番目のコマンドの出力は次のようになります。

openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-8u181-b13-0ubuntu0.18.04.1-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)

さらに、JAVA_HOME次のように環境変数を設定する必要があります。

echo "JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")" | sudo tee -a /etc/profile
source /etc/profile

手順3:AirSonicをインストールする

AirSonicは、さまざまな方法で導入できます。このチュートリアルでは、AirSonic WARパッケージを使用してAirSonicをインストールします。

次の名前の専用ユーザーと専用グループを作成しますairsonic

sudo groupadd airsonic
sudo mkdir /var/airsonic
sudo useradd -s /bin/nologin -g airsonic -d /var/airsonic -M airsonic

最新のAirSonic WARパッケージ、AirSonic v10.1.2をダウンロードします。

cd /var/airsonic
sudo wget https://github.com/airsonic/airsonic/releases/download/v10.1.2/airsonic.war
sudo chown -R airsonic:airsonic /var/airsonic

事前定義されたAirSonic systemdユニットファイルをダウンロードして、AirSonicサービスを開始します。

sudo wget https://raw.githubusercontent.com/airsonic/airsonic/master/contrib/airsonic.service -O /etc/systemd/system/airsonic.service
sudo wget https://raw.githubusercontent.com/airsonic/airsonic/master/contrib/airsonic-systemd-env -O /etc/default/airsonic
sudo systemctl daemon-reload
sudo systemctl start airsonic.service
sudo systemctl enable airsonic.service

注: ご使用のマシンで2つのAirSonic systemdユニットファイルを確認してカスタマイズする必要がある場合があります。

ステップ4:インストールをテストする

AirSonicが起動して実行され、ポートでリッスンします8080。次のコマンドを使用して、これが事実であることを確認できます。

ps -ef|grep airsonic

AirSonicサイトに直接アクセスすることもできますが、最初にファイアウォールルールを一時的に変更する必要があります。

sudo ufw allow in 8080/tcp

次に、お気に入りのWebブラウザでをポイントし、次にhttp://203.0.113.1:8080/airsonicリストされているデフォルトの認証情報を使用してログインします。

  • ユーザー名: admin
  • パスワード: admin

セキュリティ上の理由から、ログイン後すぐに管理者のパスワードを変更する必要があります。

結果が確認されたら、ポートへのアクセスを8080再度制限します。

sudo ufw deny in 8080/tcp

ステップ5:AirSonicサイトのLet's Encrypt SSL証明書を取得する

セキュリティ上の理由から、新しく作成したすべてのWebサイトでHTTPSセキュリティを有効にすることをお勧めします。そのための最も便利な方法は、Let's Encrypt SSL証明書を次のように展開することです。

Certbotユーティリティをインストールします。

sudo apt update
sudo apt install -y software-properties-common
sudo add-apt-repository -y ppa:certbot/certbot
sudo apt update
sudo apt install -y certbot

Certbotを使用して、ドメインのLet's Encrypt SSL証明書を申請しますairsonic.example.com

sudo certbot certonly --standalone --agree-tos --no-eff-email -m [email protected] -d airsonic.example.com

証明書とチェーンは次の場所に保存されます。

/etc/letsencrypt/live/airsonic.example.com/fullchain.pem

キーファイルはここに保存されます:

/etc/letsencrypt/live/airsonic.example.com/privkey.pem

Let's Encrypt SSL証明書は3か月で有効期限が切れるように設計されています。cronジョブを設定して、証明書を自動的に更新できます。

sudo crontab -e

エディターを選択するように求められたら、入力し2、を押してENTERを選択します/usr/bin/vim.basic

次に、を押してO、次のように新しい行を追加します。

0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew

保存して終了:

:wq!

このcronジョブは、毎日正午にLet's Encrypt証明書を更新しようとします。

ステップ6:Nginxをリバースプロキシとしてインストールする

Nginxを使用すると、訪問者のアクセスを容易にし(訪問者が8080ポート番号を入力する必要がなくなるため)、AirSonic WebサイトでHTTPSセキュリティを有効にすることができます。

APTを使用してNginxをインストールします。

sudo apt install -y nginx

次に、AirSonicの構成ファイルを作成します。

cat <<EOF | sudo tee /etc/nginx/sites-available/airsonic.conf
# Redirect HTTP to HTTPS
server {
    listen      80;
    server_name airsonic.example.com;
    return      301 https://\$server_name\$request_uri;
}

server {

    # Setup HTTPS certificates
    listen       443 default ssl;
    server_name  airsonic.example.com;
    ssl_certificate      /etc/letsencrypt/live/airsonic.example.com/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/airsonic.example.com/privkey.pem;

    # Proxy to the Airsonic server
    location /airsonic {
        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 https;
        proxy_set_header X-Forwarded-Host  \$http_host;
        proxy_set_header Host              \$http_host;
        proxy_max_temp_file_size           0;
        proxy_pass                         http://127.0.0.1:8080;
        proxy_redirect                     http:// https://;
    }
}
EOF

新しく作成されたAirSonic Nginx構成ファイルを指すシンボリックリンクを作成します。

sudo ln -s /etc/nginx/sites-available/airsonic.conf /etc/nginx/sites-enabled/

構成を有効にするためにNginxを再起動します。

sudo systemctl restart nginx.service
sudo systemctl enable nginx.service

最後にお気に入りのWebブラウザを指すhttp://airsonic.example.com/airsonicか、https://airsonic.example.com/airsonicあなたのAirSonicのウェブサイトを探索を開始します。



Leave a Comment

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください

原子力が必ずしも悪ではないことを証明する5つの例

原子力が必ずしも悪ではないことを証明する5つの例

原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true

ビッグデータは人工知能をどのように変えていますか?

ビッグデータは人工知能をどのように変えていますか?

ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー

DebianでNFS共有をセットアップする

DebianでNFS共有をセットアップする

NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します

Fedora 28にMatomo Analyticsをインストールする方法

Fedora 28にMatomo Analyticsをインストールする方法

別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、