Viktor Liu
c202cecaf7
Remove duplicate mock methods after merge
2026-04-07 18:26:25 +02:00
Viktor Liu
97d739547e
Merge remote-tracking branch 'origin/main' into crowdsec-integration
...
# Conflicts:
# management/server/store/store_mock.go
2026-04-07 18:25:19 +02:00
Pascal Fischer
14b3b77bda
[management] validate permissions on groups read with name ( #5749 )
2026-04-07 14:13:09 +02:00
Viktor Liu
a22c849ae0
Add CrowdSec IP reputation integration for reverse proxy
2026-03-30 13:05:46 +02:00
Viktor Liu
0765352c99
[management] Persist proxy capabilities to database ( #5720 )
2026-03-30 13:03:42 +02:00
Bethuel Mmbaga
7be8752a00
[management] Add notification endpoints ( #5590 )
2026-03-26 18:26:33 +03:00
Pascal Fischer
a1858a9cb7
[management] recover proxies after cleanup if heartbeat is still running ( #5617 )
2026-03-18 11:48:38 +01:00
Viktor Liu
212b34f639
[management] Add GET /reverse-proxies/clusters endpoint ( #5611 )
2026-03-18 11:15:56 +08:00
Viktor Liu
3e6baea405
[management,proxy,client] Add L4 capabilities (TLS/TCP/UDP) ( #5530 )
2026-03-13 18:36:44 +01:00
Pascal Fischer
5c20f13c48
[management] fix domain uniqueness ( #5529 )
2026-03-07 10:46:37 +01:00
Maycon Santos
8e7b016be2
[management] Replace in-memory expose tracker with SQL-backed operations ( #5494 )
...
The expose tracker used sync.Map for in-memory TTL tracking of active expose sessions, which broke and lost all sessions on restart.
Replace with SQL-backed operations that reuse the existing meta_last_renewed_at column:
- Add store methods: RenewEphemeralService, GetExpiredEphemeralServices, CountEphemeralServicesByPeer, EphemeralServiceExists
- Move duplicate/limit checks inside a transaction with row-level locking (SELECT ... FOR UPDATE) to prevent concurrent bypass
- Reaper re-checks expiry under row lock to avoid deleting a just-renewed service and prevent duplicate event emission
- Add composite index on (source, source_peer) for efficient queries
- Batch-limit and column-select the reaper query to avoid DB/GC spikes
- Filter out malformed rows with empty source_peer
2026-03-04 18:15:13 +01:00
Pascal Fischer
d7c8e37ff4
[management] Store connected proxies in DB ( #5472 )
...
Co-authored-by: mlsmaycon <mlsmaycon@gmail.com >
2026-03-03 18:39:46 +01:00
Pascal Fischer
82da606886
[management] Add explicit target delete on service removal ( #5420 )
2026-03-02 18:25:44 +01:00
Maycon Santos
f341d69314
[management] Add custom domain counts and service metrics to self-hosted metrics ( #5414 )
2026-02-24 15:21:14 +01:00
Pascal Fischer
5d171f181a
[proxy] Send proxy updates on account delete ( #5375 )
2026-02-23 16:08:28 +01:00
Pascal Fischer
36752a8cbb
[proxy] add access log cleanup ( #5376 )
2026-02-20 00:11:28 +01:00
Pascal Fischer
f53155562f
[management, reverse proxy] Add reverse proxy feature ( #5291 )
...
* implement reverse proxy
---------
Co-authored-by: Alisdair MacLeod <git@alisdairmacleod.co.uk >
Co-authored-by: mlsmaycon <mlsmaycon@gmail.com >
Co-authored-by: Eduard Gert <kontakt@eduardgert.de >
Co-authored-by: Viktor Liu <viktor@netbird.io >
Co-authored-by: Diego Noguês <diego.sure@gmail.com >
Co-authored-by: Diego Noguês <49420+diegocn@users.noreply.github.com >
Co-authored-by: Bethuel Mmbaga <bethuelmbaga12@gmail.com >
Co-authored-by: Zoltan Papp <zoltan.pmail@gmail.com >
Co-authored-by: Ashley Mensah <ashleyamo982@gmail.com >
2026-02-13 19:37:43 +01:00