最近在Nas上顺便搭建了一个Emby,体验了一个月,整体效果还算不错。
有些功能需要Premiere版本才能解锁,于是找了找相关的解决方案,基本上就是两种,要么直接安装破解版,要么就是拦截Emby的验证请求,返回一个伪造的数据来骗过服务端。
由于我使用的是TrueNas系统,最适合的方式就是伪站了,网上的教程有些复杂,需要修改hosts,准备SSL,还要解决自签证书不被信任等问题。
这里我想到另一种解决方案,直接修改请求地址,让它直接指向我们的伪站就好了。
不需要修改Emby的源代码,只需要按下F12打开调试工具即可。
文件映射
首先来到Emby激活页面,打开调试工具,找到右边的源代码选项卡。
首先我们要将下面两个文件链接到本地:
\web\embypremiere\embypremiere.js%3Fv=4.7.11.0
\web\modules\emby-apiclient\connectionmanager.js%3Fv=4.7.11.0
在这之前,先找到源代码下的覆盖,打开 启用本地替代。
然后找到上面那两个文件,右键点击保存以备替代,这样它们就被映射到本地了,本地做出的修改将会应用到这个页面。
伪站搭建
接下来我们就来搭建一个伪站,首先你需要有一个网站服务器,这里就直接略过了。
建议伪站的域名与Emby的相同,否则会出现跨域问题,能自己解决也可以。
看完各路大佬们的教程,激活主要依靠以下三个地址:
mb3admin.com/admin/service/registration/validateDevice
{"cacheExpirationDays": 365,"message": "Device Valid","resultCode": "GOOD"}
mb3admin.com/admin/service/registration/getStatus
{"deviceStatus":"","planType":"","subscriptions":{}}
mb3admin.com/admin/service/registration/validate
{"featId":"","registered":true,"expDate":"2099-05-02","key":"abcdefg29achijklmn0c598opqrst1e7"}
它们分别对应的都是一小段json,观察一下不难发现,有效期取决于expDate,至于cacheExpirationDays默认是7,填到365或更高一些也可以。
现在我们只需要把mb3admin.com换成我们自己的域名,然后回到刚才映射到本地的文件,把这三个请求地址修改成我们的伪站,这样就可以骗过服务端了。
开始激活
直接在F12的页面中修改并Ctrl+S,刷新一下网页修改就生效了,这时候只需要随便输入一个秘钥,点击保存。
虽然仍然提示”缺少或无效的 Emby Premiere 秘钥”,但实际上已经成功激活了。
回到仪表盘就会发现这个金色的小徽章已经出现了。
厲害 awa
awa
可以远程指导或者帮忙操作一下嘛
接下来我们就来搭建一个伪站,首先你需要有一个网站服务器,这里就直接略过了。
大佬这一段网站服务器不需要部署啥文件嘛
或者麻烦来个详细点的嘛 呜呜呜
部署的文件不是写着吗,举个例子,就是保证你访问:域名/admin/service/registration/validateDevice看到的内容是{“cacheExpirationDays”: 365,”message”: “Device Valid”,”resultCode”: “GOOD”}
这个的原理是欺骗Emby,重定向mb3admin.com到你自己的域名