TL-R470GP-AC v4.0 开启SSH



不用折腾,真的不用折腾。上截图

端口隐藏了,我不确定 TP-Link 官方是否介意这个,所以只是给了个图上来。

我是把 1.1 的固件(1.1.0 Build 200831 Rel.44384n)翻了个遍,之前看到了改备份/配置文件的,再加上自己“经验”的开盒插 TTL,都没必要,固件里直接给了个功能。

系统工具 -》 诊断工具 -》 故障诊断 -》 开启诊断模式。

重启,找到合适的端口,不是 22,能看固件就看固件吧,代码里写死了。

用户名 root ,密码参考下边的代码,来自 /etc/init.d/dropbear 的最前边几行

macAddr 是设备标签上写的 MAC 地址,全大写,没有横线或者冒号。

对于 MAC 地址是 112233445566 的设备,root 密码就是 eb341820cd3a3485 。

给个链接 https://rst.im/hash/112233445566,参考 md5(half) 这行

另外,一些其他信息。

Telnet,telnet是开不了的,因为固件的 /etc/passwd 里放了一个默认密码,而 telnet 的启动脚本检测了,只有各种都是空的情况才能自动开启 telnet。假设条件成立,telnet 的密码也是空,参考 /etc/init.d/telnet 的 start()

串口,依旧没搞定。

opkg,自带配置无效,有空再去看哪个源可以用。

wireguard,等 opkg 搞了再看



You are not authorised to read all content in this post. Please login…

TL-R470GP-AC v4.0 开启SSH by @sskaje: https://sskaje.me/2020/10/tl-r470gp-ac-v4-0-ssh/

TL-R470GP-AC v4.0 主板图



之前看到某论坛的历史记录,TL-R470GP-AC v1.0 跟当时的 gamer 上有人发的 MR100GP-AC 板子看上去一模一样,不愧是一家。

为了研究 TL-R470GP-AC 装 WireGuard,花260又买了一个新的,拆机。

然而,试了 J1 和 J4 的各种组合,都看不到串口数据。



TL-R470GP-AC v4.0 主板图 by @sskaje: https://sskaje.me/2020/10/tl-r470gp-ac-v4-0-%e4%b8%bb%e6%9d%bf%e5%9b%be/

TL-R470GP-AC 解密备份文件



TL-R470GP-AC 是 TP-Link 的一款基础的路由+PoE交换+AC的3合一设备。图省事和便宜给老家换了这套方案,配上3个 ax 的AP。但是这款设备没有看到第三方固件。

想研究开启SSH,所以先从改配置文件入手,但是配置文件是加密的,于是第一步回到定位加密算法或者直接解密/加密配置文件。所有试验均在ubuntu 18.04 下完成。

1 官网下载固件,binwalk -e 看固件,研究web 的 cgi 程序,可以定位到配置文件解密程序的可执行文件

2 file 看一下程序,mipsel

3 ubuntu 下安装qemu

4 准备执行环境,在 squash-root 里执行

5 复制备份文件文件到 squash-root 里,执行解密命令

目前还没看到怎么开 SSH,能搞定的话,再去搞定 wireguard 就完美了。至于加密,有现成的工具可用。

接下来分析配置文件吧,全靠猜。

先看看tar包的内容



You are not authorised to read all content in this post. Please login…

TL-R470GP-AC 解密备份文件 by @sskaje: https://sskaje.me/2020/09/tl-r470gp-ac-backup-file-decrypt/

做了个DNS查询工具 & Switch 下载加速



之前为了自己方便,造了个 dig web interface 的轮子,查询 DNS 记录。

这次简单粗暴地做了个工具,找了个预生成的 dns 服务器 IP 列表,把要查询的域名记录循环扔给各个服务器去查,拿到的最终 A 记录去重做列表,网页测速度。地址在:https://ip.rst.im/dns/

然后,可能是有效的 Switch 会用到的服务器列表:

atum.hac.lp1.d4c.nintendo.net

dragons.hac.lp1.dragons.nintendo.net

bugyo.hac.lp1.eshop.nintendo.net

aqua.hac.lp1.d4c.nintendo.net

storage.lp1.scsi.srv.nintendo.net

receive-lp1.dg.srv.nintendo.net

bcat-topics-lp1.cdn.nintendo.net

其中,*.cdn.nintendo.net 和 *.d4c.nintendo.net 目测都是在 akamai 的cdn 上,理论上拿路由器把这些域名都扔给香港的服务器去解析就会好很多。



做了个DNS查询工具 & Switch 下载加速 by @sskaje: https://sskaje.me/2020/08/dns-query-tool-switch-download-accelerating/

Digital Ocean Install Windows 10 2004



方法1 使用别人现成的磁盘镜像

参考 https://www.whatuptime.com/ 。步骤如下

1 注册 Digital Ocean 账号

2 建一台虚拟机,设置密码,关掉,进recovery,改成 Boot from Recovery ISO,启动后选择 6 Interactive Shell

3 原作者给了一个 dropbox 的磁盘镜像下载地址,但是这个磁盘镜像是基于微软古老的公开的 Windows 10 Enterprise Evaluation 制作的,不管怎样,有个现成的总归省事。

4 改回磁盘引导,Console 连进去,用户名 WhatUpTime.com,密码: P@ssword64 。先改用户名密码,然后根据后台的信息设置网卡。我创建的 Compute Optimized 的droplet,系统里的两个网卡,Ethernet 2 和 3,我改的2,可用。建好网络后,选用老版本的 Windows 远程桌面客户端 或者 Mac 版的连上去,Windows 10 2004 的远程桌面连上去提示 CredSSP 的错误,简单说,这个系统太老了。Windows Update之后,这个提示会消失,但是 Digital Ocean 的 Web Console 在 Mac Chrome 下,鼠标跟虚拟机里的鼠标对不上,这是一个有挑战的体验。

5 进系统,该更新更新,但是更新之后,系统始终显示的是 Windows 10 Enterprise Evaluation,版本也始终停留在 1607,虽然更新能装到 2018 年 4 月。注册表的版本文字也改过了,正版 Enterprise 的 license key 也试过了,都无法直接升级;Windows 10 Update Assistant 也提示无法升级;Media Creation Tool 也死;DISM 查询版本也失败。需要从官方下载 2004 business edition 的 ISO,直接运行 setup.exe,运行后,系统会提示有更新。

6 该更新更新,更新完重启后再进系统,再运行 setup.exe,安装。

注1:该虚拟机磁盘镜像只有16G,系统装完之后基本就满了,磁盘管理里直接扩展卷即可。

注2:Snapshot 不用尝试了,创建的snapshot 直接生成droplet会出错不可用,创建标准虚拟机后用 snapshot 重建 droplet 也不可用。

方法2 自制Window 10 磁盘镜像

参考 https://glitchwitch.io/blog/2018-09/windows-10-on-digitalocean/ 全手工。

准备: windows 10 2004 ISO, virtio-win ISO,一台有加载了 kvm_intel 的linux。

Virtio-win 驱动从这里下载 https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/ 。win10 2004 至少需要 virtio-win-0.1.185,低版本会蓝屏。

以 Ubuntu 18.04 为例,

装好之后,直接vnc 远程连这台主机的5900,进入安装步骤。安装过程需要加载外部驱动,E:\NetKvm\w10\amd64 和 E:\viostor\w10\amd64 ,去掉 隐藏不兼容驱动的勾,都选择第一个。识别出硬盘后,正常安装,等到系统提示自动重启倒计时的时候,ctrl + c 结束 qemu 进程。

压缩镜像后,gzip文件大概 4.7G,先在DigitalOcean上同机房建一个$5的服务器,把文件传上去,装一个nginx。剩下回到第一步,用vpc内网IP下载镜像、安装。

这个版本的镜像会自带一个恢复分区,需要删除了才能去扩展磁盘卷。管理员CMD下操作命令如下:

结束之后去磁盘管理里,把C盘的卷直接扩展即可。



Digital Ocean Install Windows 10 2004 by @sskaje: https://sskaje.me/2020/06/digital-ocean-install-windows-10-2004/