Security

EdgeOwl holds the one thing that matters most about your routers, their configuration, so this page spells out exactly what we can and cannot do with it. Short version: we store your backups, but we cannot read them, and you can leave with them at any time.

01

Encryption and your key

Every backup EdgeOwl makes, the readable export and the binary file, is encrypted with age, an open-source tool built on X25519. age works with a key pair: a public half that can lock a file and a private half that can open it.

Your key pair is created in your browser when you sign up. The private half never leaves you: it is shown once as a recovery code and is never sent to our servers. We keep only the public half, so we can lock backups for you but have no way to open them.

The same rule applies to our own staff, to anyone who gets hold of our storage, and to any authority that asks. There is nothing on our side that decrypts a backup.

[TODO: engineering to confirm where in the pipeline the export is encrypted and the exact wording]

How a backup travels
1
Export on the router
The restricted edgeowl user runs /export and /system backup save.
2
Transfer to EdgeOwl
Over SSH from our addresses (egress.edgeowl.org), or through the Relay tunnel for routers behind NAT.
3
Locked with your public key
age encrypts both files for your key. From here on, only your private key can open them.
4
Stored in Frankfurt
Encrypted files go to AWS eu-central-1. We keep dates and sizes; the contents are opaque to us.
Algorithm
age · X25519 · ChaCha20-Poly1305
Your key
age1q8…k4m · created in your browser
Our copy
public half only

02

What we can and cannot see

To run the service we need some facts about each router: what model it is, which RouterOS version it runs, when the last backup happened and whether jobs succeed. That is operational metadata, and it is the list on the left of the table.

What we cannot see is everything inside the backup: interface names, addresses, firewall rules, VPN secrets, user accounts. We also cannot see your encryption key. The router password that the setup script creates for us is encrypted at rest in our database; the key lives only in the app's environment, not in the database. It is only ever decrypted inside our servers at the moment of a job.

Your account and billing details are the personal data we hold; the full list is in the Privacy Policy. Payments themselves go through Paddle, so card numbers never reach us.

What we can see What we cannot see
Device model and versionConfiguration contents
Backup dates and sizesBackup contents
Job results and errorsYour encryption key
Your email and billing detailsYour router passwords in clear text

03

Access to your router

EdgeOwl never asks for your admin password. The setup script you paste into the terminal creates edgeowl, a dedicated user with only the policies backups and updates need (read, write, rest-api, test, sensitive, ftp, reboot, ssh): no Winbox, no WebFig, no user management. It is reachable only from our addresses (egress.edgeowl.org) and every action is logged in your dashboard. Revoke it any time with /user remove edgeowl.

The router's own firewall does the limiting: it accepts REST and SSH only from the addresses behind egress.edgeowl.org, a name RouterOS resolves and keeps up to date by itself. A router behind NAT or CGNAT uses the Relay instead: it opens an outbound SSTP tunnel (RouterOS 7) to our Relay servers, so nothing is opened on the firewall and no port is forwarded.

Revoking access takes one command on the router: delete the user. EdgeOwl loses the connection immediately, and your backups stay available for download.

The exact script and policies are in the setup guide; this is a shortened example.

What the setup script doesdedicated user
# a separate user with only the policies the jobs need
/user group add name=edgeowl policy=read,write,rest-api,test,sensitive,ftp,reboot,ssh
/user add name=edgeowl group=edgeowl password="…"
# the firewall accepts REST and SSH only from this list
/ip firewall address-list add list=edgeowl address=egress.edgeowl.org
# revoke at any time:
/user remove edgeowl

04

Safe updates

An update is the one job that can break a router, so it is the most conservative thing EdgeOwl does. Every update starts with a fresh backup. If the backup fails, the update does not run, full stop.

  1. Backup: export and binary, encrypted and stored.
  2. Check the channel: we install only the version RouterOS itself offers in the device's own channel, stable or long-term. We never jump major versions automatically.
  3. Install and reboot.
  4. Wait for the router, then run Check: it must answer, and the version must match.
  5. If it does not come back, you get an alert with the pre-update backup ready to restore.

You watch every step live in the dashboard. Updates never start on their own: you press the button or they run on the weekly schedule you have approved, with a notification the day before. Updates run on RouterOS 7; RouterOS 6 coming soon. Until then we can help you move: migration to v7 is a separate assisted service.

Update · shop-router · 7.14.2 → 7.15.3ok · 2 min 14 s
10:41:03  backup export ...................... ok  (14 KB)
10:41:05  backup binary ...................... ok  (212 KB)
10:41:06  channel: stable · 7.15.3 available
10:41:07  /system package update install ..... ok
10:41:40  reboot ............................. ok
10:43:02  router answered after 82 s
10:43:04  verify version ..................... 7.15.3 ok
10:43:17  check .............................. 5 of 5 passed

05

Where data lives

Backups and the database stay in the EU: Amsterdam (Railway) and Frankfurt (Amazon S3). Payments go through Paddle (UK), DNS and proxy through Cloudflare's global network. Encrypted backups are stored in Amazon S3 (eu-central-1). Router passwords are encrypted at rest in our database; the key lives only in the app's environment, not in the database. Relay servers, which only pass traffic through, run at Hetzner in Germany.

EdgeOwl is operated by Support Rapid SRL in Chișinău, Republic of Moldova. Processing is covered by Moldovan Law 195/2024 on personal data and by the GDPR for customers in the EU. The sub-processors we rely on are listed on the right; the full list with the legal basis for each is in the Privacy Policy, and business customers can sign our Data Processing Agreement.

Sub-processorPurpose and location
RailwayApp hosting and database: accounts, router records, job logs. EU West, Amsterdam.
CloudflareDNS and proxy for app.edgeowl.org. Global network.
ResendAccount mail and email alerts. EU region, Ireland.
PaddlePayments, invoices and taxes as merchant of record. United Kingdom.
Amazon S3Your backups, encrypted with your key before upload. eu-central-1, Frankfurt, Germany.
HetznerHub for Relay tunnels, for routers without a public IP. Germany.
TelegramAlerts to the chat you connect.

06

Restore without EdgeOwl

A backup you cannot open without us would not be yours. Every copy can be downloaded from the dashboard as the encrypted file, and decrypted on any computer with age and your key. No EdgeOwl account, server or goodwill is needed for that.

We also remind you, after the first backup and then every few months, to download a copy and test a restore, so you know the key works before you need it.

If you lose your key, your backups cannot be decrypted, not by you, not by us. Keep the recovery code shown at signup somewhere safe, a password manager is a good place. A new key can be created at any time; it protects backups made from then on.

On any computerage 1.1+
# decrypt the export with your key
age -d -i key.txt backup.rsc.age > backup.rsc
# the binary backup works the same way
age -d -i key.txt backup.backup.age > backup.backup
# then on the router
/import backup.rsc

07

Report a security issue

If you find a weakness in EdgeOwl, the setup script or the Relay, write to [email protected]. We answer within one working day and will tell you what we found and when it is fixed. Please give us a reasonable time to fix it before publishing.

[TODO: confirm the security mailbox and whether to publish a PGP key]

In short
Backups
encrypted with your age key; we keep the public half only
Router access
restricted user, only from egress.edgeowl.org or Relay, revocable in one command
Credentials
encrypted in our database
Updates
backup first, own channel, verified after reboot
Location
EU: Amsterdam and Frankfurt
Law
Moldovan Law 195/2024 and GDPR