mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-11-14 17:15:24 +03:00
feat(tls): add a dynamic DoH helper for echConfigList, with CDN guidance (#6869)
echConfigList already accepted Xray's dynamic form, target domain + DoH URL, but nothing in the inbound or host forms explained or built it. A helper now builds that value from presets or a custom domain and resolver, accepts only the schemes Xray dials (https, h2c, udp; scheme case normalised), warns that a key generated locally does not work behind a CDN, and asks before overwriting local ECH keys. The helper's controls carry accessible labels, and the resolver list holds only identified public resolvers.
This commit is contained in:
@@ -475,6 +475,36 @@
|
||||
"form": {
|
||||
"echSockopt": "ECH Sockopt",
|
||||
"echSockoptTip": "Tùy chọn socket cho kết nối mà Xray dùng để lấy danh sách cấu hình ECH (ví dụ định tuyến truy vấn qua một outbound dialerProxy). Để tắt để dùng giá trị mặc định.",
|
||||
"echCdnWarningTitle": "Khóa ECH tạo cục bộ chỉ dùng được cho kết nối trực tiếp",
|
||||
"echCdnWarningBody": "Cặp khóa tạo bằng «Get New ECH Cert» chỉ hợp lệ khi máy khách kết nối thẳng tới VPS này. Nếu inbound được proxy qua Cloudflare CDN (VLESS + xhttp/WS sau đám mây màu cam), Cloudflare kết thúc TLS lớp ngoài bằng khóa ECH của chính nó và luân chuyển chúng, nên khóa cục bộ luôn thất bại khi bắt tay. Hãy dùng trợ lý ECH động thay thế.",
|
||||
"echDynamicTitle": "ECH động Cloudflare (hoạt động sau đám mây màu cam)",
|
||||
"echPresetLabel": "Tổ hợp có sẵn",
|
||||
"echPresetOtherDomains": "Miền đích ECH khác",
|
||||
"echPresetAdvanced": "Tổ hợp tùy chỉnh…",
|
||||
"echDynamicIntro": "Điền danh sách cấu hình ECH bằng một truy vấn động ở phía máy khách (miền đích + trình phân giải DoH). Mỗi lần kết nối, máy khách hỏi trình phân giải bản ghi HTTPS của miền, nên luôn thấy khóa ECH hiện hành — kể cả khóa đã luân chuyển của Cloudflare.",
|
||||
"echDynamicDomain": "Miền đích ECH",
|
||||
"echDynamicDoh": "Trình phân giải DoH",
|
||||
"echDomainAuto": "Tự động — phân giải bản ghi ECH cho SNI của nút",
|
||||
"echDynamicApply": "Áp dụng vào danh sách cấu hình ECH",
|
||||
"echDynamicCustom": "URL tùy chỉnh…",
|
||||
"echDynamicInvalid": "Hãy nhập một miền hợp lệ và URL trình phân giải (https, h2c hoặc udp) để tạo giá trị.",
|
||||
"echDynamicUnsupportedScheme": "Xray chỉ phân giải cấu hình ECH qua https://, h2c:// hoặc udp://. Điểm cuối này sẽ không bao giờ phản hồi.",
|
||||
"echDynamicPlaceholder": "cloudflare-ech.com+https://dns.alidns.com/dns-query",
|
||||
"echDynamicOverwriteTitle": "Inbound này có cặp khóa ECH tạo cục bộ",
|
||||
"echDynamicOverwriteBody": "Sau một CDN, cặp khóa đó không bao giờ được dùng: CDN là bên kết thúc bắt tay TLS. Áp dụng giá trị động sẽ thay thế danh sách cấu hình ECH và xóa khóa ECH cục bộ.",
|
||||
"echDynamicOverwriteConfirm": "Thay thế và xóa khóa cục bộ",
|
||||
"echExistingNotDynamic": "Danh sách cấu hình ECH này không ở dạng động; điền vào sẽ thay thế những gì bạn đã đặt thủ công.",
|
||||
"echDohGroup": {
|
||||
"china": "Trung Quốc đại lục (truy cập được từ sau GFW)",
|
||||
"global": "Toàn cầu",
|
||||
"europe": "Châu Âu",
|
||||
"udp": "DNS thường (udp://)"
|
||||
},
|
||||
"echRecommended": "khuyến nghị",
|
||||
"echMainlandAdvisory": "Trình phân giải trong Trung Quốc đại lục cần một miền đích có bản ghi HTTPS mang ECH; hãy tự kiểm tra cặp này trước khi lưu.",
|
||||
"echConfigList": "Danh sách cấu hình ECH",
|
||||
"echConfigListHint": "Được gửi tới máy khách trong liên kết chia sẻ và gói đăng ký. Chấp nhận ECHConfigList cục bộ (từ nút bên dưới) hoặc dạng động miền+URL DoH.",
|
||||
"echKeyHint": "Chỉ dành cho kết nối trực tiếp — để trống khi inbound nằm sau CDN.",
|
||||
"curvePreferences": "Ưu tiên đường cong",
|
||||
"curvePreferencesTip": "Giới hạn các đường cong trao đổi khóa TLS mà máy chủ cung cấp, theo thứ tự ưu tiên (ví dụ X25519MLKEM768, X25519). Để trống để dùng giá trị mặc định của Xray-core.",
|
||||
"masterKeyLog": "Nhật ký khóa chính",
|
||||
@@ -632,7 +662,6 @@
|
||||
"usageOption": "Tùy chọn sử dụng",
|
||||
"buildChain": "Tạo chuỗi",
|
||||
"echKey": "ECH key",
|
||||
"echConfig": "Cấu hình ECH",
|
||||
"pinnedPeerCertSha256": "SHA-256 chứng chỉ peer đã ghim",
|
||||
"pinnedPeerCertSha256Tip": "Hash SHA-256 của chứng chỉ peer dưới dạng chuỗi thập lục phân (vd. e8e2d3…), phân tách bằng dấu phẩy. Chỉ panel — không ghi vào cấu hình xray máy chủ, nhưng được đưa vào liên kết chia sẻ để client có thể ghim chứng chỉ.",
|
||||
"pinnedPeerCertSha256Placeholder": "hash thập lục phân, phân tách bằng dấu phẩy",
|
||||
@@ -2361,7 +2390,6 @@
|
||||
"pins": "SHA-256 chứng chỉ đã ghim",
|
||||
"verifyPeerCertByName": "Xác minh chứng chỉ peer theo tên",
|
||||
"allowInsecure": "Cho phép không an toàn",
|
||||
"echConfigList": "Danh sách cấu hình ECH",
|
||||
"muxParams": "Mux",
|
||||
"sockoptParams": "Sockopt",
|
||||
"finalMask": "Final Mask",
|
||||
|
||||
Reference in New Issue
Block a user