Commit Graph

266 Commits

Author SHA1 Message Date
kor-elf d2f3640b75 Update CHANGELOG for upcoming v0.11.0 release with go-nftables-client update details 2026-04-26 17:41:08 +05:00
kor-elf 1363ff4bef Upgrade go-nftables-client to v0.2.0 and update imports to reflect new contract package structure 2026-04-26 17:36:47 +05:00
kor-elf 4c2d11423d Update CHANGELOG with release date for version 0.10.0 2026-04-12 12:23:58 +05:00
kor-elf 671346e735 Add third-party licenses for kor-elf-shield and geoip2 dependencies 2026-04-12 02:44:33 +05:00
kor-elf b500d9fe57 Update CHANGELOG with improved kor-elf-shield status command output 2026-04-12 02:33:31 +05:00
kor-elf 64c44085ea Add daemon status enhancements: uptime, memory stats, and version details 2026-04-12 02:30:37 +05:00
kor-elf 88264e1f4f Add HumanBytes util for formatting bytes into human-readable strings 2026-04-12 02:29:23 +05:00
kor-elf 954f3b4ce2 Enhance log notifications to include message count in all locales and update related analysis logic 2026-04-12 01:25:26 +05:00
kor-elf 9298f09b2e Fix: update CHANGELOG with bug fix for extra logs in notifications 2026-04-12 01:19:07 +05:00
kor-elf 086aa784ea During the analysis process, the LastLogs field must be reset if it does not meet the request rate limit 2026-04-12 01:17:07 +05:00
kor-elf 96ded2fc43 Add extra line break after log messages for improved readability in notifications 2026-04-12 00:43:23 +05:00
kor-elf 6586e876d9 Update CHANGELOG with new GeoIP CLI commands for info retrieval and database refresh 2026-04-11 23:34:20 +05:00
kor-elf 90a8374c93 Add GeoIP CLI commands for info retrieval and database refresh, with daemon and i18n support 2026-04-11 23:29:52 +05:00
kor-elf 0352bf7dd7 Update CHANGELOG with type field addition for IP alerts in analyzer.toml and GeoIP-related changes 2026-04-11 22:46:12 +05:00
kor-elf d249bcdf16 Add type field to pattern values and integrate IP-specific logic into alert analysis 2026-04-11 22:42:06 +05:00
kor-elf e0395f6dc1 Update CHANGELOG for version 0.10.0 with GeoIP-related changes and new configuration details 2026-04-11 22:37:22 +05:00
kor-elf ab4496f6b8 Integrate GeoIP service initialization and lifecycle management into the daemon startup process. 2026-04-11 18:02:54 +05:00
kor-elf a084fef3d2 Integrate GeoIP data into brute force protection analysis logic. 2026-04-11 18:01:58 +05:00
kor-elf 9a9899958b Add GeoIP settings and configuration logic with MaxMind service integration 2026-04-11 18:00:55 +05:00
kor-elf 9bfabd2148 Add GeoIP support with configurable service and logger integration 2026-04-11 17:35:55 +05:00
kor-elf 1298685ca4 Remove debug fmt.Println from ToConfigPortKnocking 2026-04-10 23:52:30 +05:00
kor-elf a87eade21c Update CHANGELOG with release date for version 0.9.0 2026-03-21 18:49:32 +05:00
kor-elf 447755dcc0 Update CHANGELOG for port-knocking support and related configuration changes 2026-03-20 21:51:31 +05:00
kor-elf 6271682e4b Add port-knocking configuration example to firewall settings 2026-03-20 21:38:55 +05:00
kor-elf c3571259a0 Add PortKnocking support to settings and configuration logic 2026-03-20 21:36:38 +05:00
kor-elf 9a406bedb6 Integrate port-knocking reload logic into firewall's input processing 2026-03-20 21:24:25 +05:00
kor-elf d25932ef7d Add KnockAction type with constants and String method for action representation 2026-03-20 21:24:00 +05:00
kor-elf a31386ed10 Add ToKnockAction method to map string actions to KnockAction types 2026-03-20 21:23:39 +05:00
kor-elf 9de460d2c9 Add PortKnocking interface and implementation to manage port-knocking rules and sequences 2026-03-20 21:23:15 +05:00
kor-elf 2a2ec666e6 Add NewPortKnocking method to block for port knocking rule initialization 2026-03-20 21:22:08 +05:00
kor-elf f198ec2c2c Add PortKnocking configuration to firewall with support for knock sequences 2026-03-20 21:20:58 +05:00
kor-elf 12bdd9ca3e Add ToNftForSet method to map IP versions to nftables set types 2026-03-20 21:20:06 +05:00
kor-elf d796b3a61b Update CHANGELOG for v0.9.0 with new blocklist features and configuration options 2026-03-19 20:24:57 +05:00
kor-elf a49bf15023 Add default blocklists.toml configuration file with predefined blocklist sources and parameters 2026-03-19 19:54:20 +05:00
kor-elf 9597257a07 Add blocklists path setting to kor-elf-shield configuration file 2026-03-19 19:54:04 +05:00
kor-elf bfcaca27a9 Integrate blocklist into daemon lifecycle and initialize blocklist service in NewDaemon 2026-03-19 19:53:47 +05:00
kor-elf 14168d3765 Integrate blocklist into firewall with support for blocklist reloading during nftables rule reloads 2026-03-19 19:53:06 +05:00
kor-elf 4587b522be Add ToBlocklistConfig method to map blocklist settings and sources
- Updated `otherSettingsPath` struct to include `Blocklists` field.
- Added `/etc/kor-elf-shield/blocklists.toml` as the default blocklist path.
- Implemented `ToBlocklistConfig` for parsing blocklist settings, validating sources, and enabling blocklist support.
2026-03-19 19:52:43 +05:00
kor-elf d2e5db7f66 Add NewBlocklist method to chains for blocklist creation and rule initialization 2026-03-19 19:52:07 +05:00
kor-elf eaa3513e03 Add blocklists package for managing blocklist settings and sources
- Introduced `blocklists` package to handle blocklist configuration and source processing.
- Added `Setting` struct with TOML file validation, default values, and configuration parsing.
- Implemented `Sources` struct for defining blocklist source attributes and validation.
- Added support for JSON, TXT, and RSS source types with respective parsers.
2026-03-19 19:51:47 +05:00
kor-elf 6d35c3e5bf Add FalseBlocklist implementation for no-op blocklist operations
- Introduced `FalseBlocklist` struct as a placeholder implementation of the `Blocklist` interface.
- Added `NftReload`, `Run`, and `Close` methods with no-op behavior.
2026-03-19 19:50:53 +05:00
kor-elf 3061d0f31e Add blocklist package with implementation of Blocklist interface
- Introduced `blocklist` package for managing blocklist lifecycle and operations.
- Implemented methods for reloading, running, and closing blocklists.
- Added `refreshSource` and `processUpdateData` for handling source updates.
- Integrated lock mechanisms for thread-safe operations.
2026-03-19 19:50:19 +05:00
kor-elf 5e0fb5787a Add BlocklistSource interface and implementations for fetching blocklist data
- Introduced `BlocklistSource` interface with `Get` method to retrieve IPv4/IPv6 blocklists.
- Added `blocklistSource` and `blocklistSourceZip` structures to support standard and ZIP-configured data sources.
2026-03-19 19:49:21 +05:00
kor-elf c0573c4e36 Add Config struct for blocklist configuration management
- Introduced `Config` and `SourceConfig` structs to manage blocklist repository and source settings.
2026-03-19 19:48:37 +05:00
kor-elf 8468fe851b Add blocklist implementation for managing IPv4/IPv6 blocklists
- Implemented `Blocklist` interface with methods for replacing blocklist elements and adding rules to chains.
- Added support for both IPv4 and IPv6 address handling.
- Introduced `NewBlocklist` for initializing blocklist instances.
2026-03-19 19:47:13 +05:00
kor-elf 6438358a53 Add ReplaceElements method for batch updating firewall blocklist
- Introduced `ReplaceElements` to allow bulk replacement of blocklist entries.
- Implemented `chunkStrings` helper for batching updates efficiently.
2026-03-19 19:45:38 +05:00
kor-elf 489c5c0cbe Add blocklistBucket for Blocklist handling in repository 2026-03-19 19:35:47 +05:00
kor-elf 7c15813b0e Add Blocklist repository with CRUD operations
- Implemented `Blocklist` entity.
- Introduced `BlocklistRepository` with `Get` and `Update` methods.
- Updated repository interface and initialization to include blocklist handling.
2026-03-19 19:35:19 +05:00
kor-elf 3515b66dc7 Update dependencies: add kor-elf-shield/blocklist v1.1.0. 2026-03-19 19:34:00 +05:00
kor-elf 63bc845b8b Update CHANGELOG.md to set release date for version 0.8.0 2026-03-09 21:26:14 +05:00