Emby 国内加速服务效果展示

前言

因为众所周知的原因,中国网络对 fanart.tv、imvdb.com、themoviedb.org、www.thetvdb.com 等剧集刮削网站访问十分缓慢甚至无法访问。
此项目旨在破解 Emby 的同时加速中国用户对 Emby 刮削器 的访问,你无需折腾 Emby 的科学上网即可享受剧集刮削服务。你可以直接勾选 TheMovieDb、The Open Movie Database、TheTVDB 来刮削电影、剧集、动画。
因为有一定量的开销,此项目不是免费的,你需要支付 8 元来获得永久使用授权,购买链接

效果




记一次 Ubuntu 使用 SkiaSharp 库出现的错误

环境

AWS LightSail
Ubuntu 20.04 LTS (GNU/Linux 5.4.0-1018-aws x86_64)
.net core 3.1

问题

使用 SkiaSharp.NativeAssets.Linux 库时出现错误

Unable to load shared library 'libSkiaSharp' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: liblibSkiaSharp: cannot open shared object file: No such file or directory

解决方法

使用 ldd libSkiaSharp.so 查看缺少的链接库

linux-vdso.so.1 (0x00007ffc42ff5000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f470fa0f000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f470fa09000)
libfontconfig.so.1 =>  not found
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f470f873000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f470f681000)
/lib64/ld-linux-x86-64.so.2 (0x00007f471035f000)
libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f470f5c2000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f470f592000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f470f589000)
libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f470f551000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f470f535000)

可以看到第4行有一个 libfontconfig.so.1 => not found
通过 Google 很容易查到 libfontconfig.so.1libfontconfig1
使用 apt-get install libfontconfig1 安装相关的链接库即可

Emby IOS客户端破解方法

吐槽

IOS 这个闸总系统这么封闭,想改个 hosts 都不可以,iPad 这样我忍了,这辈子都别让我买 iPhone。

路由器修改 hosts

目的

在路由器的hosts 加上148.251.255.245 mb3admin.com 或者将 mb3admin.com 的解析 ip 劫持为 148.251.255.245,不同路由器操作不同。
下面除了 OpenWrt 之外我是从网上 COPY 过来的,自己看着改吧,主要目的就是上面所说的。

OpenWrt

网络->DHCP/DNS->自定义挟持域名

斐讯路由

功能设置->高级设置->HOST配置或高级设置->系统设置->系统参数->hosts配置,使用标准hosts格式

潘多拉固件

网络->DHCP/DNS->HOSTS和解析文件->自定义DNS解析,根据提示添加即可

华硕梅林固件

首先登陆路由器后台,在系统管理 > 系统设置中开启【JFFS】和【SSH】,然后重启路由器。
使用SSH登陆路由器,在【/jffs/configs】下建立【dnsmasq.conf.add】文件,文件内容【addn-hosts=/jffs/configs/hosts】
在/jffs/configs下创建自己的hosts文件,按照标准hosts规则填写需劫持的域名,然后执行service restart_dnsmasq重启或者重启路由器即可生效。

爱快固件

网络设置->DNS设置->DNS设置->增加->填写要劫持的域名和IP->保存

极路由

在应用中心,安装自定义hosts,添加劫持,重启路由器即可

tomato固件

在高级设置->DHCP/DNS>Dnsmasq自定义设置中,添加如下规则即可【address=/域名/IP】,截获DNS端口(UDP 53)打勾。

老毛子固件

内部网络->DHCP服务器->自定义HOSTS文件->添加一行->保存,重启生效。

其他固件

如果实在找不到,你也可以直接 ssh 连接到路由器
输入 sudo -i 进入 root
输入 vi /etc/hosts 修改hosts
i 键进入修改模式,在末尾添加 148.251.255.245 mb3admin.com
esc 键,再输入 :wq 保存修改

安装描述文件

在 IOS 上用浏览器访问描述文件下载链接,然后进入设置安装描述文件

进入 Emby

如果有提示这个点 OK

然后打开 Emby Premiere,有状态提示即破解完成

外网访问破解

如果你想在外网也能使用破解服务,那上面的方法是行不通了。
购买 Http Catcher APP,添加 DNS劫持,然后左下角开启代理。

我知道你不想付钱,那咋办嘛,又不能在系统修改 hosts,草了都。

《我在孤岛上迎接黎明》死是生的延续

《我在孤岛上迎接黎明》是王小波的短篇小说。书中的“我”在小时候认为宇宙和永恒是无限的,包括我在内的人却是有限的,我每每想到这眼前就会出现寂寞的大海,人所做的一切都不过是死前的游戏……

我喜欢写诗,然而上百首以内仅仅有几首是“好诗”,更可怕的是我甚至都不知道这“好诗”是怎么写出来的,这让我懊恼不已。

我同学生一同出海后遭遇了海潮,当我把学生全都推上小船上后,自己却被没有浆的小船带画到孤岛上。

我独自在荒岛上迎接黎明。太阳初升时,十万喇叭齐鸣。在黑暗尚未退去的地方,十万支蜡烛燃烧。在这样的情景下,我心中的某一部分被触动,似乎一把锋利的剑穿过内心,而我感觉到的,是愉悦。字句在我眼中燃烧,我完全凭自己的灵感写出了属于自己的诗篇。我把它刻在石头上,反复刻了数遍,让它不会被岁月抹去。我终于找到了对抗死亡的方法,让死作为生延续。

我也时常考虑活着的意义是为何,如果活着就是为了走向死亡,那“活着”岂不是无聊透顶。这篇小说给了我另外一种活着的灵感:在这个世界留下什么东西。它将作为我生的延续,永远存在于这里。由此可以解释我为何要做开源项目,我为何要开这么一个博客,我为何要写下这些文字——让我能够坦然面对死亡,让死作为生继续存在。

Emby 动画添加字幕脚本

最近看动画从 PT 站下了生肉,需要手动添加字幕,挨个添加显然太麻烦,写了个 python 脚本.

原理是 Emby 会自动扫描目录下和动画文件同名的字幕文件并加载.

import os

example_file_name = '[Snow-Raws] 新妹魔王の契約者 第<number>話 (BD 1920x1080 HEVC-YUV420P10 FLAC).mkv'
example_ass_name = '[Moozzi2] Shinmai Maou no Testament - <number> (BD 1920x1080 x.264 Flac).ass'
count = 1

while True:
    if count < 10:
        count_str = '0' + str(count)
    else:
        count_str = str(count)
    file_name = example_file_name.replace('<number>', count_str)
    ass_name = example_ass_name.replace('<number>', count_str)
    if os.path.isfile(file_name) & os.path.isfile(ass_name):
        os.rename(ass_name, os.path.splitext(file_name)[0] + os.path.splitext(ass_name)[1])
        print('替换 %s' % (ass_name))
        count += 1
    else:
        break

解压字幕到动画文件夹下, example_file_nameexample_ass_name 替换为动画和字幕名称,并用 <number> 替换剧集数,在动画文件夹下保存为 AssToAnime.py 然后 python3 AssToAnime.py 运行即可,回去看 Emby 就会有字幕出现了。

附上我常用的字幕网站:射手网

emby 破解版完全食用方法

最新教程更新于 2020/09/13,添加 IOS破解方案

小广告

Emby 国内加速服务

是否在为 Emby 无法刮削片子而烦恼?Emby 国内加速服务加速所有刮削器访问下载,拒绝手动刮削,直接勾选 TheMovieDb、The Open Movie Database、TheTVDB 来刮削电影、剧集、动画,让海报布满你的 Emby,让刮削不再成问题!旨在为了提高中国用户的 Emby 使用体验,了解一下
演示

网络加速

全中继高速线路,月付仅10元
不限设备数量、不限带宽速度,直接起飞
节点解锁 Netflix ,畅享 YouTube 4K
先试用 1G 流量再上车,用得安心
进入官网 注册体验一下

前言

我从 dotnet CoreFx 重新编译了 System.Net.Http.dll ,将认证服务器指向我的 api,达到通过认证的目的。

除了破解认证以外,我还修改了默认插件源,用我的服务器反代了官方的插件源,以加速国内用户下载插件。(其实官方插件源直接打不开

项目的开源地址在 GitHub,希望能够留下你的小星星。

注意事项

因为自动更新会覆盖原来替换过的文件,所以 Emby 服务端自动更新后需要重新替换文件!
您不想麻烦可以在 设置->自动更新 关闭自动更新

服务端破解

注意:如果以前使用其他破解方案,必须将系统的 hosts 的 mb3admin.com www.mb3admin.com 条目删除,否则破解不会生效

简要方法:只需要将 破解程序集 替换原有文件即完成破解,原有文件地址为 system/System.Net.Http.dll,或使用 docker 直接安装破解版。

具体方法:

威联通(Linux)

关闭 Emby 后使用 wget -O /share/CACHEDEV1_DATA/.qpkg/EmbyServer/system/System.Net.Http.dll 'https://github.com/YukiCoco/EmbyCrack/raw/master/assembly/unix-x64/System.Net.Http.dll' --no-check-certificate 下载破解程序集替换原有程序

华芸nas(Linux)

关闭 Emby 后使用 wget -O /volume1/.@plugins/AppCentral/emby-server/system/System.Net.Http.dll 'https://github.com/YukiCoco/EmbyCrack/raw/master/assembly/unix-x64/System.Net.Http.dll' --no-check-certificate 下载破解程序集替换原有程序

如果上述方法提示找不到文件,请参考 Linux 安装方法找到 Emby 目录

群晖

直接替换会出错,请直接使用 Docker 版

Linux

  1. sudo -i 切换为 root 用户
  2. 使用 systemctl stop emby-server.service 结束 emby 进程
  3. 使用 find / -name EmbyServer 找到 emby,比如这里我的 emby 所在目录为/opt/emby-server/system/
  4. 使用 wget -O /opt/emby-server/system/System.Net.Http.dll 'https://github.com/YukiCoco/EmbyCrack/raw/master/assembly/unix-x64/System.Net.Http.dll' --no-check-certificate(注意替换掉命令中的 emby 所在目录)下载破解程序集替换原有程序
  5. 启动 Emby 进程 systemctl start emby-server.service

Windows

下载程序集后进入 Emby 目录替换原来的文件即可。

Docker

替换安装

输入 docker ps 得到 emby docker 的 CONTAINER ID
输入 docker exec -it CONTAINER ID /bin/sh 进入 docker 终端
输入 wget https://github.com/YukiCoco/EmbyCrack/raw/master/assembly/unix-x64/System.Net.Http.dll 下载 dll
输入 cp System.Net.Http.dll system/ 替换原有 dll ,然后重启 emby docker 即可。

全新安装

安装 Docker 源使用
yukinococo/emby_crack:unix-x64 (Unix)
yukinococo/emby_crack:windows-x64 (Windows)

至此,服务端破解就已经生效了,接下来还需要在浏览器做一些小修改才能在 PC 上完全使用,坐和放宽 :)

客户端破解

注意:如果以前使用其他破解方案,必须将系统的 hosts 的 mb3admin.com www.mb3admin.com 条目删除,否则破解不会生效

  • PC 浏览器:安装 URLRedirector(Chrome, Firefox) 插件,添加用户规则

原始地址 https://mb3admin.com ,目标地址 https://crackemby.neko.re ,然后确认并保存,别忘了勾选重定向。

img

别忘了勾选这里
img

img

输入任意字符后这样显示,就是破解完成了。

高级应用

服务端获取插件源已经替换为我的,但是后台显示插件图片采用的是 https://raw.githubusercontent.com 这个节点,国内访问速度很慢,建议加入到自己的代理白名单。

img

设置光猫桥接,从光猫获取 pppoe 密码

最近换了 redmi ac2100 路由器,顺便把光猫改一下桥接,减少一层 nat

从网上找到光猫超级管理员的密码登录

先通过审查元素获取密码,被加密

9d75a99515bbc84fef0bbe5eec330cd5ff1ffa0b59803053064cd0a63f32415d

通过 hash-identifier 推测加密类型,挨个试

试出来的类型是 SHA-256(md5($pass))

然后使用 hashcat 解出密码

能够看到密码为 159482

然后进将光猫设置为桥接,进路由器 pppoe 拨号即可.

快速构建 nginx + v2ray + ws + tls 科学上网

前言

想想上一篇文章还是 2019年度总结,其实前几个月写了很多东西,都记在 Typecho 里,没写博客。为什么呢?因为知识点太过零散,自觉不方便写成文章,顶多记一记笔记这样子。

突然写这个是因为最近在 ruvds 租了一台机器用来挂给家里的 NAS 挂 bt 下载作代理用,因为移动不提供公网 ip,用 bt 下载速度太慢且几乎没有上传,我可不想一直做一个吸血鬼。

ruvds:一个月 60 卢布,6块钱左右,可以用万事达借记卡支付,很划算。

为什么使用 WebSocket + TLS

因为无论是 Vmess 亦或者 SS 协议,只要流量过大都会导致断流和封端口,遂只能另寻它路。Trojan 和 v2ray + ws 的伪装流量可以解决上述问题,这也就是这篇文章的由来。

准备工作

  • 一台墙外的机器
  • OS选择:Ubuntu / Debian / Centos
  • 一个域名

快速构建

开始

下列命令均在 root 用户下进行(su root 或者 sudo -i)且使用 Debian 9 系统,Centos 需要一些改变

  • nginx:提供网站服务
  • v2ray:提供 socket 代理服务
  • Certbot:自动配置证书,开启 tls

安装必要程序

安装 nginx:apt update && apt install -y nginx
安装 v2ray:wget https://install.direct/go.sh && bash go.sh

安装 Certbot:
OS 不同,方法不同,参考 https://certbot.eff.org/

配置 Nginx

先将域名解析到 vps 上,然后 cd 到 /etc/nginx/conf.d,添加文件 v2ray.conf,填入以下内容,文中 example.com 修改为你解析到 vps 的域名

server {
	server_name example.com;
	root /var/www/ray;
	location /ray { # 与 V2Ray 配置中的 path 保持一致
    if (http_upgrade != "websocket") { # WebSocket协商失败时返回404
        return 404;
    }
    proxy_redirect off;
    proxy_pass http://127.0.0.1:10086; # 假设WebSocket监听在环回地址的10000端口上
    proxy_http_version 1.1;
    proxy_set_header Upgradehttp_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host host;
    # Show real IP in v2ray access.log
    proxy_set_header X-Real-IPremote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }	
}

填写完成后使用 nginx -t 测试语法是否正确,然后 systemctl restart nginx 重启服务,创建 /var/www/ray 这个目录,建一个 index.html 文件,内容随意

配置 Certbot

输入 certbot ,选择你的域名

root@ip-172-26-6-133:/etc/nginx/conf.d# certbot
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx

Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: ray.yukino.ch
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel): 1
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for ray.yukino.ch
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/nginx/conf.d/v2ray.conf

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Redirecting all traffic on port 80 to ssl in /etc/nginx/conf.d/v2ray.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://ray.yukino.ch

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=ray.yukino.ch
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/ray.yukino.ch/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/ray.yukino.ch/privkey.pem
   Your cert will expire on 2020-09-17. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

至此,直接在浏览器访问你的域名应该可以看到 index.html 文件,如果没有,检查一下 80 / 443 端口是否打开了(telnet exmple.com 80)

配置 V2ray

修改 /etc/v2ray/config.json 文件, id 改为 你 生成 的 UUID

{
    "inbounds": [
        {
            "port": 10086,
            "listen": "127.0.0.1",
            "protocol": "vmess",
            "settings": {
                "clients": [
                    {
                        "id": "xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
                        "alterId": 64
                    }
                ]
            },
            "streamSettings": {
                "network": "ws",
                "wsSettings": {
                    "path": "/ray"
                }
            }
        }
    ],
    "outbounds": [
        {
            "protocol": "freedom",
            "settings": {}
        }
    ]
}

然后 systemctl restart v2ray 重启 v2ray,至此所有内容配置完毕

客户端连接

客户端连接的时候设置 path 为 ray,开启底层传输安全(tls),地址即为你的域名,用户 id 即为你的 uuid

我的 2019

写在前面

中学时期已过,生活不再是反反复复的学习,年度总结也有得写了。

2019 是我诞生的第十八年,回想起来,这一年发生了很多意料之外的事情:精神出问题、身体坏掉、志愿被调剂。当然,也有按照普通人生计划走的事情:高考、大学入学、成年。另外,我在许多方向做了些许尝试,发现了自己喜欢的很多东西。

在生活上

精神出问题,人也随之坏掉。由于某个无法改变的现实原因,以及长年以来的强迫思维,高三开学不久后负面情绪达到阈值,顷刻间爆发。在一段时间内被 OCD 取代了真正的内心,抑郁情绪也在心里反复翻涌。生与死的界限变得模糊,变得经常考虑死亡的可行性,然后再被理性一一否决。舍曲林吃和没吃一个样,甚至会让我长期精神紧绷,仅是来自外界的细微干扰也时常会吓我一跳。
心里出问题,这个事实被理性了解得一清二楚。坐以待毙不是我的风格,要潇洒,要始终浪漫。以自救为动机的我推开了变态(abnormal)心理学的大门。这个领域,真正地让我触碰到了人类最为脆弱的一面。同情自己,也同情那些更严重的精神症患者,一边面对恶魔,一边努力地活着,实属不易。查阅了很多资料后,对所谓顺其自然,为所当为。有了自己的理解。
何为自然?窗外的冷风、天空的太阳就是自然,婴儿诞生、树木凋零也是自然。而 OCD 让我违背自己的自然,后果便是精神崩溃。从某刻起,我决定遵从自然,接近自然。自然中的自己无限接近于洞穴外的美景,而被困在 OCD 中的自己只能看着墙上的影子生活。因此,我将自然视作自己的主,我成为了一个泛神论者。
我所做的这一切,只是为了拯救自己,但却恰好叩开了哲学领域的大门。原来我一直思索的问题已经有前人思索,这让我十分欣喜,原来高中课本上枯燥无味的“哲学”并不是哲学,真正的哲学是如此有趣(同时也更加无用),我的理想就是做个无用的 thinker。
由于长期地精神压抑,病了一场,在医院躺了半个月。十分感谢父亲母亲,在我最困难的时候给予我关怀,父母是真正能够无所保留为我付出一切的人。这场病让我明白了生命的脆弱,明白了父母的无私,明白了精神决定机械的肉体。以后精神状态不能过于压抑,压抑会毁掉本就是一具机械的身体。
六月七八号,我经历了高考,为中学时代画上句号。值得一提的是,监考老师是两年的班主任和高一地理老师,原来如此,结束更意味着新的开始。高考不过如此,几个小时,几张卷子,将我送往不同的地方。
志愿填报的时候,每个志愿都填了 CS、EE,最后却吃了一波调剂,让我不得不感叹生命之轻。没事,问题不大,条条大陆通 CS,准备考研了。就算我不是科班生,不也呆在图书馆嫖着书看得津津有味,正如现在手边放着一本《Linux 基础及应用教程》,我拿专业课门门都考60分,有何问题呢?
关于感情问题……这里似乎没什么好写的。

我看的书

反而上了大学以后却看得少了,值得反省。

  • 《天黑以后》
  • 《海边的卡夫卡》
  • 《围城》
  • 《我心中尚未崩坏的部分》
  • 《月亮与六便士》
  • 芥川龙之介的一些短篇
  • 《这才是心理学》
  • 《变态心理学》
  • 《改变心理学的五十个实验》
  • 《苏菲的世界》

田村为理想出走,最终却回到现实,脱离现实的理想原来死气沉沉。
许多人最后都活成了方鸿渐的样子,一如歌词“得不到的永远在骚动,被偏爱的却有恃无恐”。
即使后悔出生到这个世界,却仍要继续活下去,这也是一个觉悟吧。
火光映红了半片天空,理想在火中燃烧,最终归于天际,留下一堆漆黑的粉末嘲笑无药可救的现实。有的人出生在异地,究其一生都在追求回到理想中的故乡。

在我的领域

至今仍在尝试不同的方向,还是很菜很菜的。
目前的技术栈停留在 C# 做桌面程序,PHP 和传统的前端搞 web。问题是两者都还不够深入,都还在处于半斤八两的状态,这样真的不行,欠缺深入,欠缺打磨,一定要摸到底,理解透彻才行。下一年要在这两个方向分别作出令我满意的作品。

人不可能有全才,找到一个方向钻研下去才会有结果。下一年要确定具体的发展方向,只不过喜欢的太多了,似乎一个方向并不足以消磨掉满溢的热情。

走好,2019。

你好,2020。