banhack233
HOST PROTECTION, MADE PRACTICAL
Changelogv0.2.3

fail2ban / sshguard style · Host audits · Keepalive · Notifications · Autostart

Changelog

中文

v0.2.3 — 2026-10-11

  • English and Simplified Chinese notification text, global and per-channel language selection, UTC/IANA time zones and unambiguous numeric offsets. Includes console, Telegram, Discord, Slack, Feishu/Lark, generic webhooks and email; durable retries use the configured language.
  • init-config -language en -timezone UTC creates a platform-specific English configuration. Existing configurations retain Chinese/host-local notifications unless explicitly changed.
  • New defaults no longer include a Guangzhou-specific threshold exception. Explicit existing regional policies remain unchanged; password-only counting, office whitelists and successful-login grace continue to apply.
  • Independent SMTP username and password_env support, with documented app-password/OAuth2 boundaries and proxy behavior.
  • Synchronized Chinese/English onboarding, international operations, English example download and English changelog. Corrected platform permissions, pinned-install version, initial startup order and manual checksum instructions. HTML expands to 22 pages with matching language navigation.
  • Release frequency is unchanged: only stable release tags start CI; Pages updates after successful checks and publication. Daily host updates remain opt-in and preserve local configuration.

New locale/SMTP fields require v0.2.3+. Remove these fields before a manual downgrade to an older strict-config version. Normal upgrades do not rewrite existing configuration.

v0.2.2 — 2026-10-11

  • Raised asset-download timeouts to 10 minutes after testing a slow international link, while keeping shorter connection/TLS/header limits. The updater has a 15-minute total limit; Linux/Windows tasks allow 20 minutes.
  • Installers use the same download allowance. Failed downloads/checks retain the old binary; daily frequency, configuration, whitelists and protection policy are unchanged.

v0.2.1 — 2026-10-11

  • Go 1.27.2 release builds fix loading on macOS 26. The v0.2.0 tag failed the release gate and produced no published Release or website deployment.
  • Production startup migrates this project's legacy all-port nft rule to configured SSH ports, preserving its ban sets.
  • Password-only defaults, per-user counters, successful-login reset and a 10-minute grace period; explicit safe-ssh migration for existing default rules.
  • Windows event-ID cursors/deduplication and destination-port enforcement; configurable SSH ports, per-rule file cursors, partial-line handling and exclusive state writer locks.
  • Telegram, bounded Discord payloads with mentions disabled, channel-isolated delivery and durable retries; TLS/STARTTLS SMTP.
  • Strict config-check, correct rule-array replacement and a production toggle that changes only dry_run. Read-only audits, conservative manual cleanup and non-overwriting reports.
  • Verified daily stable updates with retained configuration/state, backups and restart-failure rollback across systemd, launchd and Windows tasks.
  • Checksummed installers generate platform-specific configurations. Runtime secrets/files remain ignored. Nineteen HTML pages cover commands, configuration, operations, recovery, architecture, notifications and updates in both languages.

Existing rules are not silently migrated. Preview safe-ssh, apply safe-ssh -write if appropriate and restart. Daily updates require auto-update -enable.

v0.1.22 — 2026-10-06

  • Bilingual GitHub Pages and an offline HTML archive, with section search, copy buttons, configuration download and mobile navigation.
  • Documentation builds from the release tag and identifies its version/commit.
  • Stable tags alone trigger gated tests, six-platform packaging, checksums, Release publication and Pages. Failed or older releases cannot replace current documentation; ordinary pushes and PRs do not run Actions.

v0.1.21 — 2026-10-03

  • IPv4/IPv6 <HOST> matching and dual-stack ban/release operations; malformed log IPs are skipped without interrupting scanning.

v0.1.20 — 2026-10-03

  • Expanded SSH failure detection and successful-login resets. Later releases narrowed defaults to explicit password failures.

v0.1.19 — 2026-10-03

  • Office whitelists, per-user counts, regional thresholds, expiry handling and SSH-port enforcement; Go operational/integration tools.

Earlier versions are available on GitHub Releases.