2.0.0#6
Conversation
oermoshkin
commented
Apr 12, 2026
- RADIUS server refactor: UDP/listen/worker stay in server.go; PAP/OTP flow lives in handle.go; scope→attribute mapping in attributes.go; client config + ParseClientsConf in types.go (the old auth package removed).
- Observability: JSON zap logging from main; per-request request_id from newPacket through RADIUS logs and into Keycloak via context + WithRequestID.
- Keycloak client: Admin token caching; zap instead of raw stdout debug; JWT role parsing without a shared mutable struct (concurrency-safe); AuthenticateUser / HasOTP take context.Context first.
- Reliability / perf: HTTP client timeout + cloned transport; challenge state TTL + periodic eviction; precompiled regex rules for scope_radius_map; misc PAP/username fix.
- Repo hygiene: Dropped tracked keyrad binary; .gitignore extended (IDE, build/, etc.); v2.0.0 + author line in main; Makefile added; unit tests for keycloak + radiussrv.
- Add docker-compose example
|
| GitGuardian id | GitGuardian status | Secret | Commit | Filename | |
|---|---|---|---|---|---|
| - | - | Generic High Entropy Secret | 530164c | keycloak/keycloak_test.go | View secret |
🛠 Guidelines to remediate hardcoded secrets
- Understand the implications of revoking this secret by investigating where it is used in your code.
- Replace and store your secret safely. Learn here the best practices.
- Revoke and rotate this secret.
- If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.
To avoid such incidents in the future consider
- following these best practices for managing and storing secrets including API keys and other credentials
- install secret detection on pre-commit to catch secret before it leaves your machine and ease remediation.
🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.
|
Thx. Will review changes during this week |
Key concerns before merging
|
Hi! |
|
True: To prevent the security scanner from detecting the next release, the method for 1) is to modify clients.conf to clients.conf.example and add clients.conf to.gitignore. The 127.0.0.1 bind problemYes — The current config has a mismatch:
So the example config is more restrictive than the binary's own default. That's the root of the confusion. Real deployment topologyA NAS (MikroTik, pfSense, Cisco, etc.) is rarely co-located with the RADIUS server. The typical layout is:
Two-config approachYour instinct is right — the cleanest solution is two example configs:
The Docker image can default to the Summary
|