Built into SSH Workbench

Server monitoring without agents

Watch your servers, cron jobs, disks, processes, backups, and SSL certs, all from cron pings your server initiates. No agent to install. No inbound ports to open. Every check is a cron entry you can read.

Start free trial

How it works

Two steps. No SDK, no API integration, no agent.

01

Pick what to watch

Point and click in SSH Workbench, or one command with the ServerOx CLI.

Server uptimeCron jobsDisk spaceMemory & swapProcess & service livenessBackup verificationSSL certificatesLog line alerts
02

Alerts come to you

Your server checks itself on schedule and pings out. When a ping is late or a check fails, you get an email or a webhook.

Nothing listens on your server and nothing connects in. Every check is a cron entry you can read, edit or delete.

Two choices, and they are independent

How checks get set up, and where the pings land. Mix them however you like.

Setting up checks

SSH Workbench
Point and click, across your whole fleet, nothing to configure. Part of your license.
ServerOx CLI
Free and open source. One command per check, on one server at a time.

Where pings land

Our receiver
The default. Nothing to run and nothing to maintain, with email and webhook alerts already wired up.
Your own ServerOx
One deploy, and every ping stays on your infrastructure. Works with either client.
The CLI points at our receiver by default and at yours with a flag. Nothing here locks you in, which is the point of open sourcing the receiver.

Four subscriptions, or one agent you did not want

This is what people usually stitch together to cover the same ground.

Cron and heartbeats
  • Cronitor
  • Healthchecks
Uptime and alerting
  • Better Stack
  • UptimeRobot
Metrics and logs
  • Datadog
  • Netdata
SSH Workbench

All of it from cron entries your server already knows how to run. No daemon, no inbound port, and the receiver is open source.

No agent. No daemon. No inbound port.

Most monitoring tools install a binary that runs as root and phones home with a black-box payload. Ours writes one line of cron you can read, edit or delete. The receiver it pings is open source, so you can read that too, or run your own.

Here is what a service check looks like once it is on the server.
# /etc/cron.d/sshworkbench-monitors
*/2 * * * * root systemctl is-active nginx && curl -fsS https://monitor.sshworkbench.com/p/def
Your server pings us on its schedule. Missed heartbeats, breached thresholds, or failed runs all turn into alerts.

What a ping actually carries

Enough to know whether a check passed, and nothing else.

What we receive

  • A ping ID (random token)
  • Timestamp of the ping
  • Optional exit code or value (e.g. disk %)
  • Source IP (transit-only)

What we don't

  • No SSH credentials, no keys, no commands
  • No file contents, no log contents, no command output
  • No process trees, network traffic, or system inventory
  • No long-running connection to your server

Watch the things that take servers down

Eight check types covering 90% of why sysadmins get paged at 3am.

Server uptime

Know within seconds when a server stops checking in. Get alerted before your users do.

Cron jobs

Heartbeat monitoring on every scheduled job. Get paged the moment a run misses, fails, or runs too long.

Disk space

Threshold alerts per mount point. Catch /var or /home filling up before the database stops writing.

Memory & swap

Get warned when a server starts thrashing, usually right before SSH itself stops responding.

Process & service liveness

Watch nginx, postgres, your custom binary, anything systemd or pgrep can see. Alerts when it stops running.

Backup verification

Not just "did the backup script run." Checks the file exists, has size, and is fresher than your threshold.

SSL certificates

Track expiry across all your domains. Alerts at 30, 14, and 3 days. No more 3am Let's Encrypt surprises.

Log line alerts

Match patterns in any log file: OOM Killer, panic, fatal, your own keywords. One ping when they appear.

Stop finding out from users

Set up monitoring across every server in your fleet in under a minute.