Skip to content

Update nftban_init_nftables_conf.sh#17

Merged
itcmsgr merged 1 commit intomainfrom
itcmsgr-cloudflare_support
Sep 13, 2025
Merged

Update nftban_init_nftables_conf.sh#17
itcmsgr merged 1 commit intomainfrom
itcmsgr-cloudflare_support

Conversation

@itcmsgr
Copy link
Copy Markdown
Owner

@itcmsgr itcmsgr commented Sep 13, 2025

Added cloudflare public ips

@itcmsgr itcmsgr merged commit 852a314 into main Sep 13, 2025
itcmsgr added a commit that referenced this pull request Jan 2, 2026
itcmsgr added a commit that referenced this pull request Jan 25, 2026
Phase 3 of v1.6.0 architecture cleanup:

ADDED - Missing metrics to JSON cache (#6):
- memory section: rss_bytes, open_fds, threads
- network section: rx_mbps, tx_mbps, peak values, connections
- Cache now has 44+ metrics (up from 41)

OPTIMIZED - Stats functions (#7):
- nftban_stats_top_sources() now uses cache-first pattern
- Reads from .bans_by_source for all-time stats
- Reads from .bans_by_source_24h for 24h stats
- Fallback to log parsing for custom date ranges

CONFIGURED - Prometheus default OFF (#8):
- NFTBAN_EXPORT_PROMETHEUS="false" confirmed as default
- Added smart auto-detection: enables if node_exporter detected
- Added documentation: "Prometheus is optional adapter, not backend"
- Our backend: stats.json + bans.log (not Prometheus)

UPDATED - Health checks (#17):
- Removed legacy zabbix timer migration warning
- All health checks now reference unified exporter only
- Fresh install will pass health checks

VERIFIED - Zabbix integration (#15):
- export_zabbix() function confirmed working
- Uses zabbix_sender protocol
- Supports TLS/PSK, failover, auto-firewall
- LLD infrastructure in place

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
itcmsgr added a commit that referenced this pull request Apr 28, 2026
Architecture Policy / Policy Gates → Suppression comment audit failed
on PR #511 with one false-positive grep hit:

  ./cmd/nftban-installer/restore_deps_csf_test.go:829:
  // 4B-3-csf — Test #17: no //nolint:unused on consumed mutation fields.

The literal substring //nolint: appears only as prose inside the test's
section-header comment — it is NOT an actual suppression directive on
a code line. The policy gate's grep does not distinguish prose from a
trailing-of-line directive, so the gate fails on its own description.

Rephrased to "consumed mutation fields have no stale lint-suppression
annotations." — semantics unchanged, no zero-width characters, no
literal forbidden substring.

The companion test
TestCSFMutate_4B3csf_NoNolintUnusedOnMutationFields (function name,
not a comment) is a Go identifier and does not contain the //nolint:
substring; it is unaffected. Test behavior unchanged.

Local grep replay (the exact failing command):
  grep -r '//nolint:' --include="*.go" .
  → 0 hits

lab2 (Ubuntu 24.04, go1.22.2):
  go test ./cmd/nftban-installer/... PASS
  go test ./...                       PASS

No production code touched. No workflow touched. No other test
touched.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant