使用ASF在Ubuntu下实现Steam云挂卡
使用ASF在Ubuntu下实现Steam云挂卡
我的环境
- Ubuntu 18
- 主机配置为 1C1G
- ASF 搭建版本:V4.2.0.1
- ASF-Bot 搭建版本:2019.9.12
安装过程
下载 ASF
从 ASF V3 开始 .Net SDK 不是必须要安装,已经集成,所以直接下载安装 ASF (本文默认在 /root 目录下安装)。最新版下载链接请到这里找。
1 | 创建文件夹 |
生成 ASF 程序配置文件
使用在线网站生成,选择 ASF 选项并根据下面提示选择性填写内容,可根据个人需求自行调整,各个参数介绍看Wiki。
SteamOwnerID:64 位 SteamID,到这里登录后获取。
CurrentCulture:zh-CN
IPC:√
IPCPassword:password(自行设置)
其他选项使用默认,下载配置文件 ASF.config 到本地,通过 finalshell 等工具上传 ASF.config 到服务器的 /asf/config 目录下。
生成 steam 帐号配置文件(ASF Bot 配置文件)
使用在线网站生成,选择 机器人 选项并根据下面提示选择性填写内容,可根据个人需求自行调整,各个参数介绍看Wiki。
name:test(机器人名=配置文件名)
SteamLogin :steam帐号名
SteamPassword:steam帐号密码
enable:√
其他选项使用默认,下载配置文件 test.config 到本地,通过 finalshell 等工具上传 test.config 到服务器的 /asf/config 目录下。
运行程序
在 asf 目录下执行:
1 | ./ArchiSteamFarm |
按照提示输入验证码即可。如果想访问 WEB 界面还需要一些设置,请看[这里](# 为 Asf-ui 绑定域名)
进阶设置
保持后台运行
Screen
安装 screen
1 | apt install screen -y |
创建一个名为 asf 的窗口,并在其中执行程序。
1 | screen -S asfcd /home/asf./ArchiSteamFarm |
按 Ctrl+A+D
搁置窗口,程序已经在后台运行了,可以放心退出终端了。
Systemd(推荐)
安装 systemd
1 | apt install systemd |
创建 service 文件
1 | vi /etc/systemd/system/asf.service |
输入以下内容并保存
1 | [Unit] |
现在可以运行了。
1 | service asf start # 开始运行挂卡 |
steam 两步验证
不可能在挂卡平台每次都手动输入密钥,这也太蠢了。那么我们就需要将令牌导入到 ASF 中,以实现自动登录。各个平台操作不同,详情请见官方 WIKI。
安卓设备的方法如下:
手机 root
首先,你需要有系统的 root 权限,这个不多说,每个设备都有所不同。
提取令牌文件
安装一个能够访问系统根目录的文件管理器,如 ES 文件浏览器。
将文件 /data/data/com.valvesoftware.android.steam.community/files/Steamguard-XXX
复制出来,XXX
是你的 SteamID。重命名为 BotName.maFile
并放置到 /home/asf/config
目录下,程序会自动检测并读取。如我的 bot 名字为 test,则重命名为 test.maFile
。
提取设备 ID
将文件 /data/data/com.valvesoftware.android.steam.community/shared_prefs/steam.uuid.xml
打开,找到如 android:XXXXXXXXXXXXXXXX
字样,这就是你的设备 ID,注意保存。
输入设备 ID
导入好令牌文件以后,首次启动,将会看到如下字样。
1 | [*] INFO: ImportAuthenticator() <1> Converting .maFile into ASF format... |
这时输入你的设备 ID,连 android:
字样一起输入,回车。看到如下字样,表示你已经完成,以后启动就不再需要输入了,会自动登录。
1 | [*] INFO: ImportAuthenticator() <1> Successfully finished importing mobile authenticator! |
注意事项
注意:为了你的 steam 账号安全,切勿暴露你的令牌文件和设备 ID。拥有这些内容,将能任意变更你的账户。
为 Asf-ui 绑定域名
这里只演示用宝塔面板操作,请提前将域名解析到服务器。
宝塔面板–>网站–>添加站点
站点属性请看图:(也就是默认配置)
点击站点名打开设置,选择 SSL 的Let’s Encrypt 申请证书
点击站点名打开设置,选择反向代理,配置如图
现在就可以访问域名打开 WEB 界面。
用 Telegram 远程控制 ASF 挂卡
提供给有需求的人,要求主机上 python 版本至少为 3.6。
向 Telegram 申请 bot token
在 Telegram 里,搜索 @BotFather
机器人并启用。
发送以下命令:
- 创建机器人:
/newbot
- 设定 bot 名称:
ASF
(任取,可重复,这里只是个例子) - 设定 bot 用户名:
test_asf_bot
(任取,不可重复,这里只是个例子)
@BotFather
会发给你一串 token,形如 123456789:XXXXXX-XXXXXXXXXX
,注意保留。
申请 Chat ID
在 Telegram 里,搜索 @getidsbot
机器人并启用。
转发一条你自己的消息给 bot,会返回给你一串信息,里面包含你的 Chat ID 。
安装 telegram_bot_asf
请确保 python 版本正确
1 | git clone https://github.com/deluxghost/telegram-asf.git |
编辑 simple.config
,修改如下内容。
1 | [telegram] |
后台启动 bot
1 | screen -S asf-bot python3 simple.py simple.conf |
在 Telegram 中使用这个 bot
搜索刚刚你设定的 bot 用户名,并启用,你已经可以发送命令远程控制 ASF 了。这个机器人只有你能使用。
常见命令
帮助命令:help
开始命令:start
暂停命令:pause
继续命令:resume
查看挂卡状态命令:status
查看 asf 状态命令:stats
查看版本命令:version
激活 steam 密钥命令:redeem
更多命令,请参官方 WIKI。