Onetime Secret - Self-Hosted Secret Sharing

AWS Security

Onetime Secret, a self hosted service for sharing sensitive information through one time links that reveal a secret exactly once and then self destruct.

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

Onetime Secret is an open source, self hosted service for sharing passwords and other sensitive information safely. Instead of pasting a secret into email or chat where it lingers forever, you paste it once and get back a short lived one time link; the recipient opens the link a single time to reveal the secret, after which it is permanently burned and the link stops working. Secrets carry a time to live so anything unread also expires on its own, and an optional administrator dashboard lets an operator review activity. It suits any team that needs to hand over credentials, keys or private notes without leaving a lasting copy behind.

Why the cloudimg image

cloudimg delivers Onetime Secret hardened behind an nginx reverse proxy that binds the application and its Redis store to loopback, served over TLS with a self signed certificate regenerated on first boot so no key material is ever shared between instances. The image is secure by default with no known credential baked in: on each instance's first boot the application root secret, the Redis password and the administrator account password are all generated to unique random values and written to a root only file. Every deployment carries a paired deployment guide and 24/7 support.

Common uses

  • Share passwords and API keys through links that self destruct after one view
  • Hand credentials to contractors or customers without a lasting email trail
  • Run a private, self hosted alternative to public paste and secret services

Key features

  • Ready in minutes with zero build steps: this AMI eliminates six manual installation tasks - compiling Ruby, bundling gems, building the Vue frontend, provisioning Redis, authoring systemd units, and terminating TLS. Launch an EC2 instance and reach a working, TLS-protected Onetime Secret over HTTPS immediately. No configuration files to edit, no dependencies to resolve, no compilation to wait for. Evaluate on a small instance type and scale to production when ready.
  • Unique per-instance credentials with no shared secrets: the application root secret, Redis password, and administrator account are all generated uniquely on each instance's first boot and written only to a root-only file. No two deployments share a credential. Redis binds exclusively to the loopback interface and requires authentication, making the secret store unreachable from the network even within your VPC.
  • Self-destructing secrets with dedicated storage and 24/7 support: paste a password, API key, or private note to generate a one-time link that is permanently destroyed after a single view. Optional passphrase protection and configurable expiry ensure nothing lingers. The Redis secret store lives on a dedicated, independently resizable EBS data volume. Backed by 24/7 cloudimg technical support via email and chat for deployment, TLS configuration, backup planning, and API integration.

See it running

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

Onetime Secret - Self-Hosted Secret Sharing screenshot 1 Onetime Secret - Self-Hosted Secret Sharing screenshot 2 Onetime Secret - Self-Hosted Secret Sharing screenshot 3 Onetime Secret - Self-Hosted Secret Sharing screenshot 4

Description

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

## Overview

Onetime Secret is a widely adopted open source service for sharing sensitive information safely. A sender pastes a secret - a password, an API key, a private note - and receives a unique one-time link. The recipient opens that link exactly once to reveal the secret, after which it is permanently destroyed and the link returns not-found. Secrets can carry an optional passphrase and an expiry, so nothing lingers in inboxes or chat history. This AMI gives you a private, self-hosted Onetime Secret you run and control entirely within your own AWS account, delivered fully installed and hardened so a working service is available within minutes of launch.

## Why This Image vs a Manual Install

Onetime Secret ships Docker-first with no prebuilt binary, so a manual install means completing at least six distinct steps: compiling a Ruby runtime, bundling gems, building the Vue frontend, provisioning Redis, authoring systemd units, and terminating TLS - then hardening all of it. This image completes every one of those steps at build time. The application, its Redis store, an nginx TLS front end and a self-signed per-instance certificate are wired together and secured for you. Launch the instance, open the URL over HTTPS, and start sharing secrets immediately.

## Application Stack

The Onetime Secret web application runs under Puma and is bound to the loopback interface only. Redis, the secret store, is bound to loopback only and requires a password. An nginx reverse proxy terminates TLS on port 443 and is the sole network-facing surface; port 80 redirects to HTTPS and serves an unauthenticated health endpoint for load balancers. systemd starts Redis, the application and the web server on boot and restarts them on failure. The Redis data directory lives on a dedicated data volume, independently resizable and separate from the OS disk.

## Security Hardening

This image follows a defence-in-depth approach:

  • No default or shared credentials: the application root secret, the Redis password and the administrator account are all generated uniquely on each instance's first boot and written only to a root-only file - nothing is baked into the image
  • Redis is never exposed: the secret store binds exclusively to the loopback interface and requires a password, so it is unreachable from the network
  • Application isolation: the web application binds to loopback only; only the nginx reverse proxy is exposed, and it enforces TLS
  • Encryption in transit: a self-signed certificate is regenerated per instance with the instance's public address in its subject alternative names, so secrets never travel in plaintext
  • No open sign-up and no reachable default admin: open account self-registration is disabled and the optional administrator account uses a unique per-instance password

Buyers requiring formal compliance documentation should contact cloudimg to discuss specific requirements.

## Concrete Use Cases

  • Credential handoff between teams: Platform and security teams sending database passwords, cloud keys and certificate bundles to colleagues or contractors via a link that self-destructs after a single view, leaving nothing in email or chat
  • Customer and vendor secret exchange: Support and onboarding teams delivering one-time access tokens or recovery codes to external users over a link that cannot be reused or forwarded
  • Internal secret sharing with an audit boundary: Engineering teams replacing pasted secrets in wikis and tickets with expiring one-time links inside their own VPC, keeping sensitive values off long-lived systems

## AWS Integration

Deploy on any EC2 instance type. Front the service with an Application Load Balancer using the unauthenticated health endpoint for availability monitoring, and terminate TLS with your own certificate and domain if preferred. Back up the Redis data volume with EBS snapshots or AWS Backup, and resize it independently of the OS disk. The generated one-time links use the instance public address resolved at first boot.

## Evaluate Before You Commit

Launch on a small instance type to evaluate the full workflow - paste a secret, generate a link, view and burn it - with no configuration required. The service is fully functional after boot, then scale up when ready for production.

## Getting Started

Read your per-instance details from the root-only file, open the service over HTTPS in a browser, paste a secret and share the generated one-time link. The optional administrator (colonel) account and its credentials are in the same file for the admin dashboard and API.

## cloudimg Support

24/7 technical support by email and chat. Help with deployment, terminating TLS with your own domain and certificate, configuring expiry and passphrase policy, Redis backup planning, and integrating the API into your workflows.

Related technologies

secret sharingone-time linkself-destructing messagespassword sharingsecure credential transferself-hosted secretsburn after readingtemporary linkssensitive data sharingsecret management AMI