Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/MHSanaei/3x-ui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-04-20Add SSRF protection (#4044)Sanaei
* Add SSRF protection for custom geo downloads Introduce SSRF-safe HTTP transport for custom geo operations by adding ssrfSafeTransport and isBlockedIP helpers. The transport resolves hosts and blocks loopback, private, link-local and unspecified addresses, returning ErrCustomGeoSSRFBlocked on violations. Update probeCustomGeoURLWithGET, probeCustomGeoURL and downloadToPathOnce to use the safe transport. Also add the new error ErrCustomGeoSSRFBlocked and necessary imports. Minor whitespace/formatting adjustments in subClashService.go, web/entity/entity.go and web/service/setting.go. * Add path traversal protection for custom geo Prevent path traversal when handling custom geo downloads by adding ErrCustomGeoPathTraversal and a validateDestPath() helper that ensures destination paths stay inside the bin folder. Call validateDestPath from downloadToPathOnce, Update and Delete paths and wrap errors appropriately. Reconstruct sanitized URLs in sanitizeURL to break taint propagation before use. Map the new path-traversal error to a user-facing i18n message in the controller. * fix
2026-04-19feat add clash yaml convert (#3916)zhuzn
* docs(agents): add AI agent guidance documentation * feat(sub): add Clash/Mihomo YAML subscription service Add SubClashService to convert subscription links to Clash/Mihomo YAML format for direct client compatibility. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * feat(sub): integrate Clash YAML endpoint into subscription system - Add Clash route handler in SUBController - Update BuildURLs to include Clash URL - Pass Clash settings through subscription pipeline Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * feat(web): add Clash settings to entity and service - Add SubClashEnable, SubClashPath, SubClashURI fields - Add getter methods for Clash configuration - Set default Clash path to /clash/ and enable by default Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * feat(ui): add Clash settings to subscription panels - Add Clash enable switch in general subscription settings - Add Clash path/URI configuration in formats panel - Display Clash QR code on subscription page - Rename JSON tab to "Formats" for clarity Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * feat(js): add Clash support to frontend models - Add subClashEnable, subClashPath, subClashURI to AllSetting - Generate and display Clash QR code on subscription page - Handle Clash URL in subscription data binding Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Sanaei <ho3ein.sanaei@gmail.com>
2026-01-27feat: more subscription information fields (#3701)Danil S.
* feat: more subscription information fields * fix: incorrect translation * feat: implement field for Happ custom routing rules
2025-10-21gofmtmhsanaei
2025-09-28feat: add ldap component (#3568)konstpic
* add ldap component * fix: fix russian comments, tls cert verify default true * feat: remove replaces go mod for local dev
2025-09-20docs: add comments for all functionsmhsanaei
2025-09-19go package correction v2mhsanaei
2025-09-19go package correctionmhsanaei
2025-09-18new: subJsonEnablemhsanaei
after this subEnable by default is true and subJsonEnable is false
2025-08-17minor changesmhsanaei
2025-06-17refactor: use `math.MaxUint16` when checking portShishkevich D.
2025-05-08chore: implement 2fa auth (#2968)Shishkevich D.
* chore: implement 2fa auth from #2786 * chore: format code * chore: replace two factor token input with qr-code * chore: requesting confirmation of setting/removing two-factor authentication otpauth library was taken from cdnjs * chore: revert changes in `ClipboardManager` don't need it. * chore: removing twoFactor prop in settings page * chore: remove `twoFactorQr` object in `mounted` function
2025-03-15feat: custom subscription title in panel (#2773)Ilya Afanasov
* feat: custom subscription title in panel * feat: added translations
2025-03-12Refactor: Use any instead of interface{}mhsanaei
2025-02-22feat(externalTrafficJob): External Traffic Inform (#2660)AAA
* Add Setting entity + GUI field in panel settings * Add a missing 'Traffic' in InformEnabale field * Add ExternalTrafficURL Post request call * Add translation + cleanup * Move options to General tab --------- Co-authored-by: root <root@vm3562019.stark-industries.solutions> Co-authored-by: root <root@vm3688062.stark-industries.solutions>
2025-02-04revert group management (#2656)Sanaei
* Revert "json post base path bug fixed (#2647)" This reverts commit 04cf250a547bb64265d256e7d15af7cea5ecfa67. * Revert "Group Management of Subscription Clients" * Revert "fix getSubGroupClients for enable/disable and edit clients." * Revert "Enhance database initialization in db.go (#2645)" This reverts commit 66fe84181b9c4e2f6c6be943a7f486b4308c32ff. * Revert "Add checkpoint handling in CloseDB function (#2646)" This reverts commit 4dd40f6f192e3f94f2ea4fe9e942e6663b5a1527. * Revert "Improved database model migration and added indexing (#2655)" This reverts commit b922d986d6783ce28d00ca948024dee44a11f29e.
2025-01-21Group Management of Subscription Clients (#2644)Ali Rahimi
* add group user with the same subscription id to all inbounds * code format compare * add await for reset client traffic * en language changed * added client traffic syncer job * handle exist email duplicate in sub group * multi reset and delete request for clients group * add client traffic syncer setting option * vi translate file updated * auto open qr-modal bug fixed
2024-10-17feat(tgbot): Add the option to change the telegram API server (#2584)MadrinX
2024-09-17update noise to noisesmhsanaei
+ type
2024-08-29New - Noisemhsanaei
freedom
2024-03-12[subJson] add mux and directMHSanaei
Co-Authored-By: Alireza Ahmadi <alireza7@gmail.com>
2024-03-11Some fixes and improvements (#1997)Hamidreza
* [refactor] api controller * [fix] access log path better to not hardcode the access log path, maybe some ppl dont want to use the default ./access.log * [fix] set select options from logs paths in xray settings * [update] .gitignore * [lint] all .go files * [update] use status code for jsonMsg and 401 to unauthorize * [update] handle response status code via axios * [fix] set correct value if log paths is set to 'none' we also use the default value for the paths if its set to none * [fix] iplimit - only warning access log if f2b is installed
2024-02-21[sub] json + fragmentMHSanaei
Co-Authored-By: Alireza Ahmadi <alireza7@gmail.com>
2024-01-03socks5 proxy option added to telegram bot settings (#1500)Saeid
* socks5 option added to telegram bot settings * update socks5 proxy settings translations
2024-01-02added Jalalian datepicker (shamsi) (#1460)Ali Rahimi
* added datepicker option in setting page jalalian datepicker component was added translate files for datepicker updated * dark mode bug fixed
2023-12-16Change port check (#1268)guard43ru
We can use same port on difference IP's.
2023-12-08customizable remark #1300Alireza Ahmadi
2023-12-08pagination and sub URI support #1300Alireza Ahmadi
2023-12-04remove unused structureMHSanaei
Co-Authored-By: Alireza Ahmadi <alireza7@gmail.com>
2023-12-04separate xray page #1286Alireza Ahmadi
2023-08-26Add encrypt subscription ON/OFF switchMHSanaei
Co-Authored-By: SudoSpace <79229394+sudospaes@users.noreply.github.com>
2023-08-26[sub] improve usage info in RemarkMHSanaei
Co-Authored-By: Alireza Ahmadi <alireza7@gmail.com>
2023-06-17new - tg Login Notification #584MHSanaei
2023-05-30add an option for webDomainHamidreza Ghavami
2023-05-22[feature] separate subscription serviceMHSanaei
Co-Authored-By: Alireza Ahmadi <alireza7@gmail.com>
2023-05-20Add tgLang optionHamidreza Ghavami
2023-04-25[feature] add login session timeoutMHSanaei
Co-Authored-By: Alireza Ahmadi <alireza7@gmail.com>
2023-04-21secret token thanks to @HarlyquinForestMHSanaei
2023-04-09alireza update packMHSanaei
Co-Authored-By: Alireza Ahmadi <alireza7@gmail.com>
2023-03-17alirezaMHSanaei
2023-02-093x-uiMHSanaei