Quick Start¶
Get a server running, pair it, and run your first scan. This is the short path; Install & Pair has every platform and option.
1. Get a server running¶
One-line install (easiest; Kali / Debian 12+ / Ubuntu 22.04+):
That adds the signed apt repository and installsraven-server, so Raven
upgrades with the rest of your system (apt upgrade). Add the operator client
with sudo apt install raven-cli.
Don't apt install raven
Debian ships an unrelated package called raven (Kali inherits it) whose
version outranks ours, so that command installs the wrong tool. Ours are
raven-server and raven-cli.
Docker (most platforms):
gunzip -c raven-pro-*.tar.gz | docker load
mkdir -p ~/raven/pentests ~/raven/auth ~/raven/config
docker run -d --name raven-pro --restart unless-stopped \
-p 8080:8080 \
-v ~/raven/pentests:/home/raven/pentests \
-v ~/raven/auth:/home/raven/.raven \
-v ~/raven/config:/home/raven/.config/raven \
--cap-add=NET_RAW --cap-add=NET_ADMIN \
<image-tag>
No license key
Single-user Raven Pro has no LICENSE_KEY, so don't set one. Access is granted by pairing with your Chamber Door account in step 3. (If an older note told you to set LICENSE_KEY and the container restart-loops with "License validation failed", you're on an old image; pull the latest tarball.)
Bare binary (toolchain already installed):
# Linux (amd64 or arm64)
chmod +x raven-server-linux-* && sudo mv raven-server-linux-* /usr/local/bin/raven-server
# macOS (Apple Silicon). Clear the Gatekeeper quarantine flag first, or macOS
# kills the unsigned binary on launch. `xattr -cr` is a no-op when the flag was
# never set (a curl download never sets it), so it is safe to run either way.
chmod +x raven-server-darwin-arm64
xattr -cr raven-server-darwin-arm64
sudo mv raven-server-darwin-arm64 /usr/local/bin/raven-server
raven-server start -p 8080 --no-browser
Only recommended where the pentest toolchain (nmap, nuclei, and friends) is
already installed natively; elsewhere tool-using features silently do nothing.
On macOS and Windows the Docker image above is the supported default.
2. Open the dashboard¶
Browse to http://localhost:8080.
The dashboard has no authentication in single-user mode, so where it listens matters:
- Bare binary: binds loopback by default. Nothing else on your network can reach it.
- Docker on macOS/Windows: the documented
-p 127.0.0.1:8080:8080publishes to loopback only. A bare-p 8080:8080would publish on every interface instead. - Docker on Linux:
--network hostis used so Raven can scan your local network directly. That also means the dashboard listens on your network interfaces, not just localhost. On an untrusted network (client site, shared wifi) swap it for-p 127.0.0.1:8080:8080, accepting reduced host-network scanning.
For a remote or VM host, keep it on loopback and tunnel in:
3. Pair the device (enables AI)¶
Click Pair this device in the dashboard, or run:
In Docker the command israven, not raven-server. The image ships the CLI
as raven; raven-server is the bare-binary (and apt package) name.
Confirm in the browser at the printed URL. Pairing is one-time per machine; the token is saved under your mounted auth/ volume (or ~/.raven/).
4. Create an engagement and scan¶
In the web UI: New Engagement → name your client → run a module (e.g. an nmap profile) from Tools → Modules. Results auto-parse into hosts and findings.
5. Ask the AI¶
Tools → AI Analysis. Ask it to review your current engagement state and suggest next steps. Your data is anonymized before it's sent; the response comes back and is de-anonymized on your machine, so real host and IP names never leave the binary.
Next: CLI / REPL to drive all of this from the terminal, or AI Analysis for the advisor in depth.