Password Pusher - Self-Hosted One-Time Secret Sharing

AWS Security

Password Pusher, share passwords, text, files and links over one time URLs that self destruct after a set number of views or a set number of days.

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

Password Pusher is an open source, self hosted web application for sharing sensitive information securely and temporarily. A sender pushes a password, block of text, a file or a URL and receives a one time link; the link stops working automatically once it has been viewed a set number of times or a set number of days have passed, whichever comes first, and every push is tracked with a full audit trail. It is a simpler, private alternative to emailing credentials or using a public paste service.

Why the cloudimg image

cloudimg delivers Password Pusher hardened and fully patched, served over TLS with a self signed certificate regenerated on first boot. The application binds to loopback behind an nginx reverse proxy, and both the session signing key and the database payload encryption key are generated uniquely on each machine at first boot, so no key material is ever shared between instances. The login system is disabled so the appliance ships anonymous by design with no default account, backed by 24/7 support.

Common uses

  • Share passwords and API keys over links that self destruct after viewing
  • Send credentials, files or URLs to contractors and customers without email trails
  • Run a self hosted, audited alternative to public paste and secret sharing services

Key features

  • Prebuilt and hardened in minutes: Password Pusher ships no binary, so a manual install means compiling Ruby, bundling gems, building assets, preparing the database, authoring systemd units and configuring a TLS reverse proxy. This image completes every step at build time. Launch an instance and share your first one-time secret link without editing a single configuration file.
  • Secure by default with per-instance keys: the login and registration system is disabled so the appliance is anonymous by design with no admin account or shared credential, and both the Rails session key and the database payload-encryption key are generated uniquely and at random on every instance's first boot, so no two deployments share key material. The application binds to loopback and is reachable only through the nginx TLS reverse proxy.
  • Self-destructing links with an audit trail and 24/7 support: share passwords, text, files or URLs over links that stop working after a set number of views or days, whichever comes first, with a full audit trail of retrievals. Payloads are encrypted at rest with the per-instance key. Backed by 24/7 cloudimg technical support via email and chat.

See it running

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

Password Pusher - Self-Hosted One-Time Secret Sharing screenshot 1 Password Pusher - Self-Hosted One-Time Secret Sharing screenshot 2 Password Pusher - Self-Hosted One-Time Secret Sharing screenshot 3 Password Pusher - Self-Hosted One-Time Secret Sharing screenshot 4

Description

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

## Overview

Password Pusher is a popular open-source, self-hosted web application for securely sharing sensitive information. A sender pushes a password, a block of text, a file or a URL and receives a one-time link that stops working automatically once it has been viewed a set number of times (default 5) or a set number of days have passed (default 7), whichever comes first, with a full audit trail. It is a private, self-hosted alternative to emailing credentials or using a public paste service, and this AMI delivers it fully installed and hardened so a working instance is operational within minutes of launch.

## Why This Image vs a Manual Install

Password Pusher ships no prebuilt binary, so a manual install means compiling a matching Ruby, bundling gems, building front-end assets, preparing the database, authoring systemd units and configuring a TLS reverse proxy. This image completes every one of those steps at build time. It also closes the two security gaps a default deployment leaves open: the Rails session key and the database payload-encryption key both default to shared, insecure values upstream, and this image generates a unique random value for each on every instance's first boot.

## Application Stack

The Rails application runs under puma as an unprivileged system user, bound to the loopback interface only, and is fronted by an nginx reverse proxy that terminates TLS on port 443 (with a plain-HTTP port 80 that redirects to HTTPS). Payloads are stored in a local SQLite database, encrypted at rest with the per-instance key. systemd starts the application and the web server on boot and restarts them on failure.

## Security Hardening

This image follows a defence-in-depth approach:

  • Anonymous by design: the login and registration system is disabled, so there is no admin account, no API key and no shared credential baked into the image
  • Per-instance encryption keys: both the Rails session-signing key and the Lockbox database-encryption key are generated uniquely and at random on each instance's first boot, so no two deployments share key material
  • Network isolation: the application binds exclusively to the loopback interface; only the nginx reverse proxy is network-facing, and it serves over TLS
  • TLS by default: a self-signed certificate is regenerated on first boot with the instance address in its subject alternative names; because secrets are encrypted server-side, transport encryption is enforced end to end
  • Least privilege: the application runs as an unprivileged system user with NoNewPrivileges, PrivateTmp and ProtectSystem set
  • Fully patched base: the operating system is brought to a fully patched baseline at build time

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

## Concrete Use Cases

  • Secure credential handoff: An IT team sharing a database password or API key with a contractor via a link that self-destructs after a single view, leaving no copy in email or chat
  • Onboarding and offboarding: HR or IT sending initial account credentials to new hires over links that expire automatically, with an audit trail of what was retrieved and when
  • Support and incident response: An on-call engineer passing a one-time recovery token or certificate to a colleague without it persisting in a ticketing system

## AWS Integration

Deploy on any EC2 instance type. Use the unauthenticated health endpoint with an Application Load Balancer for availability monitoring. Put your own domain and an ACM or CA-signed certificate on the reverse proxy or an ALB in front. Back up the SQLite database with EBS snapshots or AWS Backup if you need push history to survive an instance replacement.

## Getting Started

Open the web interface in your browser, push a password, text, file or URL, and share the returned one-time link. The recipient views the secret once (or within the window you set) and the link then self-destructs. No login is required to push or retrieve a secret.

## cloudimg Support

24/7 technical support by email and chat. Help with deployment, putting your own domain and TLS certificate in front, expiration and retrieval-step configuration, and backup planning for your push database.

Related technologies

password pusherpwpushsecret sharingone-time secretpassword sharingself-hostedsecretsshare passwordexpiring linksephemeral