inbound-full.test.ts.snap 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617
  1. // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
  2. exports[`InboundSchema (full) fixtures > parses hysteria-v1-tls byte-stably 1`] = `
  3. {
  4. "down": 0,
  5. "enable": true,
  6. "expiryTime": 0,
  7. "id": 21,
  8. "listen": "",
  9. "port": 36715,
  10. "protocol": "hysteria",
  11. "remark": "gina-hysteria-v1",
  12. "settings": {
  13. "clients": [
  14. {
  15. "auth": "hyst-v1-auth-XYZ",
  16. "comment": "",
  17. "email": "[email protected]",
  18. "enable": true,
  19. "expiryTime": 0,
  20. "limitIp": 0,
  21. "reset": 0,
  22. "subId": "hy1-001",
  23. "tgId": 0,
  24. "totalGB": 0,
  25. },
  26. ],
  27. "version": 1,
  28. },
  29. "sniffing": {
  30. "destOverride": [
  31. "http",
  32. "tls",
  33. "quic",
  34. "fakedns",
  35. ],
  36. "domainsExcluded": [],
  37. "enabled": false,
  38. "ipsExcluded": [],
  39. "metadataOnly": false,
  40. "routeOnly": false,
  41. },
  42. "streamSettings": {
  43. "network": "tcp",
  44. "security": "tls",
  45. "tcpSettings": {
  46. "acceptProxyProtocol": false,
  47. },
  48. "tlsSettings": {
  49. "alpn": [
  50. "h3",
  51. ],
  52. "certificates": [
  53. {
  54. "buildChain": false,
  55. "certificateFile": "/etc/ssl/certs/hysteria.crt",
  56. "keyFile": "/etc/ssl/private/hysteria.key",
  57. "oneTimeLoading": false,
  58. "usage": "encipherment",
  59. },
  60. ],
  61. "cipherSuites": "",
  62. "disableSystemRoot": false,
  63. "echServerKeys": "",
  64. "enableSessionResumption": false,
  65. "maxVersion": "1.3",
  66. "minVersion": "1.2",
  67. "rejectUnknownSni": false,
  68. "serverName": "hysteria.example.test",
  69. "settings": {
  70. "echConfigList": "",
  71. "fingerprint": "chrome",
  72. "pinnedPeerCertSha256": [],
  73. },
  74. },
  75. },
  76. "tag": "inbound-hysteria-v1",
  77. "total": 0,
  78. "up": 0,
  79. }
  80. `;
  81. exports[`InboundSchema (full) fixtures > parses shadowsocks-tcp-2022 byte-stably 1`] = `
  82. {
  83. "down": 0,
  84. "enable": true,
  85. "expiryTime": 0,
  86. "id": 17,
  87. "listen": "",
  88. "port": 8388,
  89. "protocol": "shadowsocks",
  90. "remark": "frank-ss-tcp-2022",
  91. "settings": {
  92. "clients": [
  93. {
  94. "comment": "",
  95. "email": "[email protected]",
  96. "enable": true,
  97. "expiryTime": 0,
  98. "limitIp": 0,
  99. "method": "",
  100. "password": "dGVzdC1jbGllbnQtcGFzc3dvcmQtMQ==",
  101. "reset": 0,
  102. "subId": "ss-001",
  103. "tgId": 0,
  104. "totalGB": 0,
  105. },
  106. ],
  107. "ivCheck": false,
  108. "method": "2022-blake3-aes-256-gcm",
  109. "network": "tcp,udp",
  110. "password": "ZmFrZS1zZXJ2ZXItcGFzc3dvcmQtMDAwMQ==",
  111. },
  112. "sniffing": {
  113. "destOverride": [
  114. "http",
  115. "tls",
  116. "quic",
  117. "fakedns",
  118. ],
  119. "domainsExcluded": [],
  120. "enabled": true,
  121. "ipsExcluded": [],
  122. "metadataOnly": false,
  123. "routeOnly": false,
  124. },
  125. "streamSettings": {
  126. "network": "tcp",
  127. "security": "none",
  128. "tcpSettings": {
  129. "acceptProxyProtocol": false,
  130. "header": {
  131. "type": "none",
  132. },
  133. },
  134. },
  135. "tag": "inbound-ss-2022",
  136. "total": 0,
  137. "up": 0,
  138. }
  139. `;
  140. exports[`InboundSchema (full) fixtures > parses trojan-ws-tls byte-stably 1`] = `
  141. {
  142. "down": 0,
  143. "enable": true,
  144. "expiryTime": 0,
  145. "id": 13,
  146. "listen": "",
  147. "port": 443,
  148. "protocol": "trojan",
  149. "remark": "eve-trojan-ws-tls",
  150. "settings": {
  151. "clients": [
  152. {
  153. "comment": "",
  154. "email": "[email protected]",
  155. "enable": true,
  156. "expiryTime": 0,
  157. "limitIp": 0,
  158. "password": "trojan-test-pw-XYZ",
  159. "reset": 0,
  160. "subId": "trj-001",
  161. "tgId": 0,
  162. "totalGB": 0,
  163. },
  164. ],
  165. "fallbacks": [],
  166. },
  167. "sniffing": {
  168. "destOverride": [
  169. "http",
  170. "tls",
  171. "quic",
  172. "fakedns",
  173. ],
  174. "domainsExcluded": [],
  175. "enabled": true,
  176. "ipsExcluded": [],
  177. "metadataOnly": false,
  178. "routeOnly": false,
  179. },
  180. "streamSettings": {
  181. "network": "ws",
  182. "security": "tls",
  183. "tlsSettings": {
  184. "alpn": [
  185. "h2",
  186. "http/1.1",
  187. ],
  188. "certificates": [
  189. {
  190. "buildChain": false,
  191. "certificateFile": "/etc/ssl/certs/trojan.crt",
  192. "keyFile": "/etc/ssl/private/trojan.key",
  193. "oneTimeLoading": false,
  194. "usage": "encipherment",
  195. },
  196. ],
  197. "cipherSuites": "",
  198. "disableSystemRoot": false,
  199. "echServerKeys": "",
  200. "enableSessionResumption": false,
  201. "maxVersion": "1.3",
  202. "minVersion": "1.2",
  203. "rejectUnknownSni": false,
  204. "serverName": "trojan.example.test",
  205. "settings": {
  206. "echConfigList": "",
  207. "fingerprint": "chrome",
  208. "pinnedPeerCertSha256": [],
  209. },
  210. },
  211. "wsSettings": {
  212. "acceptProxyProtocol": false,
  213. "headers": {},
  214. "heartbeatPeriod": 0,
  215. "host": "trojan.example.test",
  216. "path": "/trojan",
  217. },
  218. },
  219. "tag": "inbound-trojan-ws",
  220. "total": 0,
  221. "up": 0,
  222. }
  223. `;
  224. exports[`InboundSchema (full) fixtures > parses vless-tcp-reality byte-stably 1`] = `
  225. {
  226. "down": 0,
  227. "enable": true,
  228. "expiryTime": 0,
  229. "id": 9,
  230. "listen": "",
  231. "port": 443,
  232. "protocol": "vless",
  233. "remark": "dave-vless-tcp-reality",
  234. "settings": {
  235. "clients": [
  236. {
  237. "comment": "",
  238. "email": "[email protected]",
  239. "enable": true,
  240. "expiryTime": 0,
  241. "flow": "xtls-rprx-vision",
  242. "id": "22222222-3333-4444-9555-666666666666",
  243. "limitIp": 0,
  244. "reset": 0,
  245. "subId": "vless-reality-001",
  246. "tgId": 0,
  247. "totalGB": 0,
  248. },
  249. ],
  250. "decryption": "none",
  251. "encryption": "none",
  252. "fallbacks": [],
  253. },
  254. "sniffing": {
  255. "destOverride": [
  256. "http",
  257. "tls",
  258. "quic",
  259. "fakedns",
  260. ],
  261. "domainsExcluded": [],
  262. "enabled": true,
  263. "ipsExcluded": [],
  264. "metadataOnly": false,
  265. "routeOnly": false,
  266. },
  267. "streamSettings": {
  268. "network": "tcp",
  269. "realitySettings": {
  270. "maxClientVer": "",
  271. "maxTimediff": 0,
  272. "minClientVer": "",
  273. "mldsa65Seed": "",
  274. "privateKey": "wM-2_oQRWXyLcXhV5q1ifTBcS3K8mYR3wQI3PqGFK1k",
  275. "serverNames": [
  276. "yahoo.com",
  277. "www.yahoo.com",
  278. ],
  279. "settings": {
  280. "fingerprint": "chrome",
  281. "mldsa65Verify": "",
  282. "publicKey": "Tx5yj1bRcOPHkdvT2pIAQ2zh0gQ8m4OPdnzqXJxxV3o",
  283. "serverName": "",
  284. "spiderX": "/",
  285. },
  286. "shortIds": [
  287. "a3f1",
  288. "b8c2",
  289. ],
  290. "show": false,
  291. "target": "yahoo.com:443",
  292. "xver": 0,
  293. },
  294. "security": "reality",
  295. "tcpSettings": {
  296. "acceptProxyProtocol": false,
  297. "header": {
  298. "type": "none",
  299. },
  300. },
  301. },
  302. "tag": "inbound-vless-reality",
  303. "total": 0,
  304. "up": 0,
  305. }
  306. `;
  307. exports[`InboundSchema (full) fixtures > parses vless-ws-tls byte-stably 1`] = `
  308. {
  309. "down": 0,
  310. "enable": true,
  311. "expiryTime": 0,
  312. "id": 42,
  313. "listen": "",
  314. "port": 443,
  315. "protocol": "vless",
  316. "remark": "alice-vless-ws-tls",
  317. "settings": {
  318. "clients": [
  319. {
  320. "comment": "",
  321. "email": "[email protected]",
  322. "enable": true,
  323. "expiryTime": 0,
  324. "flow": "",
  325. "id": "8c14d6f7-2e3b-4a91-9d24-3f7a6b8c1e02",
  326. "limitIp": 0,
  327. "reset": 0,
  328. "subId": "abc123def",
  329. "tgId": 0,
  330. "totalGB": 0,
  331. },
  332. ],
  333. "decryption": "none",
  334. "encryption": "none",
  335. "fallbacks": [],
  336. },
  337. "sniffing": {
  338. "destOverride": [
  339. "http",
  340. "tls",
  341. "quic",
  342. "fakedns",
  343. ],
  344. "domainsExcluded": [],
  345. "enabled": true,
  346. "ipsExcluded": [],
  347. "metadataOnly": false,
  348. "routeOnly": false,
  349. },
  350. "streamSettings": {
  351. "network": "ws",
  352. "security": "tls",
  353. "tlsSettings": {
  354. "alpn": [
  355. "h2",
  356. "http/1.1",
  357. ],
  358. "certificates": [
  359. {
  360. "buildChain": false,
  361. "certificateFile": "/etc/ssl/certs/cdn.example.test.crt",
  362. "keyFile": "/etc/ssl/private/cdn.example.test.key",
  363. "oneTimeLoading": false,
  364. "usage": "encipherment",
  365. },
  366. ],
  367. "cipherSuites": "",
  368. "disableSystemRoot": false,
  369. "echServerKeys": "",
  370. "enableSessionResumption": false,
  371. "maxVersion": "1.3",
  372. "minVersion": "1.2",
  373. "rejectUnknownSni": false,
  374. "serverName": "cdn.example.test",
  375. "settings": {
  376. "echConfigList": "",
  377. "fingerprint": "chrome",
  378. "pinnedPeerCertSha256": [],
  379. },
  380. },
  381. "wsSettings": {
  382. "acceptProxyProtocol": false,
  383. "headers": {},
  384. "heartbeatPeriod": 0,
  385. "host": "cdn.example.test",
  386. "path": "/ws",
  387. },
  388. },
  389. "tag": "inbound-vless-1",
  390. "total": 0,
  391. "up": 0,
  392. }
  393. `;
  394. exports[`InboundSchema (full) fixtures > parses vless-ws-tls-pinned byte-stably 1`] = `
  395. {
  396. "down": 0,
  397. "enable": true,
  398. "expiryTime": 0,
  399. "id": 43,
  400. "listen": "",
  401. "port": 443,
  402. "protocol": "vless",
  403. "remark": "alice-vless-ws-tls-pinned",
  404. "settings": {
  405. "clients": [
  406. {
  407. "comment": "",
  408. "email": "[email protected]",
  409. "enable": true,
  410. "expiryTime": 0,
  411. "flow": "",
  412. "id": "8c14d6f7-2e3b-4a91-9d24-3f7a6b8c1e02",
  413. "limitIp": 0,
  414. "reset": 0,
  415. "subId": "abc123def",
  416. "tgId": 0,
  417. "totalGB": 0,
  418. },
  419. ],
  420. "decryption": "none",
  421. "encryption": "none",
  422. "fallbacks": [],
  423. },
  424. "sniffing": {
  425. "destOverride": [
  426. "http",
  427. "tls",
  428. "quic",
  429. "fakedns",
  430. ],
  431. "domainsExcluded": [],
  432. "enabled": true,
  433. "ipsExcluded": [],
  434. "metadataOnly": false,
  435. "routeOnly": false,
  436. },
  437. "streamSettings": {
  438. "network": "ws",
  439. "security": "tls",
  440. "tlsSettings": {
  441. "alpn": [
  442. "h2",
  443. "http/1.1",
  444. ],
  445. "certificates": [
  446. {
  447. "buildChain": false,
  448. "certificateFile": "/etc/ssl/certs/cdn.example.test.crt",
  449. "keyFile": "/etc/ssl/private/cdn.example.test.key",
  450. "oneTimeLoading": false,
  451. "usage": "encipherment",
  452. },
  453. ],
  454. "cipherSuites": "",
  455. "disableSystemRoot": false,
  456. "echServerKeys": "",
  457. "enableSessionResumption": false,
  458. "maxVersion": "1.3",
  459. "minVersion": "1.2",
  460. "rejectUnknownSni": false,
  461. "serverName": "cdn.example.test",
  462. "settings": {
  463. "echConfigList": "",
  464. "fingerprint": "chrome",
  465. "pinnedPeerCertSha256": [
  466. "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=",
  467. "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB=",
  468. ],
  469. },
  470. },
  471. "wsSettings": {
  472. "acceptProxyProtocol": false,
  473. "headers": {},
  474. "heartbeatPeriod": 0,
  475. "host": "cdn.example.test",
  476. "path": "/ws",
  477. },
  478. },
  479. "tag": "inbound-vless-pinned-1",
  480. "total": 0,
  481. "up": 0,
  482. }
  483. `;
  484. exports[`InboundSchema (full) fixtures > parses vmess-tcp-tls byte-stably 1`] = `
  485. {
  486. "down": 0,
  487. "enable": true,
  488. "expiryTime": 0,
  489. "id": 7,
  490. "listen": "",
  491. "port": 8443,
  492. "protocol": "vmess",
  493. "remark": "carol-vmess-tcp-tls",
  494. "settings": {
  495. "clients": [
  496. {
  497. "comment": "",
  498. "email": "[email protected]",
  499. "enable": true,
  500. "expiryTime": 0,
  501. "id": "11111111-2222-4333-8444-555555555555",
  502. "limitIp": 0,
  503. "reset": 0,
  504. "security": "auto",
  505. "subId": "vmess-001",
  506. "tgId": 0,
  507. "totalGB": 0,
  508. },
  509. ],
  510. },
  511. "sniffing": {
  512. "destOverride": [
  513. "http",
  514. "tls",
  515. "quic",
  516. "fakedns",
  517. ],
  518. "domainsExcluded": [],
  519. "enabled": true,
  520. "ipsExcluded": [],
  521. "metadataOnly": false,
  522. "routeOnly": false,
  523. },
  524. "streamSettings": {
  525. "network": "tcp",
  526. "security": "tls",
  527. "tcpSettings": {
  528. "acceptProxyProtocol": false,
  529. "header": {
  530. "type": "none",
  531. },
  532. },
  533. "tlsSettings": {
  534. "alpn": [
  535. "h2",
  536. "http/1.1",
  537. ],
  538. "certificates": [
  539. {
  540. "buildChain": false,
  541. "certificateFile": "/etc/ssl/certs/vmess.crt",
  542. "keyFile": "/etc/ssl/private/vmess.key",
  543. "oneTimeLoading": false,
  544. "usage": "encipherment",
  545. },
  546. ],
  547. "cipherSuites": "",
  548. "disableSystemRoot": false,
  549. "echServerKeys": "",
  550. "enableSessionResumption": false,
  551. "maxVersion": "1.3",
  552. "minVersion": "1.2",
  553. "rejectUnknownSni": false,
  554. "serverName": "vmess.example.test",
  555. "settings": {
  556. "echConfigList": "",
  557. "fingerprint": "chrome",
  558. "pinnedPeerCertSha256": [],
  559. },
  560. },
  561. },
  562. "tag": "inbound-vmess-1",
  563. "total": 0,
  564. "up": 0,
  565. }
  566. `;
  567. exports[`InboundSchema (full) fixtures > parses wireguard-server byte-stably 1`] = `
  568. {
  569. "down": 0,
  570. "enable": true,
  571. "expiryTime": 0,
  572. "id": 25,
  573. "listen": "",
  574. "port": 51820,
  575. "protocol": "wireguard",
  576. "remark": "wg-server",
  577. "settings": {
  578. "mtu": 1420,
  579. "noKernelTun": false,
  580. "peers": [
  581. {
  582. "allowedIPs": [
  583. "10.0.0.2/32",
  584. ],
  585. "keepAlive": 25,
  586. "privateKey": "QGVlb2dXc1ZTWGw0ZXBzZndsWmtMaUM5MUlNYjBHWFdYbz0=",
  587. "publicKey": "DGSYIcEKAUkA7HhzGSjxLZuV67BR3LeyU0BMLJzNVHQ=",
  588. },
  589. ],
  590. "secretKey": "iJ2cBkrSGqRwIfYIDIxk7hr5RXfdR93MfJUL7yqkkH8=",
  591. },
  592. "sniffing": {
  593. "destOverride": [
  594. "http",
  595. "tls",
  596. "quic",
  597. "fakedns",
  598. ],
  599. "domainsExcluded": [],
  600. "enabled": false,
  601. "ipsExcluded": [],
  602. "metadataOnly": false,
  603. "routeOnly": false,
  604. },
  605. "tag": "inbound-wg-1",
  606. "total": 0,
  607. "up": 0,
  608. }
  609. `;