Tom

Tom

plex开启https

通过 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 server 是通过 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
加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。