Skip to content
Open-source · Apache-2.0 · Rust

The security agent that fights back.

Other tools alert you. Inner Warden detects, scores, and blocks attacks autonomously. 40 eBPF kernel hooks deep in your Linux kernel. Dry-run by default. Open-source, built in Rust.

GitHub stars|Live threat feed|Blocks attacks in 4s · Installs in 10s · Alerts on Telegram
Zero to protected
Install
curl -fsSL https://www.innerwarden.com/install | sudo bash
Setup runs automatically
innerwarden setup
install
~10s
memory
~150 MB
default
safe
How it works

Five stages. Fully automatic.

Stage 1
Threats
  • SSH brute-force
  • Port scan
  • Privilege escalation
  • Container escape
  • Remote control
🔍
Stage 2
Detection
  • 40 kernel monitors
  • Network inspection
  • Traffic fingerprinting
  • Process tracking
  • File watching
Deep system monitoring
🌍
Stage 3
Correlation
  • 47 cross-layer rules
  • Behavior learning
  • Attack fingerprint
  • Campaign detection
🧠
Stage 4
AI Triage
  • Confidence score
  • 12 AI providers
  • Your rules apply
  • Optional
🛡
Stage 5
Response
  • Instant block
  • Firewall rule
  • Honeypot trap
  • Kill process
  • Audit trail
🌐
Mesh Network
Attack one node → all others block automatically
active
Why you need this

Attacks don't wait. Your defense shouldn't either.

Threats are constant

SSH brute-force, port scans, web scanners, credential stuffing. Every public server gets hit. Most operators discover this only after something goes wrong.

Detect, score, block. Automatically.

Inner Warden watches your logs in real time. Every threat gets an AI-scored confidence level. Above your threshold? Firewall rule added. Telegram alert sent.

You stay in control

Dry-run by default. Full audit trail. Every decision logged. Approve or deny actions from Telegram. Go live only when you trust the decisions.

See it in action

It's 2 AM. Someone brute-forces your SSH. You're asleep.

Here's what Inner Warden does while you sleep.

1

Threat contained. 4 seconds.

8 failed SSH logins in 300 seconds from 203.0.113.42. Inner Warden catches the pattern, AI confirms brute-force with 0.90 confidence. Firewall deny rule added via ufw. Your phone buzzes with the Telegram alert.

2

Honeypot traps the attacker.

A different IP tries the same trick. This time they hit the honeypot. Fake SSH session, real capture. Every credential and command logged. Session ends, IP blocked, transcript saved.

Blocked IPs are reported to AbuseIPDB and pushed to Cloudflare WAF. Your defense protects others too.
Deep protection

Other tools just alert you. Inner Warden stops threats before they execute.

Inner Warden runs deep inside your Linux kernel. It monitors every process, every connection, and every command. When an attacker tries to get in, the attack is blocked before it can do any damage. No delay. No way around it.

🛡️
Blocks attacks at the source

Monitors 40 critical system operations. When something suspicious happens, the attack is stopped before it can cause harm. No waiting, no manual intervention.

⛓️
Recognizes attack patterns

Tracks 7 common attack sequences: reverse shells, code injection, privilege escalation, and more. The attacker never gets a foothold on your server.

🚫
Prevents unauthorized execution

Blocks malicious scripts from running in temporary directories. Uses the same security framework trusted by enterprise Linux distributions. Safe by default.

Drops malicious traffic instantly

Known attackers are blocked at the network level before they can even reach your server. Handles millions of packets per second with near-zero CPU impact.

🔇
Smart noise filtering

Knows the difference between normal system activity and real threats. 137 safe processes are recognized automatically. You only get alerted when it actually matters.

🧬
Tracks attackers across IPs

Behavioral DNA fingerprinting identifies the same attacker even when they switch VPNs or Tor nodes. Risk scores and detector knowledge transfer automatically to the new IP.

How it protects you

Start safe. Scale up when ready.

Every feature is off by default. Enable what you need, when you need it.

Basic Protection
Start here
  • SSH brute-force detection
  • Credential stuffing detection
  • Real-time monitoring
  • Full audit trail
  • Telegram notifications
  • Dry-run mode by default
Automated Defense
Enable when ready
  • Auto-block malicious IPs
  • AI-powered confidence scoring
  • Actions require your approval
  • Cloudflare WAF integration
  • AbuseIPDB reporting
  • nginx rate limiting
Advanced
Optional power-ups
  • Cross-IP attacker tracking (DNA)
  • Neural anomaly detection (daily retrain)
  • 47 cross-layer correlation rules
  • SSH honeypot trap
  • AI command validation for agents
  • DDoS shield with adaptive rate limiting
Not sure what to enable? One command figures it out.
innerwarden system scan

Scans your server, detects what's running (SSH, Docker, nginx, Suricata, osquery...), and tells you exactly what to enable.

Built for trust

What if it makes a mistake?

Dry-run by default
Nothing changes until you explicitly enable live mode.
Rust controls execution
The AI can analyze, but never execute. A compromised model cannot harm your server.
Hash-chained audit trail
Every decision and action is logged in a tamper-proof chain. You can always review what happened and why. GDPR export and erase built in.
Policy-gated actions
You decide what gets blocked and what gets flagged. Set your own thresholds and rules.
Telegram approval
High-risk actions require manual approve/deny from your phone.
Compliance

Designed for regulated environments.

Inner Warden ships with the controls auditors look for. Hash-chained audit trails, admin action logging, session management, configurable retention, and GDPR data subject commands. Everything included, Apache-2.0 licensed. Built in from day one.

SHA-256 hash-chained audit trail
Every decision and admin action recorded in tamper-evident JSONL with cryptographic integrity. Modify one entry and the chain breaks.
Admin action logging
Every capability enable, config change, IP block, and login recorded with operator identity, timestamp, and parameters.
GDPR export and erase
innerwarden gdpr export and innerwarden gdpr erase. Search by IP or username across all data files. Hash chains recomputed after erasure.
Configurable retention
Events: 7 days. Incidents: 30 days. Audit trail: 90 days. All configurable per your compliance requirements.
Session-based authentication
Dashboard auth with session tokens, configurable timeout, max concurrent sessions, and automatic expiry. Login and logout audited.
Forensic evidence capture
Automatic process state snapshots for high-severity incidents: open files, network connections, memory maps. Credentials redacted.

Designed to meet ISO 27001 Annex A controls (A.9, A.10, A.12, A.16, A.18). Read the full privacy and data protection documentation.

Safe to install

Yes, it's curl | bash. Here's what it does.

curl -fsSL https://www.innerwarden.com/install | sudo bash
  • Downloads a single SHA-256 verified binary (~7 MB) to /usr/local/bin
  • Creates a dedicated service user with minimal permissions
  • Starts sensor + agent via systemd (Linux) or launchd (macOS)
  • Begins in dry-run mode. No firewall changes until you say so.

Want to read the script first? innerwarden.com/install

Your phone is the dashboard

Talk to your server on Telegram.

Real-time alerts, approve/deny actions, and a conversational bot that answers questions about your server's security.

Inner Wardenbot
online
🔥 Target eliminated | my-vps-01
Blocked 203.0.113.42
📊 AbuseIPDB: 100/100
🇺🇸 United States · Example Hosting
Possible SSH brute force from 203.0.113.42
Confidence: 99% | Clean kill. Zero doubt.
09:48
How is everything today?
11:25
Operationally, it's a busy day but under control.
You've had 10 intrusion attempts today and the guard rails are doing their job. Two likely SSH brute-force sources and one credential-stuffing pattern from 198.51.100.17 hitting multiple usernames.
Net assessment: low-to-moderate risk right now, not an active compromise. No signs of lateral movement, persistence, or exfil.
If you want the hardening posture tightened:
- keep SSH rate limiting active
- ensure password auth is off if you can
- consider blocking the two offending IPs
11:25
Menu
Message
Bot commands
All available commands
Guardian status: mode, AI, threat intel
/status
Recent intrusion attempts
/threats
Actions I've taken
/decisions
Threat actors currently contained
/blocked
Full health check with fix hints
/doctor
Activate auto-defend mode
/guard
Switch to passive monitor mode
/watch
Ask me anything, I know my config
/ask
Set up in one command
innerwarden config telegram

Interactive wizard. Bot token and chat ID via prompts.

Collaborative defense

Attack one node. Protect them all.

Inner Warden nodes form a mesh network. When one detects a threat, all others block the attacker automatically. Like birds that fly when one hears danger.

🔏
Ed25519 signed

Every threat signal is cryptographically signed. Tampered signals are rejected instantly.

🎯
Game-theory trust

Tit-for-tat reputation. New peers start skeptical. Trust grows with confirmed signals, drops with false ones. 3:1 asymmetry.

⏱️
Staged with TTL

No signal causes permanent action. Everything is scored and staged. Blocks auto-revert if not confirmed locally.

🛡️
Sybil resistant

New nodes start at trust 0.1. Rate-limited to 50 signals/hour. Malicious nodes get quarantined automatically.

Enable in seconds
innerwarden config mesh enable
innerwarden config mesh add-peer https://peer-server:8790

That's it. Identity generated automatically. Peers discovered via ping. Trust builds over time as signals get confirmed.

How it compares

Not another alert tool.

Inner WardenFalcoWazuhCrowdSec
Kernel-level detection (eBPF)40 hooksRules-basedNoNo
Autonomous response20 playbooksAlert onlyLimitedIP only
AI-powered triage12 providersNoNoNo
Behavioral DNA fingerprintingCross-IP trackingNoNoNo
Mesh collaborative defenseEd25519 signedNoNoCommunity lists
AI agent protection71 rulesNoNoNo
Dry-run by defaultYesN/AYesYes
Memory footprint~150 MB~60 MB~500 MB+~50 MB
LicenseApache-2.0Apache-2.0GPLAGPL
The story

Why I built this.

Every security tool I tried either just alerted me (Falco), required a massive stack to do anything useful (Wazuh + ELK + SIEM), or couldn't act autonomously when it mattered most — at 2 AM when I was asleep.

I wanted something that could detect a reverse shell at the kernel level, block the attacker, deploy a honeypot to capture their tools, and alert me on Telegram — all in under 5 seconds, with zero external dependencies.

So I built it. Solo developer. 37 releases. Apache-2.0 licensed. Running in production on my own servers, blocking real attacks every day.

If this project helps protect your servers, give it a star so others can find it.

Ready?

Your server should defend itself. Let it.

40 kernel hooks. 49 detectors. 47 correlation rules. Cross-IP attacker tracking. Neural anomaly detection with daily retrain. Install in 10 seconds. Dry-run by default.