SABnzbd は、Usenetでバイナリコンテンツ(画像、オーディオ、ビデオ、電子書籍など)をダウンロードするための無料のオープンソースおよびWebベースのUsenetクライアントです。クロスプラットフォームであり、Linux、BSD、macOS、UNIX、Windows、Synology、QNAPなどで利用できます。このチュートリアルでは、Ubuntu16.04およびUbuntu18.04にSABnzbdをインストールする方法を紹介します。 。
SABnzbdの機能:
- Webブラウザを使用してどこからでもアクセスできます。
- レスポンシブウェブインターフェース。
- 複数のUsenetサーバー(プロバイダー)がサポートされています。
- モバイルアプリはAndroidとiOSで利用できます
- Sonarr、Sickrage、CouchPotato、HeadphonesなどのアプリはSABnzbdと統合でき、ダウンロードプロセスを自動化できます 。
- SABnzbdは、RSSフィードを読み取って処理し、カスタムスクリプトをアクティブにして、メール、うなり声、うろつき、プッシュオーバー、プッシュブレットで通知することもできます。
- NZB(Newz Binary)インデクサーの統合。 NZBファイルはトレントファイルのようなものであり、NZBインデクサーはトレントサイトのようなものです。
- その他多数
Ubuntu 16.04/18.04にSABnzbdUsenetクライアントをインストールする方法
SABnzbdは、デフォルトのUbuntuリポジトリから入手できます。したがって、ターミナルを開いて、aptを使用してインストールできます。
sudo apt install sabnzbdplus
SABnzbdは積極的に開発されています。次のコマンドを実行して、SABnzbd PPAから最新の安定バージョン(この記事の執筆時点では2.3.9)をインストールすることをお勧めします。
sudo add-apt-repository ppa:jcfp/nobetas sudo add-apt-repository ppa:jcfp/sab-addons sudo apt update sudo apt install sabnzbdplus python-sabyenc par2-tbb
SABYencモジュールは、CPUが制限されたデバイスでのダウンロード速度を上げるのに役立ちます。 par2-tbb
パッケージはMulticore-par2モジュールを提供し、システム上のすべてのコアを使用して検証と修復を大幅に高速化します。
SABnzbdのSystemdサービスユニットを作成する
sabnzbdplus
パッケージは従来のInitスクリプト(/etc/init.d/sabnzbdplus)を提供しますが、機能しないことがわかりました。次のコマンドを実行してサービスを開始しました。
sudo service sabnzbdplus start
次のコマンドを使用してUbuntuシステムのリスニングポートを一覧表示すると、ポート8080が見つかりません(SABnzbdはデフォルトでポート8080でリッスンします)。これは、実行されていないことを示します。
sudo netstat -lnpt | grep 8080
SABnzbdを開始するためのより良い方法は、Systemdサービスユニットを使用することです。 Nanoなどのコマンドラインテキストエディタを使用して、SABnzbd用のSystemdサービスを作成できます。
sudo nano /etc/systemd/system/sabnzbd.service
次のテキストをファイルに入れます。
[Unit] Description=SABnzbd Usenet Client After=network.target [Service] Type=simple User=sabnzbd Group=sabnzbd ExecStart=/usr/bin/python3 -OO /usr/bin/sabnzbdplus --browser 0 ExecStop=/usr/bin/pkill sabnzbdplus Restart=always SyslogIdentifier=SABnzbd Usenet Client [Install] WantedBy=multi-user.target
SABnzbdは、デフォルトでポート8080でリッスンします。このポートがシステム上の別のプロセスによって使用されている場合、SABnzbdは自動的に別のポートを選択します。以下のようにExecStartパラメータで直接ポートを選択することをお勧めします。これにより、SABnzbdはポート8081でリッスンします。
ExecStart=/usr/bin/python -OO /usr/bin/sabnzbdplus -s 127.0.0.1:8081 --browser 0
ファイルを保存して閉じます。 (Nanoテキストエディタでファイルを保存するには、Ctrl+O
を押します。 、次にEnter
を押します 確認するために。ファイルを閉じるには、Ctrl+X
を押します 。)
次に、Systemdをリロードします。
sudo systemctl daemon-reload
SABnzbdを実行するためにroot権限は必要ないことに注意してください。そのため、サービスファイルで、SABnzbdをsabnzbd
として実行するように指定しました。 ルート権限を持たないユーザーとグループ。 sabnzbd
を作成します 次のコマンドを使用して、システムユーザーとグループを作成します。ホームディレクトリは、構成ファイル(/home/sabnzbd/.sabnzbd/sabnzbd.ini)の保存に使用されます。
sudo adduser --system --home /home/sabnzbd --group sabnzbd
これで、systemdサービスを使用してsabnzbdを開始できます。
sudo systemctl start sabnzbd
起動時に自動起動を有効にします。
sudo systemctl enable sabnzbd
次に、sabnzbdのステータスを確認します。
systemctl status sabnzbd
サンプル出力:
セットアップウィザードを起動します
127.0.0.1:8080/sabnzbd/wizard
と入力できます 任意のWebブラウザでクイックスタートウィザードを起動します。
言語を選択します。次の画面で、Usenetプロバイダーのサーバーの詳細を入力します。 15日間の無料トライアルを提供するNewsDemonを使用しています。これらのサーバーの詳細は、Usenetプロバイダーから入手できます。 UsenetがSSLをサポートしている場合は、SSLを確認してください。
Usenetからコンテンツ(画像、音声、ビデオ、電子書籍など)をダウンロードするには、 NZBにフィードする必要があります。 SABnzbdにファイルします。 .torrentファイルに似たNZBファイルは、nzbfinder.wsなどのUsenetインデックスサイトからダウンロードできます。これらのサイトのほとんどは、フリーミアムモデルに基づいています。独自の無料のUsenetインデクサーを作成するオプションがありますが、Usenetの初心者の場合は、これらのUsenetインデックスサイトに無料のアカウントを登録して、何が利用できるかを確認することをお勧めします。スクリーンショットからわかるように、ダウンロード速度は非常に高速です。 (16.8 MB / s =134.4 Mbit / s)
ダウンロード先フォルダを変更する方法
デフォルトのダウンロードフォルダは/home/sabnzbd/Downloads
です。 。外付けハードドライブなどの別のディレクトリに変更する場合は、Folder
をクリックします。 SABnzbdWebインターフェイスのメニュー。次に、ブラウザボタンをクリックして変更します。
sabnzbd
に注意してください ユーザーは、ダウンロード先フォルダーに対する読み取りおよび書き込み権限を持っている必要があります。外付けUSBハードドライブを使用している場合は、次のコマンドを実行して権限を付与できます。
sudo setfacl -R -m u:sabnzbd:rwx /media/linuxbabe/
外付けUSBハードドライブは/media/linuxbabe/
にマウントされています 、必要に応じて変更してください。
リバースプロキシの設定
ドメイン名を使用してリモート接続(LANの外部など)からSABnzbd Webインターフェースにアクセスするには、NginxまたはApacheを使用してリバースプロキシを設定できます。
実際のドメイン名をお持ちでない場合は、NameCheapにアクセスして購入することをお勧めします。価格は安く、whoisのプライバシー保護は一生無料です。
Nginx
Ubuntu16.04またはUbuntu18.04にNginxをインストールします:
sudo apt install nginx
NginxWebサーバーを起動します。
sudo systemctl start nginx
次に、/etc/nginx/conf.d/
に新しいサーバーブロックファイルを作成します ディレクトリ。
sudo nano /etc/nginx/conf.d/sabnzbd.conf
次のテキストをファイルに貼り付けます。 sabnzbd.your-domain.com
を置き換えます ご希望のドメイン名を使用して、そのAレコードを作成することを忘れないでください。別のポートを使用する場合は、8080を自分のポート番号に変更してください。
server { listen 80; server_name sabnzbd.your-domain.com; location / { proxy_pass http://127.0.0.1:8080; 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
これで、sabnzbd.your-domain.com
を介してSABnzbdWebインターフェースにアクセスできます。 。次のエラーが表示された場合:
Access denied - Hostname verification failed
次に、構成ファイル(/home/sabnzbd/.sabnzbd/sabnzbd.ini
)を編集する必要があります。 )そしてsabnzbd.your-domain.com
を追加します ホワイトリストに追加します。
host_whitelist = sabnzbd.your-domain.com
次に、SABnzbdを再起動します。
sudo systemctl restart sabnzbd
Apache
NginxではなくApacheWebサーバーを使用している場合は、以下の手順に従ってリバースプロキシを設定してください。
ApacheWebサーバーをインストールします。
sudo apt install apache2
Apacheをリバースプロキシとして使用するには、proxy
を有効にする必要があります モジュールとrewrite
も有効にします モジュール。
sudo a2enmod proxy proxy_http rewrite
次に、SABnzbdの仮想ホストファイルを作成します。
sudo nano /etc/apache2/sites-available/sabnzbd.conf
次のテキストをファイルに入れます。 sabnzbd.your-domain.com
を置き換えます 実際のドメイン名を使用して、Aレコードを設定することを忘れないでください。別のポートを使用する場合は、8080を自分のポート番号に変更してください。
<VirtualHost *:80> ServerName sabnzbd.your-domain.com ProxyPass / http://127.0.0.1:8080/ ProxyPassReverse / http://127.0.0.1:8080/ </VirtualHost>
ファイルを保存して閉じます。次に、この仮想ホストを有効にします。
sudo a2ensite sabnzbd.conf
変更を有効にするためにApacheをリロードします。
sudo systemctl reload apache2
これで、ドメイン名(sabnzbd.your-domain.com
)を入力して、SABnzbdにリモートアクセスできます。 )ブラウザのアドレスバー。次のエラーが表示された場合:
Access denied - Hostname verification failed
次に、構成ファイル(/home/sabnzbd/.sabnzbd/sabnzbd.ini
)を編集する必要があります。 )そしてsabnzbd.your-domain.com
を追加します ホワイトリストに追加します。
host_whitelist = sabnzbd.your-domain.com
次に、SABnzbdを再起動します。
sudo systemctl restart sabnzbd
HTTPSを有効にする
外部からSABnzbdWebインターフェイスにアクセスするときにHTTPトラフィックを暗号化するために、Let’sEncryptから発行された無料のTLS証明書をインストールしてHTTPSを有効にすることができます。次のコマンドを実行して、Let’s Encryptクライアント(certbot)をUbuntuにインストールします。
sudo apt install certbot
Nginxを使用する場合は、CertbotNginxプラグインもインストールする必要があります。
sudo apt install python3-certbot-nginx
次に、次のコマンドを実行してTLS証明書を取得してインストールします。
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d sabnzbd.your-domain.com
Apacheを使用する場合は、CertbotApacheプラグインをインストールする必要があります。
sudo apt install python3-certbot-apache
次に、次のコマンドを実行してTLS証明書を取得してインストールします。
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d sabnzbd.your-domain.com
場所:
-
--nginx
:nginxプラグインを使用してください。 -
--apache
:Apacheプラグインを使用してください。 -
--agree-tos
:利用規約に同意します。 --redirect
:301リダイレクトでHTTPSを強制します。-
--hsts
:すべてのHTTP応答にStrict-Transport-Securityヘッダーを追加します。ドメインに常にTLSを使用するようにブラウザを強制します。 SSL/TLSストリッピングから防御します。 -
--staple-ocsp
:OCSPステープリングを有効にします。有効なOCSP応答は、TLS中にサーバーが提供する証明書にホチキス止めされます。
これで、証明書が取得され、自動的にインストールされます。
アクセスの制限
パブリックインターネットからSABnzbdにアクセスできる場合は、ユーザー名とパスワードを設定することが非常に重要です。これは、構成で実行できます。>一般>セキュリティ セクション。