在此我只讲如何用服务器搭建,因为自己电脑相对耗电,也推荐使用服务器挂载。想要用自己电脑的请自行baidu。
(1) 下载: 访问Releases · JustArchiNET/ArchiSteamFarm · GitHub。如果你想下最新版本可以下pre-release,但可能没有正式版稳定;推荐下载Latest版本。如果你想在自己电脑上跑找到相应windows和mac版本,这里只讲服务器安装。找到ASF-linux-x64.zip,右键复制链接。推荐执行以下代码:
1 2 3 4 5 |
cd mkdir /asf/ cd /asf/ wget https://xxxxxxx unzip ASF-linux-x64.zip |
(2) 生成用户配置文件两种办法
1. ASF web config (justarchinet.github.io)
2. (推荐)后台简单更改
vim /asf/config/用户名(随意).json
1 2 3 4 5 |
{ "Enabled": true, "SteamLogin": "账号", "SteamPassword": "密码" } |
说明: Enabled 为是否开机asf就自动开始挂卡该账号
(3)运行
./ArchiSteamFarm-Service.sh
但是此时开启没有UI界面,你可以先输入二步验证开始挂卡,并进行测试是否有问题(大概率您的服务器无法访问steamcommunity,后续讲解如何操作)
(4)配置ASF IPC UI界面
参考官方网站两种方法IPC zh CN · JustArchiNET/ArchiSteamFarm Wiki · GitHub
1. 个人使用了nginx 代理,并且只设置了443, 具体nginx配置见官网,我是直接复制并改了 ssl 文件位置,详情设置可以参考我的nginx服务器配置参考博客。比如最终我的访问网站为https://asf.pancake2021.work
2. 另外一种自带方法
vim /asf/config/IPC.config
1 2 3 4 5 6 7 8 9 |
{ "Kestrel": { "Endpoints": { "HTTP": { "Url": "127.0.0.1:1242" } } } } |
之后只需要去开启阿里云安全组1242端口,当然端口号你可以随意设置。推荐只用nginx方法。
(5)设置IPC密码
vim /asf/config/ASF.json
1 2 3 4 |
{ "Headless": false, "IPCPassword": "密码" } |
推荐Headless为false,更安全,具体原因可以设置好后进入UI设置查看。
(6)设置完成,可以kill或ctrl+c刚才进程,重启。
进入 http://域名:1242 或者 https://域名 看是否正常运行
(7) 因为中国github 和steamcommunity 访问会出问题需要配置代理才能正常使用asf的一些功能
原作者使用caddy方法。本文为nginx配置方法,因为caddy和nginx不能同时在443和80端口运行,特此做如下讲解。如果你服务器使用的是caddy可以直接用作者方法。
linux 配置方法:
下载一下三个文件,放入/ca/ 文件夹下
steamcommunity.key
steamcommunity.crt
steamcommunityCA.pem
导入根证书 steamcommunityCA.pem
1 2 |
cp /ca/steamcommunityCA.pem /etc/pki/ca-trust/source/anchors /bin/update-ca-trust |
(7.5)寻找github与steamcommunity服务器
自己电脑上下载UsbEAm Hosts Editor
找到steam社区 和 github 分别检测延迟,可以寻找几个最好的记下来
(7.9)配置nginx
最终在http下加入如下代码,根据自己需要更改
其中两个upstream中可插入7.5中找到的对应的github和steamcommunity的ip地址,注意要加:443
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
# steamcommunity 代理服务器地址 upstream steamcommunityServer { server 23.32.241.160:443; } # github 代理服务器地址 upstream githubServer { server 15.164.81.167:443; } # github 服务器代理设置 server { listen 443 ssl; server_name github.com; server_name www.github.com; ssl_certificate /ca/steamcommunity.crt;#下边签发的证书 ssl_certificate_key /ca/steamcommunity.key; location / { proxy_pass https://githubServer/; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real_IP $remote_addr; proxy_set_header User-Agent $http_user_agent; proxy_set_header Accept-Encoding ''; proxy_buffering off; } } # steamcommunity 服务器代理设置 server { listen 443 ssl; server_name steamcommunity.com; server_name www.steamcommunity.com; ssl_certificate /ca/steamcommunity.crt;#下边签发的证书 ssl_certificate_key /ca/steamcommunity.key; location / { proxy_pass https://steamcommunityServer/; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real_IP $remote_addr; proxy_set_header User-Agent $http_user_agent; proxy_set_header Accept-Encoding ''; proxy_buffering off; } } # asf 挂卡网站配置 server { listen *:443 ssl; server_name asf.pancake2021.work; ssl_certificate /ca/asf.pem; ssl_certificate_key /ca/asf.key; location ~* /Api/NLog { proxy_pass http://127.0.0.1:1242; # 只需在您需要覆盖默认 Host 时启用 # proxy_set_header Host 127.0.0.1; # 代理 ASF 请求时,应该始终指定 X- 前缀的 HTTP 头 # 这对正确鉴别源 IP 至关重要,使 ASF 能够封禁真正的攻击者而非您的 Nginx 服务器 # 指定这些头后,ASF 能正确解析发送请求用户的 IP 地址 - 使 Nginx 真正成为反向代理 # 如果不这样设置,ASF 会认为您的 Nginx 是客户端 - 此时 Nginx 只是一个普通的代理程序 # 如果您无法在同一台机器上同时运行 Nginx 与 ASF,则应该额外设置正确的 KnownNetworks proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $host:$server_port; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Real-IP $remote_addr; # 我们添加了这 3 个额外的选项用于 WebSockets 代理,详见 https://nginx.org/en/docs/http/websocket.html proxy_http_version 1.1; proxy_set_header Connection "Upgrade"; proxy_set_header Upgrade $http_upgrade; } location / { proxy_pass http://127.0.0.1:1242; # 只需在您需要覆盖默认 Host 时启用 # proxy_set_header Host 127.0.0.1; # 代理 ASF 请求时,应该始终指定 X- 前缀的 HTTP 头 # 这对正确鉴别源 IP 至关重要,使 ASF 能够封禁真正的攻击者而非您的 Nginx 服务器 # 指定这些头后,ASF 能正确解析发送请求用户的 IP 地址 - 使 Nginx 真正成为反向代理 # 如果不这样设置,ASF 会认为您的 Nginx 是客户端 - 此时 Nginx 只是一个普通的代理程序 # 如果您无法在同一台机器上同时运行 Nginx 与 ASF,则应该额外设置正确的 KnownNetworks proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $host:$server_port; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Real-IP $remote_addr; } } |
(8)配置host
vim /etc/hosts
1 2 3 4 |
127.0.0.1 github.com 127.0.0.1 www.github.com 127.0.0.1 steamcommunity.com 127.0.0.1 www.steamcommunity.com |
至此全部配置完成
(9)设置service
最简单配置如下
vim /lib/systemd/system/asf.service
1 2 3 4 5 6 7 8 9 |
[Unit] Description=steam asf After=network.target remote-fs.target nss-lookup.target [Service] ExecStart=/asf/ArchiSteamFarm [Install] WantedBy=multi-user.target |
systemctl enable asf
systemctl restart asf
(10)asf现有bug须知
1. 用systemctl启动的asf在UI截面左上角点重启实则无法重启,可能是因为service配置问题,暂时不知
2. /asf文件夹下不要放别的文件,可能asf一更新文件夹下其他东西就没了
(11)现在你可以去探索asf里的功能了,设置里可以点每个设置选项的问号教你具体作用。
希望这篇文章对你有帮助