Commit Graph

80 Commits

Author SHA1 Message Date
c71efde303 refactor the code related to xtcp (#3449) 2023-05-28 16:50:43 +08:00
a22d6c9504 frpc: support nathole discover (#3381) 2023-03-30 20:28:15 +08:00
6b3daffaf0 upgrade quic-go and change import path (#3286) 2023-02-02 20:20:17 +08:00
7678938c08 support quic options (#3211) 2022-12-18 18:43:42 +08:00
2f66dc3e99 support protocol quic between frpc and frps (#3198) 2022-12-12 11:04:10 +08:00
9d077b02cf lint by golangci-lint (#3080) 2022-08-29 01:02:53 +08:00
4af85da0c2 type http/tcpmux proxy support route_by_http_user, tcpmux support passthourgh mode (#2932) 2022-05-26 23:57:30 +08:00
100d556336 support tcp keepalive params (#2863) 2022-03-22 19:29:30 +08:00
6194273615 use net.JoinHostPort instead of fmt.Sprintf (#2791) 2022-02-09 15:19:35 +08:00
293003fcdb allow to disable application layer heartbeat to reduce traffic cost (#2758)
fix #2754
2022-01-13 14:26:07 +08:00
22412851b4 server plugin: add client address in Login operation, fix #2742 (#2751) 2022-01-11 16:32:20 +08:00
0cee1877e3 refactor: move from io/ioutil to io and os package (#2592) 2021-09-29 10:33:57 +08:00
2f74f54f18 Let's get rid of ugly statik (#2255)
* Get rid of ugly statik

go1.16 introduced the embed package, it's the more graceful solution for embedding file into binary.
https://golang.org/pkg/embed/

* remove statik totally

* split go and static files in assets
2021-08-17 20:20:04 +08:00
42745a3da2 frpc: add disable_custom_tls_first_byte to not send first custom tls to frps (#2520) 2021-08-11 23:10:35 +08:00
0ff27fc9ac fix(server): listen udp port failed (#2308)
fix #2306
2021-03-18 11:05:03 +08:00
8e25f13201 update: support ipv6 (#2288) 2021-03-10 20:19:58 +08:00
3fbdea0f6b rename models to pkg (#2005) 2020-09-23 13:49:14 +08:00
4fff3c7472 Add tls configuration to both client and server (#1974) 2020-09-18 19:58:58 +08:00
268afb3438 Sorting plugins so that execution order is deterministic (#1961) 2020-08-31 19:49:46 +08:00
8b75b8b837 fix by golint (#1822) 2020-05-24 17:48:37 +08:00
dfbf9c4542 style: adjust frps files (#1820) 2020-05-24 11:28:57 +08:00
6d78af6144 feat: group TCP mux proxies (#1765) 2020-04-20 13:35:47 +08:00
7728e35c52 fix: frps handle multi conn may happen data race (#1768) 2020-04-19 16:16:24 +08:00
ad0c449a75 Server manager support the NewUserConn operation (#1740)
support NewUserConn operation
2020-04-16 13:06:46 +08:00
a4b105dedb [Feature] Server Plugin - Ping and NewWorkConn RPC (#1702) 2020-03-18 01:52:44 +08:00
495d999b6c refactoring monitor code, support prometheus (#1668)
* refactoring monitor code, support prometheus
* remove vendor
2020-03-11 13:20:26 +08:00
1db091b381 tcp multiplexing over http connect tunnel 2020-03-05 21:47:49 +08:00
6c6607ae68 feat: add multiple authentication methods, token and oidc.
token is the current token comparison, and oidc generates oidc token using client-credentials flow. in addition - add ping verification using the same method
2020-03-01 10:57:01 +08:00
98fa3855bd CR: export error string generation to a function 2020-02-11 16:57:38 +02:00
9440bc5d72 Merge branch 'dev' into feature/detailed-errors-to-client
# Conflicts:
#	models/config/server_common.go
2020-02-11 11:25:04 +02:00
f8c6795119 DetailedErrorsToClient - only send detailed error info if this is on 2020-02-10 19:29:57 +02:00
c747f160aa TlsOnly - only accept TLS connections if enabled 2020-02-10 18:56:41 +02:00
91e46a2c53 support server plugin feature 2019-12-23 20:00:04 +08:00
649f47c345 change log method 2019-10-12 20:13:12 +08:00
f999c8a87e Merge pull request #1396 from velovix/issue-1387_server-conf-as-argument
Pass server configuration as an argument
2019-08-21 00:30:01 +08:00
5fc7b3ceb5 Remove global ServerService variable
This variable didn't seem to be used anyway, so no further changes were
required.
2019-08-19 16:23:33 -07:00
6277af4790 Pass server configuration as an argument
The ServerCommonConf is now passed around as an argument instead of
being shared between components as a global variable. This allows for
more natural interaction with server.Session as a library and allows for
multiple servers to co-exist within the same process.

Related: #1387
2019-08-19 15:52:08 -07:00
00bd0a8af4 Load assets for dashboard/admin panel on demand
The client and server services now only attempt to load assets if the
dashboard or admin panel are enabled. This change makes it possible to
use FRP as a library without having to manage assets. If a library user
wants to start a server with the dashboard enabled, they will need to
set the DashboardPort and AssetsDir fields of ServerCommonConf.
2019-08-19 10:10:50 -07:00
b3ed863021 support http load balancing 2019-07-31 00:41:58 +08:00
17cc0735d1 add read timeout for TLS check operation 2019-07-12 17:11:03 +08:00
0dfd3a421c frps: support custom_404_page 2019-04-25 12:29:34 +08:00
d812488767 support tls connection 2019-03-11 14:14:31 +08:00
96d7e2da6f add admin UI for frpc 2019-02-01 19:28:05 +08:00
70ac7d3d11 fix control delete error 2019-01-26 21:36:24 +08:00
f76deb8898 frps: remove auth timeout 2019-01-15 00:22:13 +08:00
611d063e1f server: adjust code structure 2019-01-15 00:11:08 +08:00
0c7d778896 frps: optimize code 2019-01-11 14:34:50 +08:00
7c21906884 improve kcp shutdown 2018-12-11 15:17:36 +08:00
f14ed87b29 Merge pull request #886 from fatedier/websocket
Connect protocol support websocket
2018-08-10 16:36:02 +08:00
07623027bc websocket: fix 2018-08-10 16:31:49 +08:00