Rest Server for restic

AWS Storage

a self hosted, authenticated backup repository server for the restic REST backend

Base
Hardened build
minimal ports, security patches applied at build time
Access
Unique credentials
generated on first boot, readable only by root
Verified
Boots working
services pass a health gate before release
Support
24/7, 365 days
by email and live chat, 24 hour response SLA

Overview

Rest Server is the open source HTTP backend for restic. Point any restic client at it over HTTPS and it becomes a self hosted backup repository server: read and write encrypted, deduplicated backup repositories entirely within your own account, speaking the standard restic REST protocol so existing clients and automation work unchanged. rest-server binds to loopback only and nginx terminates TLS as the single network facing surface, with HTTP basic authentication and private repositories so the server is never open or anonymous.

Why the cloudimg image

cloudimg ships Rest Server fully installed and hardened behind nginx TLS, so a working backup endpoint answers within minutes. Every instance generates its own restic username, password and TLS certificate on first boot, written to a root only file, so nothing secret is baked into the image. Repository data lives on a dedicated, independently resizable data volume, and every deployment is paired with a step by step guide and 24/7 cloudimg support.

Common uses

  • A private, self hosted backup destination for laptops, servers and containers using restic
  • A fast REST backend that keeps backup data and storage costs inside your own account
  • A repository server you fully control, with per user private namespaces and TLS

Key features

  • Rest Server, the open source restic REST backend, fully installed as a hardened systemd service behind nginx TLS. Point any restic client at it over HTTPS and read and write backup repositories within your own account, with repository data on a dedicated data volume that is independently resizable from the OS disk.
  • Secure by default and never an open server: on first boot every instance generates its own HTTP basic authentication credentials and its own TLS certificate. rest-server binds to loopback only and is reachable exclusively through nginx TLS with per instance basic authentication and private repositories, so unauthenticated requests are rejected and no shared or baked in credential ships in the image.
  • 24/7 expert technical support from cloudimg with a one hour average response time for critical issues. Our engineers help with restic client setup, repository and namespace layout, append only and private repository patterns, nginx TLS with custom domains, data volume sizing, and Rest Server version upgrades.

See it running

Real screenshots taken while testing this image against its deployment guide.

Rest Server for restic screenshot 1 Rest Server for restic screenshot 2 Rest Server for restic screenshot 3

Description

This is a repackaged open source software product wherein additional charges apply for cloudimg support services.

Rest Server is a high performance open source HTTP server that implements the restic REST backend protocol. This image turns an instance and its dedicated data volume into a self hosted backup repository server: point any restic client at it over HTTPS and read and write backup repositories exactly as you would against any restic remote, entirely within your own account. The server is fully installed and reverse proxied behind nginx with TLS, so a working backup endpoint is operational within minutes of launch, with no manual package installation, no dependency troubleshooting and no proxy configuration required.

Application stack: rest-server binds to the loopback interface only, and nginx is the single network facing surface. nginx terminates TLS on port 443 and fronts the entire REST backend with HTTP basic authentication, with restic uploads of large pack files streamed unbuffered. Repository data lives on a dedicated data volume, separate from the operating system disk, so your backups have room to grow and are easy to reason about. An unauthenticated GET /healthz on port 80 and 443 is available for load balancer probes, and systemd manages the service for automatic restarts and clean logging.

Secure by default with no shared credentials: Rest Server can be run with authentication disabled, which means an unprotected deployment is an open, anonymous repository server. This image never exposes it that way. It requires HTTP basic authentication on every request against a bcrypt htpasswd file, and enables private repositories so each user is confined to their own namespace. Nothing secret is baked into the image. On the first boot of every instance, a unique username and password and a unique self signed TLS certificate are generated, and the credentials are written to a root only file on the instance. The service is configured to refuse to start until a credential is present, so requests are authenticated from the very first call.

Common uses include a private, self hosted backup destination for laptops, servers and containers using restic; a fast REST backend that avoids per request cloud storage costs; and a repository server you fully control. Because it speaks the standard restic REST protocol, existing restic clients and automation work unchanged.

Get started: read the generated credentials, then point restic at the authenticated HTTPS URL of this instance and run restic init, restic backup and restic snapshots. cloudimg engineers can help you design repository layout, append only and private repository patterns, TLS with your own domain and certificate, and rollout across your fleet after purchase.

This is a repackaged open source software product with additional charges for cloudimg support services. Rest Server and restic are trademarks of their respective owners. All product and company names are trademarks or registered trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.

Related technologies

rest serverresticbackupbackup serverrest backendself hostedstoragedisaster recoveryrepository serveropen source