Xray-script icon indicating copy to clipboard operation
Xray-script copied to clipboard

建议:使用 acme.sh 申请 SSL 证书时 默认选择 Let's Encrypt 而非 ZeroSSL

Open KevinMX opened this issue 1 year ago • 0 comments

Fix: https://github.com/XTLS/Xray-core/issues/491 https://github.com/XTLS/Xray-core/discussions/562

相关问题已在斐讯 K2P (MT7621, Padavan/ImmortalWrt/Lean lede),竞斗云/G-Dock/P&W R619AC (IPQ4019, ImmortalWrt/Lean lede) 成功复现,服务器端为WS+TLS,测试了下别人的 TCP+XTLS 节点也有同样问题,如果使用 ZeroSSL 签发的证书,可能必须打开 Allow Insecure,否则 CPU 占用很可能会卡死 100% 且此时无法正常上网。更改为 Let's Encrypt 证书后问题解决。MT7621 平台似乎 100% 复现,ipq40xx 似乎有时没问题(目前硬件不在手上,无法测试)。

暂时不清楚问题具体原因,个人怀疑可能是部分固件没有解决好 CA 的问题,无法正常使用 ZeroSSL 签发的证书。在下对 SSL/TLS 工作原理了解不多,这方面也只是猜测。

我目前的解决方法(服务端):

sudo -i
export DOMAIN=your.domain
cd ~/.acme.sh
./acme.sh --set-default-ca --server letsencrypt
./acme.sh --issue -d $DOMAIN --keylength ec-256 --standalone --force
./acme.sh --install-cert -d $DOMAIN --ecc \
--key-file /usr/local/nginx/certs/$DOMAIN.key \
--fullchain-file /usr/local/nginx/certs/$DOMAIN.cer \
--reloadcmd "systemctl restart nginx xray"

这个问题困扰了我很久,以前一直以为是透明代理回环了,没想到是 CA 的问题。 建议考虑默认使用 Let's Encrypt 而非 ZeroSSL,或者,提供一个切换选项也行。

2022/08/16 Update: 使用 acme.sh 自带的 --install-cert 替代 ln 操作。See acme.sh

Maybe off-topic: @MeIsReallyBa @chongshengB 在加入了 SSR-Plus+ 的 K2P Padavan 固件也能复现这一问题,两位怎么看。(目前仅测试 4.4 内核新固件下能解决这一问题,老版本的也有同样问题但不清楚是否能通过换 CA 解决)

KevinMX avatar Jul 20 '22 05:07 KevinMX