diff --git a/backend/package.json b/backend/package.json index ecb825b..cc9f572 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,6 +1,6 @@ { "name": "sub-store", - "version": "2.14.251", + "version": "2.14.252", "description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.", "main": "src/main.js", "scripts": { diff --git a/backend/src/core/proxy-utils/producers/sing-box.js b/backend/src/core/proxy-utils/producers/sing-box.js index 50eb5c2..1164865 100644 --- a/backend/src/core/proxy-utils/producers/sing-box.js +++ b/backend/src/core/proxy-utils/producers/sing-box.js @@ -231,6 +231,10 @@ const sshParser = (proxy = {}) => { // https://wiki.metacubex.one/config/proxies/ssh // https://sing-box.sagernet.org/zh/configuration/outbound/ssh if (proxy['privateKey']) parsedProxy.private_key_path = proxy['privateKey']; + if (proxy['private-key']) + parsedProxy.private_key_path = proxy['private-key']; + if (proxy['private-key-passphrase']) + parsedProxy.private_key_passphrase = proxy['private-key-passphrase']; if (proxy['server-fingerprint']) { parsedProxy.host_key = [proxy['server-fingerprint']]; // https://manual.nssurge.com/policy/ssh.html @@ -240,6 +244,9 @@ const sshParser = (proxy = {}) => { proxy['server-fingerprint'].split(' ')[0], ]; } + if (proxy['host-key']) parsedProxy.host_key = proxy['host-key']; + if (proxy['host-key-algorithms']) + parsedProxy.host_key_algorithms = proxy['host-key-algorithms']; if (proxy['fast-open']) parsedProxy.udp_fragment = true; tfoParser(proxy, parsedProxy); return parsedProxy;