Deploying Sup3rS3cretMes5age
Introduction
Sup3rS3cretMes5age is a simple, self-hosted secret sharing service that allows you to share passwords, API keys, and other sensitive information through self-destructing links. Once a secret is viewed, it’s automatically deleted, ensuring that sensitive data doesn’t persist longer than necessary.
Key highlights of Sup3rS3cretMes5age:
- One-Time Links: Secrets are deleted after being viewed once
- TTL Support: Set expiration times for secrets that haven’t been viewed
- No JavaScript Required: Works in browsers with JavaScript disabled
- Encryption: Secrets are encrypted at rest
- Simple API: Easy integration with scripts and automation
- Minimal Dependencies: Lightweight and easy to deploy
- Open Source: Fully transparent security implementation
- Self-Hosted: Keep sensitive data on your own infrastructure
This guide walks through deploying Sup3rS3cretMes5age on Klutch.sh using Docker.
Why Deploy Sup3rS3cretMes5age on Klutch.sh
Deploying Sup3rS3cretMes5age on Klutch.sh provides several advantages:
Simplified Deployment: Klutch.sh automatically detects your Dockerfile and builds the application without complex orchestration.
HTTPS by Default: Klutch.sh provides automatic SSL certificates, essential for transmitting sensitive information securely.
Persistent Storage: Attach persistent volumes for the secret database. Unviewed secrets survive container restarts.
GitHub Integration: Connect your configuration repository for automatic redeployments.
Prerequisites
Before deploying Sup3rS3cretMes5age on Klutch.sh, ensure you have:
- A Klutch.sh account
- A GitHub account with a repository for your configuration
- Basic familiarity with Docker and containerization concepts
Deploying Sup3rS3cretMes5age on Klutch.sh
- Select HTTP as the traffic type
- Set the internal port to 8080
Create Your Repository
Create a new GitHub repository with a Dockerfile:
FROM algolia/sup3rs3cretmes5age:latest
ENV VAULT_ADDR=${VAULT_ADDR}ENV VAULT_TOKEN=${VAULT_TOKEN}
EXPOSE 8080Push to GitHub
Initialize and push your repository to GitHub with your Dockerfile.
Create a New Project on Klutch.sh
Navigate to the Klutch.sh dashboard and create a new project.
Create a New App
Within your project, create a new app and connect your GitHub repository.
Configure HTTP Traffic
In the deployment settings:
Set Environment Variables
Configure the following environment variables (if using Vault backend):
| Variable | Value |
|---|---|
VAULT_ADDR | Your Vault server address |
VAULT_TOKEN | Your Vault access token |
Attach Persistent Volumes
Add the following volumes:
| Mount Path | Recommended Size | Purpose |
|---|---|---|
/data | 1 GB | Secret storage |
Deploy Your Application
Click Deploy to start the build process.
Access Sup3rS3cretMes5age
Once deployment completes, access your instance at your app URL.
Configuration
Creating a Secret
- Navigate to your Sup3rS3cretMes5age URL
- Enter the secret message in the text area
- Optionally set a TTL (time-to-live) for automatic expiration
- Click Create Secret
- Copy and share the generated URL
API Usage
Create secrets programmatically:
curl -X POST https://your-instance.klutch.sh/api/secret \ -H "Content-Type: application/json" \ -d '{"secret": "my-sensitive-data", "ttl": 3600}'Security Best Practices
- Always use HTTPS when sharing secret links
- Set appropriate TTL values for your use case
- Consider who has access to your deployment logs
- Rotate any secrets that may have been compromised
Additional Resources
Conclusion
Deploying Sup3rS3cretMes5age on Klutch.sh gives you a secure, self-hosted way to share sensitive information through self-destructing links. With automatic HTTPS and persistent storage, your secret sharing service is both secure and reliable.