52 Commits

Author SHA1 Message Date
Toby Chui
015889851a Optimized UX and code structure
+ Added automatic self-sign certificate sniffing
+ Moved all constant into def.go
+ Added auto restart on port change when proxy server is running
+ Optimized slow search geoIP resolver by introducing new cache mechanism
+ Updated default incoming port to HTTPS instead of HTTP
2024-11-24 11:38:01 +08:00
Toby Chui
c5170bcb94 Refactorized main entry function
- Moved constants to def.go
- Added acme close function (not used for now)
- Added robots.txt to prevent webmin panel being scanned by search engine
2024-11-19 20:30:36 +08:00
Toby Chui
634e9c9855 v3.1.3 init commit
- Fixed #378
- Added wip dark theme
- Fixed in code typo
- Fixed int conversion bug in some DNS challenge supplier
2024-11-08 22:24:07 +08:00
Toby Chui
f877bf9eda Update reverseproxy.go
Fixed typo
2024-11-03 09:31:24 +08:00
Toby Chui
363b9b6d94
Merge branch 'main' into v3.1.2 2024-11-02 15:26:41 +08:00
Toby Chui
f98e04a9fc Fixed #318
- Added support for automatic X-Remote-User header when basic auth is enabled
- Moved header logic to rewrite module (new module)
- Added default site automatic fix for URL missing http:// or https:// prefix
2024-10-26 22:21:49 +08:00
Ikko Eltociear Ashimine
00bfa262cb
docs: update reverseproxy.go
Defination -> Definition
2024-10-26 18:46:42 +09:00
Toby Chui
5c56da1180 Added basic oauth module structure (wip)
- Added struct for oauth
- Added interception handler for Zoraxy SSO
- Added user structure for SSO
2024-09-12 10:55:01 +08:00
Toby Chui
608cc0c523 Optimized upstream & loadbalancer
- Test and optimized load balancer origin picker
- Fixed no active origin cannot load proxy rule bug
- Implemented logger design in websocket proxy module
- Added more quickstart tours
- Fixed #270 (I guess)
- Fixed #90 (I guess)
2024-08-19 16:10:35 +08:00
Toby Chui
ca37bfbfa6 Fixed #106
- Added experimental proxmox fixes
- Fixed upstream error resp code not logging bug
2024-07-27 17:33:41 +08:00
Toby Chui
f595da92a1 Fixed #267
- Added csrf middleware to management portal mux
- Added csrf token to all html templates
- Added csrf validation to all endpoints
- Optimized some old endpoints implementation
2024-07-24 21:58:44 +08:00
Toby Chui
b1c5bc2963 Fixed #255
- Added host header manual overwrite feature
- Added toggle for automatic hop-by-hop header removing
2024-07-21 17:06:09 +08:00
Toby Chui
f4a5c905e7 Fixed #256
- Added startup paramter to change the early renew days of certificates
- Changed the default early renew days of certificates from 14 days to 30 days
- Fixed vdir update not updating uptime monitor bug
2024-07-21 15:11:13 +08:00
Toby Chui
8239f4cb53 Added apache compatible logger
- Rewritten the logger to make it more apache log parser friendly
- Fixed uptime not updating after upstream change bug
- Added SSO page (wip)
- Added log viewer
2024-07-14 22:25:49 +08:00
Toby Chui
aca6e44b35 Added load balance origin picker
+ Added load balance picker
+ Added fallback mode for upstream
+ Added stick session
2024-07-12 20:14:31 +08:00
Toby Chui
2aa35cbe6d Added load balancer (wip)
+ Added support for multiple upstreams
+ Added load balancer
+ Added upstream abstraction in endpoint
+ Added load balancer structure
+ Added breaking change auto-updater
+ Added uptime monitor proxy type definitions
+ Added upstream editor UI
+ Fixed charset bug in many snippets HTML files
2024-07-01 21:17:20 +08:00
Toby Chui
7e62fef879 3.0.8 init
- Fixed rate limit bug  #216
- Added HSTS auto subdomain include check
2024-06-25 18:10:39 +08:00
Toby Chui
973d0b3372 Added load balancer module
- Added load balancer module wip
- Updated geoipv4
- Reduced uptime timeout to 5 sec
- Optimized rate limit implementation
- Fixed minor UI bug in stream proxy
2024-06-19 00:38:48 +08:00
Toby Chui
03974163d4 Added docker conditional compilation
- Moved docker UX optimization into module
- Added conditional compilation for Windows build
- Added Permission Policy header editor
- Fixed docker container list ui error message bug
2024-06-17 00:24:24 +08:00
Toby Chui
dfb81513b1 Optimized docker detection structure
- Merged #202 and optimized UI elements
- Added HSTS headers toggle
- Added permission policy injector in dynamicproxy
- Fixed slow search LAN ip detection
- Optimized UI for HTTP reverse proxy rules
- Added wip permission policy and load balancer
2024-06-16 12:46:29 +08:00
Toby Chui
10048150bb Optimized rate limiter implementation
- Moved rate limiter scope into proxy router
- Give IpTable a better name following clean code guideline
- Optimized client IP retrieval method
- Added stop channel for request counter ticker
- Fixed #199
- Optimized UI for rate limit
2024-06-14 23:42:52 +08:00
kirari04
49babbd60f
implemented update ratelimit 2024-06-11 22:45:46 +02:00
kirari04
fa11422748
Implemented ui part for rate limit 2024-06-11 22:36:03 +02:00
kirari04
e3f8c99ed3
poc of an ratelimit implementation 2024-06-10 17:52:16 +02:00
Toby Chui
b00e302f6d Added new custom header structure
+ Moved custom header rewrite to dpcore
+ Restructure dpcore header rewrite sequence
+ Added advance custom header settings (zoraxy to upstream and zoraxy to downstream mode)
+ Added header remove feature
+ Removed password requirement for SMTP #80
+ Completed stream proxy module (TCP and UDP)
+ Optimized UX for reminding user to click Apply after port change
+ Added version number to footer #160
2024-06-09 22:49:35 +08:00
Toby Chui
3c78211800 Added alias support
+ Added alias support (use , when adding a new proxy target to automatically add alias hostnames)
+ Fixed some UI issues
2024-04-16 23:33:24 +08:00
Toby Chui
8e648a8e1f v3.0.2 init commit
+ Fixed zeroSSL bug (said by @yeungalan ) #45
+ Fixed manual renew button bug
+ Seperated geodb module with access controller
+ Added per hosts access control (experimental) #69
+ Fixed basic auth not working on TLS bypass mode bug
+ Fixed empty domain crash bug #120
2024-04-14 19:37:01 +08:00
Toby Chui
e242c9288f Fixed recursive port detection logic
+ Fixed recursive port detection logic
+ Added support for CF-Connecting-IP #114
2024-03-30 15:52:10 +08:00
Toby Chui
c55a29e7cf Better 404 page and rules disable toggle 2024-03-16 20:45:05 +08:00
Toby Chui
6af047430c Added UI for WebSocket Origin Check bypass 2024-03-12 14:03:31 +08:00
Toby Chui
33c7c5fa00 Custom header support
+ Added custom header
+ Removed unused files
2024-02-17 20:28:19 +08:00
Toby Chui
e980bc847b Updated a lot of stuffs
+ Added comments for whitelist
+ Added automatic cert pick for multi-host certs (SNI)
+ Renamed .crt to .pem for cert store
+ Added best-fit selection for wildcard matching rules
+ Added x-proxy-by header
+ Added X-real-Ip header
+ Added Development Mode (Cache-Control: no-store)
+ Updated utm timeout to 10 seconds instead of 90
2024-02-16 15:44:09 +08:00
Toby Chui
174efc9080 Added per host vdir implementation 2024-02-14 22:52:56 +08:00
Toby Chui
3228789375 Restructured proxy routing logic
- Moved virtual directory into host routing object
- Generalized root and hosts routing struct
- Optimized UI
2024-02-13 21:46:43 +08:00
Toby Chui
ce4ce72820 Added optional TLS bypass mechanism
+ Added opt-out for subdomains for global TLS settings #44
+ Optimized subdomain / vdir editing interface
2023-11-25 15:54:28 +08:00
Toby Chui
e363d55899 Fixed #77 and added systemwide logger
+ Added system wide logger (wip)
+ Fixed issue #77 uptime monitor bug
+ Added backend options for bypass global TLS (or allow per rule TLS settings, wip)
+
2023-11-25 12:50:30 +08:00
Toby Chui
b63a0fc246 Added static web server and black / whitelist template
- Added static web server
- Added static web server default index
- Added embeded templates to blacklist / whitelist
- Added wip Web Directory Manager

Place the templates at ./www/templates/blacklist.html or whitelist.html to replace the build in embedded template for access control 403 error
-
2023-09-14 16:15:40 +08:00
Toby Chui
73ab9ca778 Optimized memory usage and root routing
+ Added unset subdomain custom redirection feature #46
+ Optimized memory usage by space time tradeoff in geoip lookup to fix #52
+ Replaced all stori/go.uuid to google/uuid for security reasons #55
2023-08-27 10:18:49 +08:00
Toby Chui
4f7f60188f Added basic auth exception paths
Added feature request from #25
2023-08-22 23:46:54 +08:00
Toby Chui
a3d55a3274 Patching redirection bug
+ Added wip basic auth editor custom exception rules
+ Added custom logic to handle apache screw up redirect header
2023-08-20 14:50:25 +08:00
Toby Chui
70adadf129 bug fixes for 2.6.5
+ Added potential fixes for #34 and #39
+ Added better error handling for #43
2023-08-17 14:08:48 +08:00
Toby Chui
153d056bdf ACME compatibility fix for /.well-known/
+ Updated acme well known take-over regrex
+ Added experimental config export and import
+ Added unit test for location rewrite in dpcore
+ Moved all config files to ./conf and original proxy files to ./conf/proxy
+ Minor optimization on UI regarding TLS verification logo on subdomain and vdir list
2023-07-12 21:42:09 +08:00
Toby Chui
48dc85ea3e Updates 2.6.4
+ Added force TLS v1.2 above toggle
+ Added trace route
+ Added ICMP ping
+ Added special routing rules module for up-coming acme integration
+ Fixed IPv6 check bug in black/whitelist
+ Optimized UI for TCP Proxy
+
2023-06-16 00:48:39 +08:00
Toby Chui
d187124db6 Quick fix on the edit not working bug 2023-06-09 00:01:11 +08:00
Toby Chui
5e7599756f Updates 2.6.3
+ Added X-Forwarded-Proto for automatic proxy detector
+ Split blacklist and whitelist from geodb script file
+ Optimized compile binary size
+ Added access control to TCP proxy
+ Added "invalid config detect" in up time monitor for isse #7
+ Fixed minor bugs in advance stats panel
+ Reduced file size of embedded materials
2023-06-08 21:42:03 +08:00
Toby Chui
2574d0504e Updates v2.6.2
+ Added advance stats operation tab
+ Added statistic reset #13
+ Added statistic export to csv and json (please use json)
+ Make subdomain clickable (not vdir) #12
+ Added TCP Proxy
+ Updates SMTP setup UI to make it more straight forward to setup
2023-06-04 23:59:56 +08:00
Toby Chui
20fd8e9a49 Updates v2.6.1
+ Added reverse proxy TLS skip verification
+ Added basic auth
+ Edit proxy settings
+ Whitelist
+ TCP Proxy (experimental)
+ Info (Utilities page)
2023-05-31 22:22:47 +08:00
Toby Chui
5952a1b55f Updates v2.6 experimental build
+ Basic auth
+ Support TLS verification skip (for self signed certs)
+ Added trend analysis
+ Added referer and file type analysis
+ Added cert expire day display
+ Moved subdomain proxy logic to dpcore
2023-05-27 11:12:34 +08:00
Toby Chui
c07d5f85df v2 init commit 2023-05-22 23:05:59 +08:00
Toby Chui
a1d779a0ce Removed alpha prototype source 2023-05-04 20:42:35 +08:00