jellyfin媒体服务器添加SSL安全证书,为你的网页挂锁。
什么是 SSL 证书?
SSL 证书使网站能够使用比 HTTP 更加安全的 HTTPS。SSL 证书是托管在网站源服务器中的数据文件。SSL 证书促成了 SSL/TLS 加密,它们含有网站的公钥和网站标识以及相关信息。
尝试与源服务器通信的设备将引用此文件,以获取公钥并验证服务器的身份。私钥应保密并妥善保管。
什么是 SSL?
SSL(通常称为 TLS)是用于加密互联网流量和验证服务器身份的协议。任何具有 HTTPS 网址的网站都使用 SSL/TLS。
SSL证书是如何工作的?
SSL证书在一个数据文件中包括以下信息:
针对其颁发证书的域名
证书颁发给哪一个人、组织或设备
证书由哪一证书颁发机构颁发
证书颁发机构的数字签名
关联的子域
证书的颁发日期
证书的到期日期
(SSL证书是有到期时间的,注意到期前换新续上的证书。)
公钥(私钥为保密状态)
用于 SSL 的公钥和私钥本质上是用于加密和签署数据的长字符串。使用公钥加密的数据只能用私钥解密。
该证书托管在一个网站的源服务器上,并被发送到任何请求加载该网站的设备上。 大多数浏览器都允许用户查看 SSL 证书:在 Chrome 浏览器中,可以通过点击 URL 栏左侧的挂锁图标来实现。
为什么网站需要 SSL 证书?
网站需要 SSL 证书,以确保用户数据的安全,验证网站的所有权,防止攻击者创建站点的虚假版本,并且获得用户信任。
加密:SSL/TLS 加密之所以可行,是因为 SSL 证书促成了公钥私钥配对。客户端(例如 Web 浏览器)从服务器的 SSL 证书获取打开 TLS 连接所需的公钥。
身份验证:SSL 证书可验证客户端正在与实际拥有该域的正确服务器进行通信。这有助于防止域欺骗和其他类型的攻击。
HTTPS:对企业而言,HTTPS 网址必须使用 SSL证书,这一点最为重要。HTTPS 是 HTTP 的安全形式,HTTPS 网站是通过 SSL/TLS 加密流量的网站。
除了在传输过程中保护用户数据外,HTTPS 还使站点更值得用户信赖。许多用户不会注意到以 http:// 和 https:// 开头的网址的区别,但大多数浏览器都使用醒目的方式将 HTTP 站点标记为“不安全”,并且尝试为切换到 HTTPS 和增强安全性提供奖励。
申请SSL证书
获取SSL证书的方式多种多样,有免费的有付费的。
获取证书的前提是你拥有一个域名,而你拥有域名,应该有这个能力根据网络教程照抄如何获得SSL证书。
如果你免费的、付费的,这些证书都不会获取,可在下一篇(最近实在看不下去电脑,我抓紧写出来。)文章中进行照抄,如何免费自动申请通配符域名证书。
设置要求
自己拥有一个域名(最便宜的几块钱一年)
如jellyfin是用Docker进行安装的,最好是使用Host网络模式,如果是Bridge网络模式,请自行修改映射端口,添加HTTPS端口8920。
有公网IP,且做了DDNS域名解析,在外网可以使用自己的域名进行访问。
演示安装的jellyfin版本是官方的服务器Docker镜像版本:10.9.7
jellyfin使用的证书格式
jellyfin自定义SSL的证书要求格式是包含了证书和私钥的 PKCS #12 文件
PFX也称为PKCS#12(Public Key Cryptography Standards #12),常见的扩展名是: .pfx 和 .p12
将证书文件转换格式
演示是使用下一篇文章中的工具,自动申请的通配符域名证书,也就是一个证书,通用所有二级域名,如
***.aabcc.top
。将自助申请下来的SSL证书文件压缩包解压,得到两个证书文件。(演示的证书文件格式是crt格式。)
前往网络中免费的网页版在线SSL安全证书格式转换工具(网站底部写有免费提供28天试用证书)
https://www.myssl.cn/tools/merge-pfx-cert.html
按照当前转换工具的提示,将你的SSL证书信息粘贴上去。(如何获得对应信息看下一步骤)
单击选中证书文件,右键选择以记事本的方式打开,全选复制其中的内容,粘贴到网页中对应的框内。
将信息粘贴完之后,按照要求为你的SSL证书设置一个密码。然后点击合成PFX文件。
合成完之后点击下载PFX文件
现在我们就得到了一个jellyfin可以使用的 PKCS #12证书文件。
为jellyfin添加SSL证书
将转换后的证书文件,放到你的jellyfin容器内部路径。
演示是安装时映射了config路径,直接将文件上传到这个路径内,如果你什么路径都没映射到本地,那就将证书文件随意放到你的媒体库文件夹内。打开jellyfin--菜单--控制台--网络,勾选启用HTTPS,设置本地HTTPS端口号为8920(默认的)。
在HTTPS选项--点击右侧的放大镜,找到你上传的SSL证书文件,选择即可。再输入你的证书的密码。
(强制HTTPS建议不开启,自选。)远程访问设置中,要(默认)勾选允许与此服务器进行远程连接。然后下面的公开HTTPS端口号填写为8920。
在IP协议中勾选启用IPv4+IPv6,然后点击保存。
这个时候也可以重启一下jellyfin(演示未重启过)
设置路由器端口映射
打开你的路由器,找到端口映射(每个路由器的内部功能名称不一定一样)。
演示使用的是爱快软路由,根据自己的路由器进行设置。
内网地址:你的NAS的IP地址
内网端口:NAS上设置的jellyfin使用的https协议的端口
协议:tcp
映射类型:外网接口
外网地址:就是你的宽带光猫线路
外网端口:保持不变,使用默认的8920
然后点击保存即可
测试访问
打开你的电脑浏览器,输入你的jellyfin外网访问地址,使用https://协议,端口使用8920。
不出意外,不翻车,你的就会显示的和我的一样,已经挂上了锁。在手机端jellyfin上一样的输入8920的https访问地址,正常连接即可。
最后说一句,搭建影视库找我,微信
S20306
,效果一级棒。
参考资料
没有什么参考的,就一个论坛有点提示。https://tieba.baidu.com/p/8522068773
👇👇👇
- 感谢你赐予我前进的力量