plex の設定で証明書をインポートして https アクセスを実現し、逆プロキシに nginx を使用しないようにします。
1. 証明書の準備#
私の証明書の申請方法は、acme を使用して生成しました。以前の記事で詳しく説明していますので、参考にしてください。https://tyuans.com/linux%e4%bd%bf%e7%94%a8acme%e7%94%b3%e8%af%b7%e8%af%81%e4%b9%a6/
2. 証明書の変換#
plex に証明書を追加するには.pfx ファイルが必要ですが、acme で生成されるのは.key および.cer ファイルですので、変換が必要です。openssl コマンドを使用します。
#まず、acmeで生成された証明書のディレクトリに移動します:
cd ~/.acme/youdomain.com
#youdomain.comはあなたのドメインです。-outは出力するpfxファイルの名前を指定し、-inkeyはkeyをインポートし、-inはcer証明書をインポートします。
openssl pkcs12 -export -out youdomain.com.pfx -inkey youdomain.com.key -in youdomain.com.cer
#次に、キー、つまりパスワードを入力します。必ず入力してください。
3. 証明書を plex が見つけられるフォルダにコピーする#
私の plex サーバーは docker で作成されているため、ディレクトリはマッピングされています。詳しい構築方法は、https://tyuans.com/docker%e5%ae%89%e8%a3%85plex/を参考にしてください。
pfx ファイルをコンテナにマッピングされた /video ディレクトリにコピーします。私の場合は /usr/plex/video です。
#自分が.acmeの対応するドメインのフォルダでコピー操作を行うことを確認してください
cp youdomain.com.pfx /usr/plex/video/
コピーが完了したら、任意のライブラリ - 編集 - フォルダの追加で、パスを選択し、ウィンドウで /video 下に証明書が表示されることが確認できます。
4.plex の設定#
設定 - ネットワーク - 高度なオプションを表示するには:
カスタム証明書の場所:/video/youdomain.com.pfx
カスタム証明書の暗号化キー:先ほど証明書を変換する際に設定したパスワードを入力します
カスタム証明書のドメイン:あなたのドメインyoudomain.comです
カスタムサーバーアクセスURL:それぞれ http://youdomain.com:32400/web,https://youdomain.com:32400/web
#ポートは自分の状況に応じて変更できます
5. スクリプトの更新#
証明書は 3 ヶ月ごとに更新されるため、定期的に新しい証明書を変換し、plex のマッピングフォルダにコピーするスクリプトを作成する必要があります。絶対パスを変更することを忘れないでください。
つまり、先ほどの変換とコピーのコマンドを一緒に配置し、定期的なタスクを設定します。タスクの設定は、証明書の申請時期に基づいて計算します。私は毎月 1 日に実行しています。わからない場合は、オンラインのウェブサイトで計算してください。https://tool.lu/crontab/
vim plexpfx.sh
openssl pkcs12 -export -out /root/.acme/youdomain.com/youdomain.com.pfx -inkey /root/.acme/youdomain.com/youdomain.com.key -in /root/.acme/youdomain.com/youdomain.com.cer
cp /root/.acme/youdomain.com/youdomain.com.pfx /usr/plex/video/
#実行権限を追加する
chmod +x plexpfx.sh
crontab -e
0 1 1 */1 * /root/cronsh/plexpfx.sh