steamcommunity 302后端使用caddy,在生成所有配置文件后可直接迁移到Linux/Macos环境下使用
1.首先要在Windows环境 / Wine下 运行 steamcommunity 302 并在设置里打勾需要开启的功能,然后正常启动服务
2.前往caddy/release页下载caddy对应系统版本 (下载tar.gz/zip的压缩包格式的)
https://github.com/caddyserver/caddy/releases/tag/v2.6.4
下载后解压得到caddy
2.编辑 steamcommunity_302.caddy.json
批量替换,将端口替换为443
注意:此处端口7119为随机生成,全局进行批量替换为443即可
3.将302目录下的文件与caddy一同拷贝到Linux/Macos (一共是6个文件)
steamcommunityCA.pem
steamcommunityCA.key
steamcommunity.key
steamcommunity.crt
steamcommunity_302.caddy.json
caddy
记得hosts也要复制!
hosts文件里的对应条目,均为#S302结尾
4.导入根证书 steamcommunityCA.pem
由于不同发行版导入方式不同,这里仅给出参考方法,应该都需要root权限
Centos:cp steamcommunityCA.pem /etc/pki/ca-trust/source/anchors/steamcommunityCA
.crt
运行/bin/update-ca-trust
Ubuntu:cp steamcommunityCA.pem /usr/local/share/ca-certificates/steamcommunityCA.crt
运行update-ca-certificates
其他: 由于一些证书策略变动,若以上步骤导入后依然出现证书错误,则需要使用nss进行导入
安装nss包之后使用certutilcertutil -A -d sql:~/.pki/nssdb -n "Steamcommunity302" -t C,, -i "steamcommunityCA.pem"
certutil -A -d sql:~/.var/app/com.valvesoftware.Steam/.pki/nssdb -n "Steamcommunity302" -t C,, -i "steamcommunityCA.pem"
Macos:
https://www.cnblogs.com/reachos/p/12201389.html
5.文件到位并写入对应hosts后,运行
#赋予caddy执行权限chmod +x caddy
#启动./caddy run --config steamcommunity_302.caddy.json --adapter caddyfile
最后一步怎么运行?
MACOS下
没区别呀.macos进终端后运行.运行参数一样的.文件别下错就OK
chmod: caddy: No such file or directory
你得先cd到caddy的目录再执行
2024/11/06 17:50:48.435 INFO using provided configuration {“config_file”: “steamcommunity_302.caddy.json”, “config_adapter”: “caddyfile”}
run: adapting config using caddyfile: parsing caddyfile tokens for ‘reverse_proxy’: steamcommunity_302.caddy.json:25 – Error during parsing: unrecognized subdirective dynamic
run: adapting config using caddyfile: parsing caddyfile tokens for ‘reverse_proxy’: steamcommunity_302.caddy.json:25 – Error during parsing: unrecognized subdirective dynamic
25行附近有错误,自己排查不用发上来,注意caddy版本要下载文章顶部指定的
大佬大佬,我做了一个Ubuntu连创意工坊的教程想发布在B站,用的是大佬的302和caddy,请求大佬批准,目前视频刚刚投稿BV1qUSyYQEJT,如果不可以的话也没关系我会立刻删除。
🆗,注明出处就OK
视频里和简介都标明了是大佬您的作品
抱歉大佬,我发的视频剪接被屏蔽了,我也是才发现,现在已经补上了
启动时出现
2024/11/02 09:11:55.366 INFO using config from file {“file”: “steamcommunity_302.caddy.json”}
2024/11/02 09:11:55.400 INFO adapted config to JSON {“adapter”: “caddyfile”}
2024/11/02 09:11:55.400 WARN Caddyfile input is not formatted; run ‘caddy fmt –overwrite’ to fix inconsistencies {“adapter”: “caddyfile”, “file”: “steamcommunity_302.caddy.json”, “line”: 2}
2024/11/02 09:11:55.412 WARN admin admin endpoint disabled
2024/11/02 09:11:55.413 INFO tls.cache.maintenance started background certificate maintenance {“cache”: “0xc00059a780”}
2024/11/02 09:11:55.413 INFO tls.cache.maintenance stopped background certificate maintenance {“cache”: “0xc00059a780”}
Error: loading initial config: loading new config: loading http app module: provision http: getting tls app: loading tls app module: provision tls: provisioning automation policy 1: on-demand TLS cannot be enabled without a permission module to prevent abuse; please refer to documentation for details
看不出啥毛病,又看着像是日志不完整的
root权限运行了?
apt安装了caddy后用sudo运行的
完整日志,因为篇幅限制分成了几段
没指定参数?或者版本不兼容配置文件?
用对应的版本直接文件丢相同目录下.别apt装最新的
解决了,这玩意竟然不支持最新的2.8.4
caddy一直在更新呢.关键的配置参数一变动就不兼容了
我启动程序之后parsec立刻404,跟没有网络一样,但是其他没问题,hosts检查过了和windows的一样,都是复制过去的,不知道那里出问题,也没报错
浏览器访问正常吗?
正常的话不排除Linux版本客户端不吃系统根证书
除了改了hosts的全部正常,用的Ubuntu22.04
我在大多数时候在Linux下都无法访问Discord,具体表现为卡在“你知道吗”屏幕。
相关日志:
10月 03 14:29:38 nphuracm-Arle-A s302.run.sh[936]: {“level”:”info”,”ts”:1727936978.4673142,”logger”:”http.handlers.reverse_proxy.health_checker.active”,”msg”:”HTTP request fai
led”,”host”:”162.159.128.233:443″,”error”:”Get \”https://162.159.128.233:443/cdn-cgi/trace\”: net/http: request canceled (Client.Timeout exceeded while awaiting headers)”}
在Windows下可以正常访问。如何解决该问题?
等他自己重试或者网页版呢
补充:
Firefox的网络监视器显示发送了许多到wss://gateway.discord.gg/?encoding=json&v=9&compress=zlib-stream的GET请求,但无一收到回复。
gateway是wss.得点进去详细才看得到收发的数据.外面应该不显示数据总尺寸
在无法连接时,这些请求都没有数据(消息头、Cookie、载荷、回应)传输。 相关日志:10月 13 13:00:11 nphuracm-Arle-A s302.run.sh[877]: {“… 阅读更多 »
gateway估计又访问量大被ban了
那么这个问题是只能等解决吗,还是可以自主采用手段避开?
配置文件里*.gateway.gg下几个IP.自己看看哪个通只留通的试试,还不行估计只能等恢复了
24/10/19,Linux下依旧无法连接。
但是处于某种原因,相同网络环境和硬件下,使用Windows却可以正常连接。