前言

之前有写过关于宝塔部署Olaindex程序,挂载微软OneDrive 5TB网盘的教程。不过这段时间(尤其是去年年末以来),随着白嫖OneDrive的人越来越多,加上微软在亚洲的CDN也是垃圾的一笔,OneDrive的下载速度也越来越慢了,有时候十几KB、几十KB的速度简直令人发指。

这时候就不得不羡慕在国外生活的小伙伴了,之前测试的时候日本的小伙伴说下载速度可以达到50M,可把我馋的。最终由于速度原因,我不得不抛弃了OneDrive,转投到天翼云盘的怀抱。

说道天翼云盘,估计大家的想法就是:这玩意儿空间这么小,怎么用啊。

确实,现在新注册的用户都只有30GB的容量,即使每天都签到三次拿到150MB,一年也就只增加55GB左右的空间。不过其实天翼云盘之前出手是十分阔绰的,注册送10TB空间,老电信卡可以尝试着登陆一下,万一以前注册过呢。再然后就是不久前闹得沸沸扬扬的天翼云盘程序员误把30GB写成了30TB的bug事件,参加活动原本增加30GB空间,结果因为后端疏忽,全部增加了30TB……

当然,即使错过以上两个机会也没有关系,在2020-6-1之前,天翼云盘还有免费的三个月黄金会员能领,可以增加6TB的临时空间,再加上家庭云随便拉两个人就能增加1TB的空间,绑定宽带再赠送2TB的空间,其实一个账号就能拿到3TB的永久空间和6TB的临时空间。

天翼云活动

由于以上种种原因,许多大佬成功薅到了羊毛后,开始打了天翼云盘的注意。比如说天翼云盘下载是不限速的,那么能不能像OneDrive一样把目录分享出来给别人下载呢?毕竟30TB、10TB的大盘鸡可比一墙之隔的OneDrive 5TB要香多了。

近日,萌咖的大佬就写了这样一个程序,原名TCList(TianYi Cloud List),但是这样的话总让人觉得和TCL有什么奇怪的py交易,所以后来就改成了CTList,GitHub链接在这里:CTlist-萌咖

本文参考了萌咖V佬的GitHub说明、清隆大佬的博客:CTList 支持多用户的天翼云盘简洁目录程序,还有群大佬“逃亡于19xx”的手把手教学(为了帮我,远程操控搞到凌晨2点半,再次表示感谢)。

准备工作

创建CTList需要做以下准备:

获取授权码
下载主程序 (CTList)
下载配置文件 (config.json)
下载皮肤文件 (index.html)

因为该程序为萌咖V佬独立编写,所以授权码只有V佬一个人能发布,没有授权码是没办法使用这个套程序的。获取授权码的方式有:
1.前往萌咖杂货店购买:购买链接
2.免费的PY交易
3.求求我(虽然求我也没用)

首先进入到服务器的某个目录,例如/root下(之所以不进wwwroot目录是因为防止被别人拖库,而CTList建站用的是反代,所以任意目录都没关系。)。

cd /root
wget --no-check-certificate -qO "CTList" "https://github.com/MoeClub/CTList/raw/master/exec/amd64/linux/CTList"
wget --no-check-certificate -qO "config.json" "https://github.com/MoeClub/CTList/raw/master/config.json"
wget --no-check-certificate -qO "/root/index.html" "https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/@Theme/HaorWu/index.html"
chmod +x CTList

注意,如果你的目录和我不一样,请把第三条下载命令中的/root修改成自己的目录。

下载文件

然后选择编辑config.json文件

[
  {
    "Enable": 1,                                   
     # 0: 禁用, 1: 启用.
    "UserName": "",       #如果是短信登陆,请先通过“修改密码”创建一个密码                       
     # 输入电话号码.
    "Password": "",                              
      # 输入密码.
    "CaptchaMode": "https://api.moeclub.org/SampleCode",     
     # 验证码识别接口OCR,0:拒绝验证码,1:手动输入验证,其他:识别接口URL
    "RefreshToken": "",                        
     # 默认即可,无需修改
    "SubPath": "/",                  
     # 虚拟挂载目录,用于反代
    "RootPathId": "-11",                     
     # 默认根目录地址,根目录为-11
    "HideItemId": "0|-16",                   
     # 隐藏目录
    "AuthItemId": "",
     #加密目录
    "RefreshURL": 1800,                       
     # 最大: 1800; 允许最大: 2329
    "RefreshInterval": 900,                   
     # 直链目录刷新值,最大: Null, 最大全局值
  }
]

如果用全域名解析,例如设为www.baidu.com之类的,则无需变动。如果你想设为是www.baidu.com/CTlist,则需修改SubPath为/CTList

早期RefreshInterval刷新值可以调小一点,比如60(即60秒),等后期程序检查的差不多了,再修改高一点,免得被天翼云盘ban了。

RootPathId表示根目录,默认为-11,但是比如说你要分享天翼云盘中某个目录,可以在网页版的地址栏中查看到该文件的数字目录。文件ID需要按F12查看。

AuthItemId加密目录采用HTTP 401加密,使用方法为:(照抄的清隆大佬的博客)

# 单个写法
"AuthItemId": "-11?0?UserName:Password"
# 多个写法
"AuthItemId": "-11?0?UserName:Password|-16?1?UserName:Password"

# 字段解析
<文件或者目录的ID>?<加密模式>?<用户名>:<密码>

# 加密模式
0: 只加密这一层文件夹,可以直接访问这层文件夹内部的内容.
1: 加密这个文件夹的所有子项目.
注意: 加密文件选0和1效果一样.

测试服务是否有效。

# 默认启动监听 127.0.0.1, 一般用于反代.
# ./CTList -a "32位授权码"
# 直接监听公网.
# ./CTList -a "32位授权码" -bind 0.0.0.0 -port 端口号

如果不知道选哪个,建议直接监听公网,并且设置一个不太常用的端口号,不要使用80、443之类的,例如我是5288。授权码一定不要泄露。

此时如果成功的话,用你的ip:端口号,应该能访问到你的天翼云直链程序了。那么如果我们想要用自己的域名要怎么访问呢?首先打开宝塔,新建一个站点,例如www.baidu.com。至于根目录在哪里并不重要,默认就好了。

新建站点

先开启SSL和强制HTTPS。

开启SSL

然后开启反代,输入http://127.0.0.1:5288。这里把端口号换成你自己的端口号,提交一下。

开启反代

不出意外的话,你应该能通过你的域名访问到你的目录了。但是目前我们是开着前台开着服务才能让它持续运行的,如果需要让他一直在后台保持着运行,还需要做一些设置。

cat > /etc/systemd/system/ctlist.service <<EOF

输入以下内容

[Unit]
Description=CTList
After=network.target

[Service]
Type=simple
ExecStart=/root/CTList -a "32位授权码" -bind 127.0.0.1 -port 5288
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

按ctrl+c退出,其中ExecStart=/root/CTList得修改成你自己的目录,端口得修改成你自己的端口。如果不会使用命令行修改,可以尝试着在宝塔里面选对目录创建一下。

附上一些管理命令:

systemctl start ctlist #启动CTList服务     #必须执行

systemctl stop ctlist #停止CTList服务

systemctl restart ctlist #重启CTList服务

systemctl reload ctlist #重载CTList服务

systemctl enable ctlist #开机自启动CTList服务    #建议执行

systemctl disable ctlist #取消开机自启动CTList服务

systemctl status ctlist #常看CTList服务状态

本期教程到这里就结束了,虽然搭建的过程中满是艰辛,但是不得不说,抄别人博客真爽啊。

再次感谢以上各位大佬。