Releases: croessner/nauthilus
Release v1.3.4
Unreleased
v1.3.4 - 2024-11-12
Feat
-
Add account name handling to feature requests and brute force
- Add LDAPStaleConnections metric
Fix
-
Refactor Redis cache handling and brute force counter logic
- Fix error handling and improve cache management
- Refactor Redis counters and context usage
- Fix type handling in nauthilus_util.lua
Release v1.3.3
Unreleased
v1.3.3 - 2024-11-08
Feat
-
Add exponential buckets to Prometheus histogram
Fix
-
Refactor password history logging
- Update caching stats conditions to include zero differences
- Add periodic Redis pool stats update and optimize imports
- Refactor Redis pool metrics to use gauge vectors
- Add interface compliance assertions to various structs
- Update Prometheus timers to check for nil before deferring
Release v1.3.2
Unreleased
v1.3.2 - 2024-11-06
Feat
-
Add Redis PING command functionality
- Add support for custom Redis pools and improve stats collection
- Add Redis connection pool support and related tests
- Update FilterCmd to support multiple accounts and IP addresses
- Update FilterCmd to support multiple accounts and IP addresses
- Add removed keys tracking to flush operations
- Refactor blocked accounts retrieval to include IP addresses
- Add Redis handling for blocked accounts
Fix
-
Enhance post-2FA Lua script handling and user data logging
- Fix assignment to nil-map in ldap.go
- Add Redis key expiration for negative cache TTL
- Fix incorrect password history processing
- Refactor user account retrieval from cache
- Add Redis dependency and check user existence with Redis
- Refactor defer placement for Prometheus timer in features.go
- Rename method to reflect its purpose of updating Redis
- Refactor context usage for Redis operations
Release v1.3.1
Release v1.3.0
Unreleased
v1.3.0 - 2024-10-25
Chore
-
Update Alpine version in Dockerfile
- Update Go and vendor packages
- Update Go and vendor packages
Feat
-
Add concurrency-safe script management to redislib
- Add Redis script upload functionality
- Refactor Lua script handling and introduce new init hooks
- Refactor Redis setup to include context and retry logic
- Refactor Lua-Go value conversion and optimize Redis script handling
- Add IP monitoring functionality to ConnectionManager
- Add nauthilus_psnet to various Lua plugins
- Add generic connection monitoring and update mechanisms
- Add connection management to server
- Add GaugeVec support to Lua metrics for HTTP client concurrency
- Add LDAP opened connections metric
- Add RBL rejection metric
- Add gauge metric for idle LDAP pool size
- Add LDAP metrics for pool size and active connections
- Switch from Prometheus summary to histogram vectors
- Refactor CPU usage metrics handling for platform-specific logic
- Add analytics action and refactor existing plugin actions
- Add GeoIP country counting and status tracking
- Add backend server status metrics
- Add protocol acceptance and rejection counters
- Add brute force metrics for improved security monitoring
- Add Prometheus metrics to various Lua modules
- Add metrics for time since reload and startup
- Add gauge for current requests in statistics
- Add brute force protection feature and update config params
- Introduce connection limit middleware
- Integrate gluahttp library for HTTP requests
- Add debug build process and Dockerfile
- Add HTTP request header getters and validation
Fix
-
Fix nauthilus_util.if_error_raise call placement
- Refactor network parameter to pointer in brute force checks
- Refactor variable initialization in
checkRepeatingBruteForcer
- Update Redis script management for consistency and reuse
- Fix Redis script arguments handling and add unit tests
- Handle errors and abort on temp auth failure
- Fix TLS and improve X-Forwarded-For handling
- Filter non-established connections in netstats
- Fix port parsing by using strconv.ParseUint
- Refactor HTTP client initialization
- Fix pwnedpasswords API connection issue
- Add DNS resolver validation and refine NewDNSResolver
- Update timestamp methods to use UnixMilli
- Update Prometheus gauge handling in HTTP client plugins
- Remove unused CPU IRQ and SoftIRQ metrics
- Add osstat library for enhanced CPU statistics
- Refactor check for 'current_country_code' value type
- Optimize login statistics collection
- Enhance Prometheus metrics with instance_name label
- Rename Prometheus metrics from "_counter" to "_duration_seconds"
- Document metrics and synchronization variables
- Rename Prometheus metrics for clarity
- Rename metrics to use unix timestamps
- Refactor Prometheus timer metric name format
- Prevent brute force checks for disabled protocols
- Handle temporary authentication failures
- Refactor brute force logging and handling
- Refactor brute force password handling methods
- Remove Prometheus middleware from GET and POST routes
- Remove unnecessary close calls on channels
- Refactor dynamic loader functions to use external HTTP client
- Return http.Client from registerDynamicLoader functions
- Remove closed-channel error handling
- Refactor mail module to use an instance-based approach
- Add timeout to HTTP client in glua_http module
- Add healthcheck symlink to Dockerfile.debug
- Add symbolic links for lua-plugins and resources
- Change WORKDIR and CMD paths in Dockerfile.debug
- Fix typo, increase wait delay, and add wait calculation
- Add initMethodAndUserAgent to auth initialization
- Change version to variable and update local cache key
- Fix SSL check condition in feature validation
Release v1.2.7
Unreleased
v1.2.7 - 2024-09-19
Feat
-
Add status message for GeoIP policy violations
- Add ScriptName field to Lua script actions
- Add AccountField to various auth structs and Lua requests
- Refactor AuthState initialization logging
Fix
-
Update Prometheus metric label from PromFeature to PromFilter
- Fix client IP extraction from forwarded addresses
- Remove commented-out logo image code
- Fix client IP extraction by handling multiple IPs correctly
- Refactor X-Forwarded-For processing in authentication.
- Handle logout for inactive sessions and update error messaging
- Add version tag extraction to workflow
Release v1.2.6
Unreleased
v1.2.6 - 2024-09-16
Feat
-
Refactor logging to use AuthState's AdditionalLogs
- Add logging of Lua actions summary with custom key-values
- Refactor network checks and proxy address handling
- Refactor DNS and RBL handling for efficiency
- Add DNS metrics to Prometheus monitoring
- Add colored logging and switch to gin.ReleaseMode
Fix
-
Add version tag extraction to workflow
- Fix auth mode check for Basic Auth service
- Handle closed channels in backend request handlers
- Ensure default status message is set in LogLineMail
- Update GUID retrieval in GetProxyAddress function
- Refactor logging in filter and feature modules
- Add LuaModContext case to registerModule function
- Refactor log message strings to global constants
- Refactor RBL outcome handling
- Refactor error handling in RBL function
- Rename logIsLocalMessage to logMessage for clarity
- Remove SBOM generation with Syft from Dockerfiles
Pull Requests
-
Merge pull request #87 from croessner/dependabot/go_modules/features/golang.org/x/text-0.18.0
- Merge pull request #88 from croessner/dependabot/go_modules/features/github.com/gin-contrib/sessions-1.0.1
- Merge pull request #89 from croessner/dependabot/go_modules/features/github.com/emersion/go-smtp-0.21.3
- Merge pull request #90 from croessner/dependabot/go_modules/features/github.com/gin-gonic/gin-1.10.0
- Merge pull request #91 from croessner/dependabot/go_modules/features/github.com/ory/hydra-client-go/v2-2.2.1
- Merge pull request #92 from croessner/dependabot/go_modules/features/github.com/quic-go/quic-go-0.47.0
Release v1.2.5
Unreleased
v1.2.5 - 2024-09-11
Chore
-
Add GPL license header to source files
Feat
-
Add request and response logging middleware
- Enhance Telegram alert with specific feature details
Fix
-
Add no_auth check in feature_blocklist
Release v1.2.4
Unreleased
v1.2.4 - 2024-09-10
Feat
-
Add blocklist feature integration
- Add Dockerfile and switch to fmt for error print
- Add initial blocklist service with periodic updates
- Add request start time and latency logging
Fix
-
Ensure Lua stack is clean before running scripts.