Before we start
Would you kindly spend a few (<5) minutes and give your feedback on the size & type of your installation here? Thank you 🙏
Additionally, you can now subscribe to major release notes and vulnerability alerts via email: https://warpgate.null.page/newsletter/
New features
RDP & VNC remote desktop support - #1987
Warpgate now supports RDP and VNC targets.
This includes full video recording of the screen and inputs and a web based client.
Check out the setup guides for RDP and VNC.
by @theharold
True clustering support
Warpgate can now run behind a non-sticky load balancer, with multiple instances sharing a database
Reauthentication policy for for critical endpoints - #2143
An new option to direct web users to log in again before accessing critical endpoints such as web terminal/desktop and ticket creation.
by @Eugeny
Live-reloading port listener configuration - #2144
Warpgate now automatically reloads listener configuration - both the endpoint and TLS certificate & key files - with zero downtime.
by @Eugeny
OIDC for Kubernetes - #2094
Adds an option to use SSO via kubectl oidc-login with Kubernetes targets, forwarding kubectl's own OIDC token to Warpgate for re-verification against the live OIDC provider.
by @alistarle
Cached web approvals - #2175
An option to remember "web approval" authorizations for a configurable amount of time to avoid repeated prompts on each new connection.
Once enabled, the users will see an option to "remember" the authorization for the configured amount of time.
by @Eugeny
PROXY protocol support - #2174
Allows Warpgate run behind HAProxy - for all protocol listeners. See documentation
by @njzydark
S3 recording storage support - #2205
Recordings can now be stored on a shared object storage, allowing clustering without a shared filesystem. Nodes record active sessions to a local scratch while simultaneously uploading parts to S3 as they come. The storage location can be changed under Config > Global Parameters
Changes
-
fixed #1871 - show banner on protocols other than SSH by @Eugeny in #2253
-
fixed #2235 - heuristic SSH shell command auditing by @Eugeny in #2259
-
fixed #2262, fixed #951 - MySQL caching_sha2 auth by @Eugeny in #2267
-
[HELM] Add support for loadBalancerSourceRanges in the Service template by @basti-nis in #2279
-
#1828 - option to disable host key checks by @Eugeny in #2284
-
Opt-in: open HTTP targets in a new tab by @Chanta007 in #2195
-
cross-node AuthState handling for MFA logins - LB stickiness no longer required by @Eugeny in #2294
Fixes
- fixed #1459 - concurrent agent channel requests causing deadlock by @Eugeny in #2135
- fix(auth): avoid holding the AuthStateStore lock during DB I/O and serialization by @mba965 in #2141
- fixed #2157 - strip warpgate-* query params before proxying by @Eugeny in #2176
- fixed #2160 - load server info in the web SSH view by @Eugeny in #2177
- fixed #2173 - RDP web desktop bitmap shear + enable autologon by @Eugeny in #2178
- Add UI for checking the status of protocol listeners by @Eugeny in #2184
- fixed #2191 - allow concurrent DB access by @Eugeny in #2192
- Reuse HTTP clients across requests by @LarsSven in #2196
- Do not check show_session_menu when it's not necessary by @LarsSven in #2197
- alternative #2186 - better web approval cache binding, optional "appr… by @Eugeny in #2199
- fixed #2200 - record web desktop client inputs by @Eugeny in #2207
- Significantly improve authorization performance by @LarsSven in #2221
- Avoid unnecessary set_target and set_user_info hot path work by @LarsSven in #2220
- Fix embedded session menu clicks misclassified as drags by @Hexalyse in #2217
- compress web desktop client updates by @Eugeny in #2233
- accept RDP client's resolution requests by @Eugeny in #2242
- alternative #2234 - properly handle websocket session keepalive by @Eugeny in #2246
- RDP progressive encoding by @Eugeny in #2247
- lock DB when running migrations by @Eugeny in #2260
- Fix session cleanup by @Eugeny in #2269
- fixed #1575 - obtain SSO cred via web approval over SSH by @Eugeny in #2270
- fix(web): namespace the theme localStorage key by @ndreno in #2280
- fix #1342 - cleanup abruptly ended sessions by @Eugeny in #2287
- Cross-node web approvals by @Eugeny in #2288
- make sure "close all sessions" closes sessions on all nodes by @Eugeny in #2286
New Contributors
- @theharold made their first contribution in #1987
- @mba965 made their first contribution in #2141
- @alistarle made their first contribution in #2094
- @njzydark made their first contribution in #2174
- @Hexalyse made their first contribution in #2217
- @basti-nis made their first contribution in #2279
- @Chanta007 made their first contribution in #2195
Full Changelog: v0.26.1...v0.27.0
