京东云
由于k2p的mt7621老了,wifi5的速度只有400mbps上下,不能满足新设备的网速需求(连宽带都跑不满),看着京东云还能跑京豆回本,就在2021-08-24买了一个京东云无线宝2代(AX1800 Pro)也就是现在说的亚瑟,本着高通高性能armcpu还有usb3指望能刷个机什么的,结果没等到他出固件,就换了软路由,现在依然作为ap使用,因为固件太菜,所以始终只有做ap的命。
2023年4月22日16点20分京东云突然重启,系统被强制更新到r2279
原来是r2242,并且自动更新是关的,插件也没有跑,说明京东云有隐藏后门(大概是jdc_agent)
开SSH
最后一个能用的是1.5.40r2181,目前最新的1.5.50r2204是不行的,另外这个版本还会更新到easymesh,如果没有不同型号的需要进行组网,强烈不建议更新
登录京东云,打开f12控制台,运行一下这个
$.ajax({
url: "/jdcapi",
async: false,
data: JSON.stringify({
jsonrpc: "2.0",
id: 1,
method: "call",
params: [
$.cookie("sessionid"),
"service",
"set",
{
"name": "dropbear",
"instances": {"instance1": {"command": ["/usr/sbin/dropbear"]}}
}
]
}),
dataType: "json",
type: "POST"
})
如果是1.5.50r2204的固件,可以试试这个 评论区Monic提供加密脚本 的内容在京东云断网的情况下恢复出厂设置(不会删缓存)后贴到控制台运行,因为是加密的,也不知道运行了什么,安全性自辩
22年11月头,目前最新的固件是1.5.70r2242,2181无法下发aiecpluginES,所以必须更新,咩咩已经成功带着ssh升级到了这个最新版,方法不公开发布,目前没有可以直接在此固件开ssh的办法,这里提供一些思路:
- 旧版固件可以开ssh
- 固件更新成功后会重启,亮蓝灯,这时手机app可以连接控制路由器
- 大概1分钟后,亮绿灯启动插件,然后会下发/opt/etc/下的插件脚本
nattype.sh
jdc_docker.sh
aiecpluginES.sh
aiecpluginextA.sh
这4个文件,其中aie开头的是插件,另外两个是nat测试和docker环境的启动脚本,以及/opt/etc/init.d/r2242_hotfix
这个开机启动的补丁 - 补丁每次开机重置一次定时计划任务,几分钟定时kill掉一次dropbear
因为他是基于Openwrt的,其中/usr/sbin/dropbear
为本次请求运行的命令,带着cookie还能运行其他的命令
如果需要开机启动,那只需要在/etc/rc.local
中的exit 0
前面加入这个命令,具体怎么加,可以查查vi怎么用
另外如果你用京东云拨号,那么这个ssh服务也是可以从公网访问的,如果不想,请自行增加iptables规则来屏蔽从pppoe访问tcp22
这也算是个隐藏功能吧,不是什么漏洞
DNS劫持
虽然作为AP模式,但是他依然会劫持接在它下面dns到他自身,也就是udp53
其实劫持也没啥,主要是他的DNS解析太慢了,而且局域网主机名.lan
后缀的都无法正常传递到上级路由解析
具体的话可以iptables -t nat -L PREROUTING
检查一下是否有这条规则,解决方案也很简单,命令咩咩已经写好了,运行将删除这条劫持dns的规则,也可以按上面的方式加到开机启动
iptables -t nat -L PREROUTING --line-num | grep dpt:domain | awk '{system("iptables -t nat -D PREROUTING "$1)}'
至于如何验证劫持关掉了呢?nslookup jdcloudwifi.com
解析不出来则为成功(京东云劫持这个域名用于快速访问路由器设置)
另外发现他还是会不定时加回来,所以还需要crontab -e
加到计划任务里
* * * * * iptables -t nat -L PREROUTING --line-num | grep dpt:domain | awk '{system("iptables -t nat -D PREROUTING "$1)}'
这样一分钟会自动检查一次并删掉劫持的规则
或者可以把dns请求劫持一下到主路由
iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 192.168.1.1:53
1.5.70r2242收敛了一点,ap模式不会再劫持全部dns,收敛了一点,可以不处理正常用
target prot opt source destination
DNAT udp -- anywhere anywhere udp dpt:domain STRING match "|0b6a64636c6f75647769666903636f6d|" ALGO name bm TO 65535 to:192.168.1.3
QoS
京东云自带QoS规则,可以使用iptables -t mangle -L
查到,积分模式切换的就是QoS模式,具体的脚本是/etc/ipt_qosnss.sh
端口转发
用这个路由器大概也会用它的赚京东功能吧?由于他的UPnP比较奇怪,就算上级路由开了UPnP他也是nat3,那么就需要给他做端口转发,因为他跑的插件虽然说最多就两个,但是具体跑的是哪一个是不固定的,可以先查一下端口监听
netstat -anp | grep 0.0.0.0 | grep -v -E 'wpa|hostap|nmbd|dns|smb|nginx|cnssdaemon|dro
pbear|jdc_|127.0.0.1:'
然后把他们监听的端口加到主路由的端口转发就行
另外有一个/opt/etc/nattype.sh
用于检测nat类型,观察了一下,他会在18700-18799的范围内随机检测,因此这部分也要转发
另外还有个办法,看京东云的防火墙都开放了什么端口,照着添加转发也可以
iptables -L zone_wan_input
更新到r2242之后,有了一个新方法,这是热补丁的一部分/sbin/haiapi call '{"payload":[{"method":"firewall.get_port_access_list"}],"version":"1.0.0","action":"call"}'
显示的是个json,需要转发什么端口是什么协议清晰可见
实在是懒的话,直接把10000-59999都转给京东云就完事咯
外置双插件
因为京东云给的越来越少了,咩咩这里是内置X哔哩哔哩(aiecpluginE)外置Y爱奇艺(aiecpluginA),并且内置跑的比外置还猛,Y插件也占不满500g的硬盘,那么就将内置的X也移动过去
插件安装在/opt
中,aiecplugin
开头的文件夹就是,其中aiecpluginA的存储是在aiecpluginA.conf
中,aiecpluginE则是一个软连接链过去的cache
文件夹
cd /opt/aiecpluginE
# 将内置的缓存复制到外置
cp -a /mnt/mmcblk0p27/aiecpluginE /mnt/sda1/aiecpluginE
# 将插件运行目录换成外置的
rm Log cache
ln -s /mnt/sda1/aiecpluginE/cache cache
ln -s /mnt/sda1/aiecpluginE/Log Log
# 让路由状态显示的是实际的缓存大小
cd /mnt/mmcblk0p27/
rm -rf aiecpluginE
ln -s /mnt/sda1/aiecpluginE aiecpluginE
# 重启插件
ps | grep mmcblk0p27
kill 上面第一列所有的数字用空格隔开
22年11月头,aiecpluginE已经被aiecpluginES插件取代,这是一个跑在docker里的插件,2181无法下发,所以被迫更新到最新的2242
因为插件是个docker容器,所以要将其改为外置就简单了,刚刚被傻逼iOS的下拉刷新坑了,写的全没了,现在就简单写一下吧,假设你的外置盘在/mnt/sda1
docker stop centaurs
cd /mnt/mmcblk0p27
cp -a aiecpluginES /mnt/sda1/aiecpluginES
ln -s /mnt/sda1/aiecpluginES aiecpluginES
docker start centaurs
固件降级
编辑文件/lib/upgrade/platform.sh
,找到check_hlos_type()
这个方法,把-a $ver -ge $version_no
删掉,大概在31行
elif [ -n "$type" -a $ver -ge $version_no ];then
改为
elif [ -n "$type" ];then
就可以在web选择旧版固件降级了
另外评论区有个旧版固件和旧版的platform.sh,因为不知道后期会有什么变化,优先推荐直接修改文件而不是替换,如果不会改可以替换试试(1.5.50r2204测试通过)
Bug
2022年12月初,京东云给2代亚瑟把双插件发成了内外A,也就是爱奇艺的ipes,导致积分暴降,60mbps上一天0.6,之前刚出雅典娜1.2,21年刚买2.5元
原来的aiecpluginA服务变成了aiecplugin2A和aiecpluginsame2A,aiecplugin2A内置,aiecpluginsame2A外置
但是不知道是不是开发的人根本看不懂代码还是有bug,导致这内外两个A只能启动一个,插盘就启动外置的,不插就启动内置的,向客服反馈一个月多次让工程师看也没找到问题,外置存满了内置还是0缓存
LED
红灯:emmc读写,绿灯:wan口传输,蓝灯:wan口插入
echo mmc0 > /sys/class/leds/led_r1/trigger
echo netdev > /sys/class/leds/led_b1/trigger
echo netdev > /sys/class/leds/led_g1/trigger
echo eth4 > /sys/class/leds/led_b1/device_name
echo eth4 > /sys/class/leds/led_g1/device_name
echo link > /sys/class/leds/led_b1/mode
echo 'tx rx' > /sys/class/leds/led_g1/mode
备份emmc
因为京东云2代和1代不一样,系统是装在emmc里的,积分也是用emmc跑的,众所周知闪存的写入量是有限的,很有可能跑积分给跑挂了(比如持续红灯不开机)既然开了ssh那就备份一下比较好
如果插usb盘:
dd if=/dev/mmcblk0 bs=10M of=/mnt/sda1/jdc2emmc.img
使用nc网络传输到另一台设备上:
先在存镜像的电脑上运行(Linux,如果用op的话去掉-q 0,但完成后不会自动退出,自己看盘读写)
nc -q 0 京东云ip 12345 > jdc2emmc.img
在京东云运行
dd if=/dev/mmcblk0 bs=10M | nc -l -vv -p 12345
其他
京东云对外有个54171端口,转发/api到80端口,是固定端口,建议屏蔽避免被运营商扫,并且这里的api可以修改/opt/etc/config中的文件,另外后台还跑着一个使用固定证书验证访问的webdav服务
ssh证书免密登录把pub里的内容加到这个文件/etc/dropbear/authorized_keys
另外看看评论区,有帮助
如果咩咩的文章对你有帮助,您可以 请我喝牛奶
多谢分享 mjj
补充几个我觉得可以注意的地方
关于SSH的保活:
经测试,22端口不会通过IPv6出网,但是IPv4就不清楚,(咱没公网QwQ)
如果担心端口暴露到外网的话,可以为dropbear增加-p参数,并设置好本地的IP,重启路由器即可 (截图:https://s1.328888.xyz/2022/04/18/r97DW.png)
QoS规则:
经过查看配置文件发现,几种不同的QoS模式中有定义不同的内存限制。
其中极限模式内存放开到了500M,积分优先定义到了300M
您好,请问亚瑟如何备份固件呢?使用mtd命令只显示表头没有数据
固件是装在emmc里的,整个emmc dd出来吧
新版的是不是不能获取ssh
最后一个能用的是1.5.40r2181,目前最新的1.5.50r2204是不行的,另外这个版本还会更新到easymesh,如果没有不同型号的需要进行组网,强烈不建议更新
bbq了我刚更新,这个能降级吗
我觉得不行
可以,在旧版系统机器SSH后获取旧版本的platform.sh,SCP上2204机型替换,然后网页升级不低于platform.sh机型的版本固件(相同或高于)就可以了。
你有没有考虑过一个问题,最新固件开不了ssh
A. 打开以下链接复制里面所有内容 保存备用
点击这里复制所有代码 https://bash-linux.amin.fun/jdcloud/jdcapi_offline.txt
B. 恢复出厂设置(恢复出厂设置不会清空缓存),恢复后不要联网进行配置 或拔掉WAN网线再进行配置
C:登录路由器网页版(默认192.168.68.1)后台 按F12 在控制台(console) 复制粘贴第1步的代码
https://pan.quark.cn/s/23790d2f71a0
下载这里的platform.sh,SCP上去覆盖原文件,亚瑟就能直接在页面刷2165版本的固件,亲测亚瑟从2204降到2165,我又从2165升级到了2181,拿2181的platform.sh对比了下这个连接里得,发现缺两行,应该就是这两行带来得效果。取自ES分享给up主
老哥2181固件有吗?刚到的版本太低不能跑分,听说最低得2181才行
不哦,现在要2242才行了,不然docker跑不起来只能跑单爱奇艺插件,新版会动态下发补丁了,我已经带着ssh升级到最新的2242了,方法暂时不公布
2023-01-04更新,现在亚瑟全是双A插件爱奇艺,2181够了,不过2242可以装docker可以考虑下跑别的服务
一直2181等着刷op,+120固态最近也才50-90分都不如下级的一台鲁班跑的好
插了一张坏卡,吃10积分保底
我想关闭dns劫持
但是你写的我不大看的懂
能截图告知一下吗
感谢
ssh上去crontab -e进去按i编辑然后把下面那条加进去,按esc再输入:wq保存,等一分钟就关掉了
至于如何验证劫持关掉了呢?nslookup jdcloudwifi.com解析不出来则为成功
"解析不出来"的话
那nslookup jdcloudwifi.com会显示什么结果呢?
BV1394y1o7by
但是为什么我执行后还是无效呀
root@JDBox_Athena:~# nslookup jdcloudwifi.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: jdcloudwifi.com
Address 1: 192.168.68.1
*** Can't find jdcloudwifi.com: No answer
你在局域网设备上试啊,他这就是把局域网dns请求都劫持到东云上,你在京东云试,他自己肯定用自己的dnsmasq解析呀
“/opt/etc/nattype.sh用于检测nat类型”
有没有方法让检测每次返回服务器的数据都是nat1,没公网京东云根本就不会跑
可以是可以,但是他该不跑还是不跑,试过了,正确的方式是把他需要的端口映射到公网ip上
雅典娜能用吗?
当然能,他们的固件是同一个
想问一下大神,这个路由能刷机,能给指条明路吗
不能刷
楼主雅典娜能装docker嘛,开了shh装MIXBOX工具也行,提示iptables v1.4.21: Kernel module xt_set is not loaded in.
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
这些错误
新固件规则分组变了的话那你自己找吧,我没有新机器
怎么去掉固件对比更新的提示,让他不自动检测大于固件版本的固件
不我不是新固件还是。1.5.40r2181,想装个docker玩玩,求指点
没装过,但肯定可以装,就是跑不动,之前有京东云跑的插件是docker经常死机
看来雅典娜这个路由器硬件不咋滴啊,docker都带不动,还得是小米ax9000
雅典娜就没问题了,毕竟1gram
本想买个雅典娜装个docker,用用去广告的插件,在跑个豆豆,这下看来废了,期待大神开发出新大陆来。
层主会刷固件吗op的固件,能不能交流下怎么刷
这机器目前无固件可以刷
大佬,能分享一下1.5.40r2181固件吗
群共享有
求1.5.40r2181固件
群在哪~
2181固件 按照LZ的方法设置了后 AP模式的有线搞定了 已经开始跑插件了 但无线还是nslookup jdc这个还是会弹出来 导致手机连接2代的WIFI还是无法上网 但可以上QQ和V信 求大佬指导一下 可以发红包感谢 跪求了
你检查一下上级路由的设置,ap模式的话ip和dns使用的是上级路由的,但是如果被劫持用的就是京东云自己的,你的问题是dns无法正常解析,既然nslookup那个域名还能正常出结果,说明你并没有成功的干掉dns劫持,建议`iptables -t nat -L PREROUTING --line-num | grep dpt:domain`看一下
能否给个保留ssh升级的办法,求大神指点
能说的都说了,都说到这地步了还不知道怎么做,那建议洗洗睡吧
哎失败了,没能保留ssh,坐等大神更新了
升级了r2242,没有docker,还是原来的E插件
你看这都过去过久了,内置插件都换了两轮了,想要docker直接装一个就是了
求教,最新的固件还有办法开ssh么?
这个问题你应该问大量囤货提价的奸商们
这观点我赞同,只不过找不到囤货的奸商(T_T)先挂着赚点豆子好了
乍一看以为楼主近期发的帖,仔细一看是去年的哈哈哈哈。
不过很感谢楼主分享的资料了,我的2242机器总算有救能降级了,可惜没早点看到帖子,不然我那2262兴许还有救来着(早知道就不开摆升到最新的了)。
不知道是不是那啥放出的原因,好像最近讨论热度一下又上来了,o(╯□╰)o
因为js偷固件大量回收大幅涨价,于是那啥又收回去了,这文章一直都有在更新,现在正处于倒数第二新的版本上并使用上述方法开了ssh
卧槽,大佬回复的好快,感谢大佬百忙中回复,我也是今天早上看到图片才知道,原来现在已经进展到这程度了,唉。可惜不在群里,所以等看到图片的时候已经晚了(大悲),现在也不知道啥时候能够下到。我就想着啥时候把emmc跑炸了之后找朋友换一个,再刷一下,安心养老了。说起来这个可以的话,我真是省好多事,本身配置不差,又不用专门去买一个,省钱又省事。不知道大佬可不可以有偿拉我一哈555555
1、写了个评论推送功能,你点了发送键咩咩就马上能看到你评论了。2、咩咩也不在群里。3、这玩意系统装在emmc里的,差不多得了,等到emmc炸了那就只能进垃圾桶了
哈哈哈哈哈原来如此,那我就安心等好心人二次分享上传了。emmc炸了倒是问题不大,我刚刚在恩山看了俩帖子,好像是叫维修方向,还有一个叫全部转移到外置硬盘跑,大概能够理解了。所以炸了也是可以fix的,除非他硬件all boom了。反正认识维修佬朋友,让他换个emmc问题不大(白嫖要大声!
绵羊大佬你说emmc炸了进垃圾桶,意思是说这玩意噶了的话,那啥也刷不了了嘛~
毕竟,系统以及像一些无线校准数据都存在emmc里的,除非你又能力全盘备份了后期炸了再弄个新的写回去,或是趁还好先换掉,或是直接不用内置emmc,usb插盘全放外置跑
那个维修方向看了一下,容易坏的原因应该是因为系统在emmc里并且不是只读的,并且还有一个512M的swap分区,导致写入量暴增
懂咩咩的意思了,那我还是把那几个过保的机器拉来走一下备份吧,反正已经过保了随便折腾。
(说起来狗夹克是真狗,嘴上说版本没影响,放屁,我2181永远跑的最猛的,后续的2204,2222,2242,2262,我的评价是:依托答辩,纯纯滴构式。手上有纯256和64外接256的做对比,前者是2242的,后者2181,前者只能说老ED了,最近才嗯了点,后者猛的雅痞,分老高了(当然不排除是插件的影响?),但是根据同时拥有2181和更新版本固件亚瑟的朋友的反馈来看,2181还是硬硬的屎,新版真是老ED了,上了所谓新功能好像也没啥用(大嘘)。所以,还是2181罢
现在的情况是,跑的猛,不给钱呢(你看京东的logo是什么动物?)
那也是嗷,现在单价属实是变低了,当年每天多高不说,一根淀粉肠的钱总归是有的罢。
现在连雪糕都快食不起叻(大悲)
太真实了,网心的价格也低了
网心更是杂鱼,杂鱼。要不是我有个双倍收益卡,电费都跑不回来,之前在b站看到个说软路由爱快里面装群辉再内嵌个纳斯小星的教程,第一次没玩过就好奇跟着做了下,tnnd,收益那真是依托啊,电费都跑不回来,好时代 结束叻
现在就等着亚瑟的firmware有人能漏一漏给我(虽然我也不太懂怎么刷,((降级都没试过23333。刷完了当个ap什么的,也不错了。
毕竟手上俩亚瑟,有一个能当原批硬路由就很好,省的还得专门买一个刷~
牛逼,双倍收益卡怎么弄到的(咩咩这一天大约一块八,上传60mbps
我注册新号才送的,而且他这个双倍收益emmm,和我想的双倍收益,好像,不太一样。比如我平时跑9毛,理论上双倍收益就1块8,他不是,上了双倍收益,可能就1块4这样吧。
我:你是懂数学的。
不过好像说,拉新用户注册,新用户有双倍卡,老用户也能得?好像发现了一个不太得了的东西(
牛逼,老用户与容器魔方不得入内是吧(
刚更新了文章,可以试试备份整个emmc(坏了直接弄个新的写进去换上就行)
容器魔方不知道收益咋样,之前我给自己折软路由爱快,想着那玩意的500g的固态闲着也是闲着,配置嘛也还行,4590T+12G
要是能跑个东西有点钱就好,然后就搜啊搜,原本以为爱快能跑docker网心的x86,结果说8行。然后又搜啊搜,说可以docker里面可以跑群辉,然后群辉跑纳斯小星就好了,我就去试了下。emmmm一天9毛四舍五入当他有一块吧
老用户刚刚去看了下网心的公众号,老用户还是可以入内的,容器魔方也可以,网心现在也在搞拼夕夕式的拉人头奖励活动了(难怪有勇气把单价往下压。咩咩可以去网心云公众号看看,老用户拉新,老用户能得,新用户也有~
看到了咩咩的备份教程,好耶,蟹蟹咩咩,周末有空了试一试~ღ( ´・ᴗ・` )比心