GateBell is a real-time SSH gateway monitor. It watches every connection attempt, successful login, logout and port event on your server and delivers instant alerts — without any overhead that would slow your system down.
GateBell hooks into PAM (Pluggable Authentication Modules) so it intercepts events before they reach the shell. There is nothing to change in your SSH configuration. No agents, no proxies, no network tap required.
Every event is logged in structured JSON and can be exported to any SIEM, ELK Stack or Splunk pipeline. IP geo-location and reputation checks run on every connection automatically.
GateBell is designed to be installed in under five minutes and never require maintenance. It watches silently in the background and speaks up only when something needs your attention.
Configure one or more alert channels. GateBell sends to all of them simultaneously when a rule is triggered.
gatebell test-alert — GateBell will fire a test notification to all configured channels and show you the result.No API key required. No reboot. No changes to your SSH configuration.
Choose your package manager. The repository is the same for all distros — GateBell auto-detects your system.
Add at least one notification channel. Slack webhook is the quickest to set up.
Send a test notification to verify your setup before relying on it in production.
Config file: /etc/gatebell/gatebell.conf
| Key | Default | Description |
|---|---|---|
| interfaces | * | Interfaces to monitor (comma-sep or *) |
| ban_threshold | 5 | Failed attempts before auto-ban |
| ban_window_sec | 60 | Window for counting failed attempts |
| ban_duration_min | 1440 | Ban duration in minutes (1440 = 24h) |
| geo_lookup | true | Enable IP geo-location lookup |
| audit_log | /var/log/gatebell/events.log | Structured JSON event log path |
| log_format | json | Log format: json or text |
| api_port | 7475 | REST API listening port |
allow silent=true to prevent alert fatigue from your own team's connections.GateBell exposes a local REST API on port 7475 by default. All endpoints require the API token set in your config.
| Method + Path | Description |
|---|---|
| GET /api/status | Daemon health, uptime, interface count |
| GET /api/events | Recent events — filterable by type, IP, user |
| GET /api/bans | List all currently active IP bans |
| POST /api/bans | Manually add an IP to the ban list |
| DELETE /api/bans/:ip | Remove an IP from the ban list |
| GET /api/rules | List all configured rules |
| POST /api/test-alert | Send test notification to all channels |
| GET /api/metrics | Prometheus-format metrics endpoint |
Install GateBell in under 5 minutes. Free, open source, always will be.