Niklas Rehfeld
7d4afd4ae0
Add Http2Origin option to force HTTP/2 origin connections
...
If `http2Origin` is set, it will set `ForceAttemptHTTP2` in the transport config of the `OriginService`.
2022-06-01 12:57:29 +12:00
João Oliveirinha
99d4e48656
TUN-6016: Push local managed tunnels configuration to the edge
2022-05-06 15:43:24 +00:00
Nuno Diegues
98736a03e1
TUN-5915: New cloudflared command to allow to retrieve the token credentials for a Tunnel
2022-03-23 10:35:16 +00:00
Nuno Diegues
470e6c35c5
TUN-5918: Clean up text in cloudflared tunnel --help
2022-03-22 18:52:28 +00:00
Devin Carr
e2a8302bbc
TUN-5869: Add configuration endpoint in metrics server
2022-03-22 08:11:59 -07:00
Nuno Diegues
a1d485eca5
TUN-5823: Warn about legacy flags that are ignored when ingress rules are used
2022-03-02 10:48:03 +00:00
cthuang
d68ff390ca
TUN-5698: Make ingress rules and warp routing dynamically configurable
2022-02-16 09:38:28 +00:00
cthuang
e22422aafb
TUN-5749: Refactor cloudflared to pave way for reconfigurable ingress
...
- Split origin into supervisor and proxy packages
- Create configManager to handle dynamic config
2022-02-14 15:37:09 +00:00
Sudarsan Reddy
1a92f1acfe
TUN-5477: Unhide vnet commands
2022-01-21 12:41:58 +00:00
Nuno Diegues
a39d95d5f7
TUN-5551: Show whether the binary was built for FIPS compliance
...
This is shown in 3 ways:
- the version output with `cloudflared version` and alike commands
- the build_info prometheus metric
- a logging message
2021-12-28 19:03:16 +00:00
Nuno Diegues
6822e4f8ab
TUN-5482: Refactor tunnelstore client related packages for more coherent package
2021-12-28 17:17:49 +00:00
Nuno Diegues
eec6b87eea
TUN-5361: Commands for managing virtual networks
2021-12-03 08:48:52 +00:00
Silver
36479ef11f
Merge pull request #478 from echtish/secret-flag
...
Add flag to 'tunnel create' subcommand to specify a base64-encoded secret
2021-11-02 16:21:01 -05:00
Nuno Diegues
958650be1f
TUN-5262: Improvements to `max-fetch-size` that allow to deal with large number of tunnels in account
...
* `max-fetch-size` can now be set up in the config YAML
* we no longer pass that to filter commands that filter by name
* flag changed to signed int since altsrc does not support UInt flags
* we now look up each non UUID (to convert it to a UUID) when needed, separately
2021-10-19 18:28:29 +01:00
Nuno Diegues
eb51ff0a6d
TUN-5262: Allow to configure max fetch size for listing queries
...
This can be useful/important for accounts with many tunnels that exceed
the 1000 default page size.
There are various tunnel subcommands that use listing underneath, so we make
that flag a tunnel one, rather than adding it to each subcommand.
2021-10-18 11:07:02 +01:00
Jeremy Teale
1239006e96
Add flag to 'tunnel create' subcommand to specify a base64-encoded secret
2021-09-29 18:56:38 -05:00
Nuno Diegues
cbdf88ea28
TUN-5164: Update README and clean up references to Argo Tunnel (using Cloudflare Tunnel instead)
2021-09-29 08:27:47 +00:00
Nuno Diegues
f985ed567f
TUN-5128: Enforce maximum grace period
...
This maximum grace period will be honored by Cloudflare edge such that
either side will close the connection after unregistration at most
by this time (3min as of this commit):
- If the connection is unused, it is already closed as soon as possible.
- If the connection is still used, it is closed on the cloudflared configured grace-period.
Even if cloudflared does not close the connection by the grace-period time,
the edge will do so.
2021-09-21 16:48:37 +00:00
cthuang
98c3957d30
TUN-5010: --region should be a string flag
2021-08-30 14:40:07 +00:00
cthuang
27cd83c2d3
Revert "TUN-4926: Implement --region configuration option"
...
This reverts commit d0a1daac3b
.
2021-08-28 16:42:55 +01:00
Areg Harutyunyan
d0a1daac3b
TUN-4926: Implement --region configuration option
2021-08-27 09:11:10 +00:00
Rishabh Bector
a4a9f45b0a
TUN-4821: Make quick tunnels the default in cloudflared
2021-08-26 15:53:02 +00:00
Nuno Diegues
aa24338225
TUN-4832: Prevent tunnel from running accidentally when only proxy-dns should run
2021-07-29 11:05:12 +00:00
Sudarsan Reddy
ed1389ef08
TUN-4814: Revert "TUN-4699: Make quick tunnels the default in cloudflared"
...
This reverts commit 18992efa0c
.
2021-07-28 10:02:55 +01:00
Rishabh Bector
18992efa0c
TUN-4699: Make quick tunnels the default in cloudflared
2021-07-26 15:57:36 +00:00
Rishabh Bector
59cae0f622
TUN-4698: Add cloudflared metrics endpoint to serve quick tunnel hostname
2021-07-12 09:26:07 +00:00
Rishabh Bector
3eb9efd9f0
TUN-4521: Modify cloudflared to use zoneless-tunnels-worker for free tunnels
2021-06-29 09:39:18 +01:00
Adam Chalmers
4c5ebccacc
TUN-4425: --overwrite-dns flag for in adhoc and route dns cmds
2021-05-19 18:22:01 +00:00
Nuno Diegues
ae460b340b
TUN-4342: Fix false positive warning about unused hostname property
2021-05-13 02:05:19 +01:00
Adam Chalmers
4bd17766a9
TUN-4359: Warn about unused keys in 'tunnel ingress validate'
2021-05-13 02:05:19 +01:00
Areg Harutyunyan
1073f8db40
TUN-2853: rename STDIN-CONTROL env var to STDIN_CONTROL
2021-04-09 16:43:01 +01:00
Nuno Diegues
b25d38dd72
TUN-4177: Running with proxy-dns should not prevent running Named Tunnels
2021-04-05 11:28:05 +01:00
Adam Chalmers
ebf5292bf9
TUN-4146: Unhide and document grace-period
2021-03-29 16:29:18 -05:00
Igor Postelnik
da4d0b2bae
TUN-4067: Reformat code for consistent import order, grouping, and fix formatting. Added goimports target to the Makefile to make this easier in the future.
2021-03-24 10:53:29 -05:00
Nuno Diegues
89d0e45d62
TUN-3993: New `cloudflared tunnel info` to obtain details about the active connectors for a tunnel
2021-03-17 14:08:18 +00:00
Igor Postelnik
a34099724e
TUN-4094: Don't read configuration file for access commands
2021-03-16 17:36:46 -05:00
Igor Postelnik
8c5498fad1
TUN-3715: Only read config file once, right before invoking the command
2021-03-16 17:22:13 -05:00
Adam Chalmers
2c746b3361
TUN-4081: Update log severities to use Zerolog's levels
2021-03-16 19:04:49 +00:00
Igor Postelnik
39065377b5
TUN-4063: Cleanup dependencies between packages.
...
- Move packages the provide generic functionality (such as config) from `cmd` subtree to top level.
- Remove all dependencies on `cmd` subtree from top level packages.
- Consolidate all code dealing with token generation and transfer to a single cohesive package.
2021-03-09 14:02:59 +00:00
Nuno Diegues
bcd71b56e9
TUN-3989: Check in with Updater service in more situations and convey messages to user
2021-03-03 13:57:04 +00:00
Igor Postelnik
a8ae6de213
TUN-3924: Removed db-connect command. Added a placeholder handler for this command that informs users that command is no longer supported.
2021-02-17 20:13:51 -06:00
David Jimenez
d7c4a89106
Add max upstream connections dns-proxy option ( #290 )
...
* Add max upstream connections dns-proxy option
Allows defining a limit to the number of connections that can be
established with the upstream DNS host.
If left unset, there may be situations where connections fail to
establish, which causes the Transport to create an influx of connections
causing upstream to throttle our requests and triggering a runaway
effect resulting in high CPU usage. See https://github.com/cloudflare/cloudflared/issues/91
* Code review with proposed changes
* Add max upstream connections flag to tunnel flags
* Reduce DNS proxy max upstream connections default value
Reduce the default value of maximum upstream connections on the DNS
proxy to guarantee it works on single-core and other low-end hardware.
Further testing could allow for a safe increase of this value.
* Update dns-proxy flag name
Also remove `MaxUpstreamConnsFlag` const as it's no longer referenced in more than one place and to make things more consistent with how the other flags are referenced.
Co-authored-by: Adam Chalmers <achalmers@cloudflare.com>
2021-02-12 21:32:29 +04:00
Adam Chalmers
dbd90f270e
TUN-3864: Users can choose where credentials file is written after creating a tunnel
2021-02-05 11:20:51 -06:00
Adam Chalmers
0d22106416
TUN-3848: Use transport logger for h2mux
2021-02-03 17:31:16 -06:00
Igor Postelnik
6cdd20e820
TUN-3792: Handle graceful shutdown correctly when running as a windows service. Only expose one shutdown channel globally, which now triggers the graceful shutdown sequence across all modes. Removed separate handling of zero-duration grace period, instead it's checked only when we need to wait for exit.
2021-01-27 07:21:34 -06:00
Igor Postelnik
d503aeaf77
TUN-3118: Changed graceful shutdown to immediately unregister tunnel from the edge, keep the connection open until the edge drops it or grace period expires
2021-01-22 11:14:36 -06:00
Igor Postelnik
04b1e4f859
TUN-3738: Refactor observer to avoid potential of blocking on tunnel notifications
2021-01-18 11:16:23 +00:00
Nuno Diegues
7c3ceeeaef
TUN-3757: Fix legacy Uint flags that are incorrectly handled by ufarve library
...
The following UInt flags:
* Uint64 - heartbeat-count, compression-quality
* Uint - retries, port, proxy-port
were not being correctly picked from the configuration YAML
since the multi origin refactor
This is due to a limitation of the ufarve library, which we
overcome for now with handling those as Int flags.
2021-01-14 13:08:55 +00:00
Nuno Diegues
9ed536c990
TUN-3738: Consume UI events even when UI is disabled
...
Not doing so was causing cloudflared to become stuck after
some time. This would happen because the Observer pattern
was sending events to the UI channel (that has 16 slots) but
no one was consuming those when the UI is not enabled (which
is the default case).
Hence, events (such as connection disconnect / reconnect) would
cause that buffer to be full and cause cloudflared to become
apparently stuck, in the sense that the connections would not be
reconnected.
2021-01-13 13:10:30 +00:00
Areg Harutyunyan
55bf904689
TUN-3471: Add structured log context to logs
2021-01-05 20:21:16 +00:00
Adam Chalmers
b855e33327
TUN-3706: Quit if any origin service fails to start
2020-12-30 13:48:19 -06:00
Areg Harutyunyan
870f5fa907
TUN-3470: Replace in-house logger calls with zerolog
2020-12-23 14:15:17 -06:00
Adam Chalmers
38fb0b28b6
TUN-3593: /ready endpoint for k8s readiness. Move tunnel events out of UI package, into connection package.
2020-12-02 15:22:59 -06:00
Areg Harutyunyan
cad58b9b57
TUN-3561: Unified logger configuration
2020-11-23 16:49:07 +00:00
Adam Chalmers
029f7e0378
TUN-3555: Single origin service should default to localhost:8080
2020-11-17 23:12:32 +00:00
cthuang
ebc003d478
TUN-3514: Transport logger write to UI when UI is enabled
2020-11-11 15:21:00 +00:00
cthuang
5974fb4cfd
TUN-3500: Integrate replace h2mux by http2 work with multiple origin support
2020-11-11 15:20:57 +00:00
cthuang
9ac40dcf04
TUN-3462: Refactor cloudflared to separate origin from connection
2020-11-11 15:11:42 +00:00
cthuang
d7498b0c03
TUN-3449: Use flag to select transport protocol implementation
2020-11-11 15:11:42 +00:00
Adam Chalmers
4698ec8dee
TUN-3461: Show all origin services in the UI
2020-11-10 14:25:37 +00:00
Adam Chalmers
d01770107e
TUN-3492: Refactor OriginService, shrink its interface
2020-11-04 21:28:33 +00:00
Adam Chalmers
e933ef9e1a
TUN-2640: Users can configure per-origin config. Unify single-rule CLI
...
flow with multi-rule config file code.
2020-10-30 07:42:20 -05:00
cthuang
f0cfad8efa
TUN-3476: Fix conversion to string and int slice
2020-10-21 16:03:25 +01:00
Igor Postelnik
ca4887fb19
Split out typed config from legacy command-line switches; refactor ingress commands and fix tests
2020-10-20 10:10:19 -05:00
Igor Postelnik
eaf03305bd
TUN-3475: Unify config file handling with typed config for new fields
2020-10-20 08:55:30 -05:00
Igor Postelnik
051908aaef
TUN-3463: Let users run a named tunnel via config file setting
2020-10-19 12:27:18 +00:00
Adam Chalmers
4a4a1bb6b1
TUN-3441: Multiple-origin routing via ingress rules
2020-10-13 08:55:17 -05:00
Adam Chalmers
0eebc7cef9
TUN-3438: move ingress into own package, read into TunnelConfig
2020-10-12 16:33:22 +00:00
Igor Postelnik
53a1fa46a8
TUN-3452: Fix loading of flags from config file for tunnel run subcommand. This change also cleans up building of tunnel subcommand list, hides deprecated subcommands and improves help.
2020-10-09 12:07:17 -05:00
Adam Chalmers
86a7af3dc4
TUN-3451: Cloudflared tunnel ingress command
2020-10-08 22:06:40 +00:00
Adam Chalmers
407c9550d7
TUN-3440: 'tunnel rule' command to test ingress rules
2020-10-08 22:06:40 +00:00
Adam Chalmers
2319003e10
TUN-3439: 'tunnel validate' command to check ingress rules
2020-10-08 22:06:40 +00:00
cthuang
03d7320a44
TUN-3430: Copy flags to configure proxy to run subcommand, print relevant tunnel flags in help
2020-10-01 21:44:27 +00:00
Lee Valentine
8e8513e325
TRAFFIC-448: allow the user to specify the proxy address and port to bind to, falling back to 127.0.0.1 and random port if not specified
2020-09-25 09:54:40 -05:00
cthuang
197d65659a
TUN-3291: cloudflared tunnel run -h explains how to use flags from parent command
2020-09-21 19:07:30 +00:00
Igor Postelnik
85d0afd3b0
TUN-3295: Show route command results
2020-09-21 16:32:08 +00:00
Areg Harutyunyan
747427f816
TUN-3216: UI improvements
2020-09-17 13:22:08 +04:00
Rachel Williams
26fc20d406
TUN-3198: Handle errors while running tunnel UI
2020-09-17 11:52:10 +04:00
Rachel Williams
fee13dc62f
TUN-3255: Update UI to display URL instead of hostname
2020-09-17 11:52:10 +04:00
Rachel Williams
b57a953caa
TUN-3200: Add connection information to UI
2020-09-17 11:52:10 +04:00
Rachel Williams
d8ebde37ca
TUN-3201: Create base cloudflared UI structure
2020-09-17 11:52:07 +04:00
cthuang
3deef6197f
TUN-3213: Create, route and run named tunnels in one command
2020-08-17 19:38:38 +00:00
Dalton
5499c77e62
AUTH-2975 don't check /etc on windows
2020-08-17 12:40:36 -05:00
cthuang
a7562dff68
TUN-3233: List tunnels support filtering by deleted, name, existed at and id
2020-08-07 10:09:26 +01:00
cthuang
8836ee1dda
TUN-3156: Add route subcommand under tunnel
2020-07-17 05:51:24 +08:00
cthuang
f5c8ff77e9
TUN-3008: Implement cloudflared tunnel cleanup command
2020-07-07 21:56:46 +08:00
Igor Postelnik
2a3d486126
TUN-3007: Implement named tunnel connection registration and unregistration.
...
Removed flag for using quick reconnect, this logic is now always enabled.
2020-07-01 04:19:30 +00:00
Adam Chalmers
4d3ebaf984
TUN-3106: Pass NamedTunnel config to StartServer
2020-06-17 23:20:37 +00:00
Adam Chalmers
a1a8645294
TUN-3066: Command line action for tunnel run
2020-06-17 17:25:23 +00:00
Dalton
425554077f
AUTH-2815 flag check was wrong. stupid oversight
2020-06-16 16:19:38 -05:00
Dalton
6e5ccd7c85
AUTH-2815 add the log file to support the config.yaml file
...
added small delay to handle the possiblity of the server not being started yet
2020-06-16 17:48:12 +00:00
Dalton
55acf7283c
AUTH-2810 added warn for backwards compatibility sake
2020-06-12 22:15:28 +00:00
Dalton
c716dd273c
AUTH-2648 updated usage text
2020-06-11 11:08:05 -05:00
Dalton
f8638839c0
AUTH-2729 added log file and level to cmd flags to match config file settings
2020-06-08 19:42:34 +00:00
Dalton
e376a13025
AUTH-2645 protect against user mistaken flag input
2020-06-05 15:10:09 -05:00
cthuang
fb82b2ced5
TUN-3019: Remove declarative tunnel entry code
2020-05-30 05:54:17 +08:00
Dalton
046be63253
AUTH-2596 added new logger package and replaced logrus
2020-05-27 17:07:19 -05:00
Igor Postelnik
a908453aa4
TUN-2928, TUN-2929, TUN-2930: Add tunnel subcommands to interact with tunnel store service
2020-05-21 15:36:49 -05:00
Michael Borkenstein
b89cc22896
AUTH-2369: RDP Bastion prototype
2020-05-19 21:10:50 -05:00
Michael Borkenstein
6a7418e1af
AUTH-2686: Added error handling to tunnel subcommand
2020-05-18 15:36:25 -05:00