Halten Sie Kennwörter und andere vertrauliche Informationen aus Ihren Posteingängen und Chat -Protokollen heraus.
Notiz
Überspringen Sie zu Installationsanweisungen.
Ein einmaliges Geheimnis ist ein Link, der nur einmal angezeigt werden kann. Eine einzelne URL.
Probieren Sie es auf OnetimeSecret.com aus!
Wenn Sie Personen sensible Informationen wie Passwörter und private Links per E -Mail oder Chat senden, finden Sie Kopien dieser Informationen, die an vielen Orten gespeichert sind. Wenn Sie stattdessen einen einmaligen Link verwenden, bleiben die Informationen für eine einzige Anzeige bestehen, was bedeutet, dass sie später nicht von jemand anderem gelesen werden kann. Auf diese Weise können Sie sensible Informationen auf sichere Weise senden, wenn Sie wissen, dass sie nur von einer Person gesehen werden. Stellen Sie sich das wie eine selbstzerstörende Botschaft vor.
Dies ist die aktiv entwickelte und gewartete Version mit den neuesten Funktionen und Sicherheitsaktualisierungen.
Ruby 3 ohne Knoten.js: v0.15.0
Ruby 2.7, 2.6 (Vermächtnis - nicht unterstützt): v0.12.1
Wir empfehlen dringend, die neueste Version mit Ruby 3+ für die beste Leistung, Sicherheit und Feature -Set zu verwenden. Legacy Ruby 2.x -Versionen werden nur als Referenz bereitgestellt und sollten in Produktionsumgebungen vermieden werden.
Es gibt mehrere Möglichkeiten, OnetimeSecret mit Docker auszuführen. Wählen Sie die Methode, die Ihren Anforderungen am besten entspricht:
Wir bieten vorgefertigte Bilder sowohl in GitHub Container Registry als auch in Docker Hub an.
# Pull from GitHub Container Registry
docker pull ghcr.io/onetimesecret/onetimesecret:latest
# OR, pull from Docker Hub
docker pull onetimesecret/onetimesecret:latestWenn Sie es vorziehen, das Bild selbst zu erstellen:
git clone https://github.com/onetimesecret/onetimesecret.git
cd onetimesecret
docker build -t onetimesecret . Für Umgebungen, die Unterstützung für Multi-Architektur benötigen:
git clone https://github.com/onetimesecret/onetimesecret.git
cd onetimesecret
docker buildx build --platform=linux/amd64,linux/arm64 . -t onetimesecretWir bieten auch eine "Lite" -Version des Docker -Images an, die für eine schnellere Bereitstellung und reduzierte Ressourcenverwendung optimiert ist. Um die Lite -Version zu verwenden:
# Pull the lite image
docker pull ghcr.io/onetimesecret/onetimesecret-lite:latest
# OR, build it locally
docker build -f Dockerfile-lite -t onetimesecret:lite .Weitere Informationen zum Lite Docker-Bild finden Sie in der Dokumentation von Docker-Lite.md.
Unabhängig davon, wie Sie das Bild erhalten oder erstellt haben, befolgen Sie diese Schritte, um OnetimeSecret auszuführen:
Starten Sie einen Redis -Behälter:
docker run -p 6379:6379 -d redis:bookwormSetzen Sie essentielle Umgebungsvariablen:
export HOST=localhost:3000
export SSL=false
export [email protected]
export REDIS_URL=redis://host.docker.internal:6379/0
export RACK_ENV=production Hinweis: Die Variable COLONEL legt die E -Mail von Admin -Konto fest. Es ist eine spielerische Kombination aus "Colonel" (jemandem verantwortlich) und "Kernel" (wie unter Linux), der den Systemadministrator darstellt.
Führen Sie den Container für den OnetimeSecret aus:
docker run -p 3000:3000 -d --name onetimesecret
-e REDIS_URL= $REDIS_URL
-e COLONEL= $COLONEL
-e HOST= $HOST
-e SSL= $SSL
-e RACK_ENV= $RACK_ENV
onetimesecret/onetimesecret:latest HINWEIS: Ersetzen Sie onetimesecret/onetimesecret:latest mit Ihrem Bildnamen, wenn Sie ihn lokal erstellt haben.
OnetimeSecret sollte jetzt unter http://localhost:3000 ausgeführt und zugänglich sein.
Ah ja, das klassische Sudo -Paradoxon! Hier ist mein Versuch, dies klar umzugehen:
Dieser Leitfaden deckt die Installation von Onetimecret manuell ab, unabhängig davon, ob Sie mit einer vorhandenen Entwicklungsumgebung arbeiten oder aus einem neuen System beginnen.
Erforderliche Komponenten:
Überprüfen Sie zunächst, ob Sie über die erforderlichen Abhängigkeiten verfügen:
ruby --version # Should be 3.1+
bundler --version # Should be 2.5.x
node --version # Should be 20+
pnpm --version # Should be 9.2+
redis-server -v # Should be 5+Befolgen Sie die folgenden Schritte für eine frische Systeminstallation:
Wichtig
Wenn Sie mit einem minimalen System beginnen (wie ein frischer Debian -Container), installieren Sie sudo zuerst:
# Only if starting as root on a minimal system
apt update && apt install -y sudoSystemabhängigkeiten installieren:
# For Debian/Ubuntu systems:
sudo apt update
sudo apt install -y git curl build-essential libyaml-dev libffi-dev redis-server ruby3.1 ruby3.1-dev
# Install package managers
sudo gem install bundler
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs
sudo npm install -g pnpm@latest
# Start Redis server
sudo service redis-server startHinweis: Wenn Sie bei der Installation von PNPM mit sudo prüfungsbezogene Fehler sehen, ist dies in Containern oder minimalen Systemen normal, bei denen die Prüfungsfunktionen begrenzt sind.
git clone https://github.com/onetimesecret/onetimesecret.git
cd onetimesecret # Install Ruby dependencies
bundle install
# Install Node.js dependencies
pnpm installgit rev-parse --short HEAD > .commit_hash.txt
cp -p ./etc/config.example.yaml ./etc/config.yamlSie können die Anwendung auf zwei Arten ausführen:
Am besten für Produktion oder Entwicklung ohne Frontend -Änderungen:
pnpm run build:localetc/config.yaml : :development :
:enabled : false # For production
RACK_ENV=production bundle exec thin -R config.ru -p 3000 start
# Or for backend development
RACK_ENV=development bundle exec thin -R config.ru -p 3000 startAm besten für die aktive Frontend -Entwicklung mit Live -Nachladen:
Aktivieren Sie den Entwicklungsmodus in etc/config.yaml :
:development :
:enabled : trueStarten Sie den Hauptserver:
RACK_ENV=development bundle exec thin -R config.ru -p 3000 startStarten Sie den Vite Dev Server (in einem separaten Terminal):
pnpm run devBeim Ausführen im Entwicklungsmodus (Option B) verwendet die Anwendung den Dev -Server von Vite für dynamische Asset -Lade- und Hot -Modul -Austausch. So funktioniert es:
Im Entwicklungsmodus ( development.enabled: true ) lädt die Anwendung Vermögenswerte dynamisch vom Vite Dev Server:
{{#frontend_development}}
< script type =" module " src =" {{ frontend_host }}/dist/main.ts " > </ script >
< script type =" module " src =" {{ frontend_host }}/dist/@vite/client " > </ script >
{{/frontend_development}} Im Produktionsmodus ( development.enabled: false
{{^frontend_development}}
{{{vite_assets}}}
{{/frontend_development}}Dieses Setup ermöglicht Funktionen wie Hot -Modul -Austausch und sofortige Updates während der Frontend -Entwicklung und sorgt für eine optimale Leistung in der Produktion.
OnetimeSecret benötigt eine config.yaml -Datei für alle Installationen. Umgebungsvariablen können verwendet werden, um bestimmte Einstellungen zu überschreiben. Die Datei config.yaml muss jedoch immer vorhanden sein.
Erstellen Sie die Konfigurationsdatei:
cp -p ./etc/config.example.yaml ./etc/config.yaml Überprüfen und bearbeiten ./etc/config.yaml nach Bedarf. Aktualisieren Sie zumindest den geheimen Schlüssel und sichern Sie ihn sicher.
Die Datei ./etc/config.yaml ist die primäre Konfigurationsmethode. Es verwendet die Erb -Syntax, um Umgebungsvariablen zu integrieren, und ermöglicht eine flexible Konfiguration:
---
:site :
:host : <%= ENV['HOST'] || 'localhost:7143' %>
:domains :
:enabled : <%= ENV['DOMAINS_ENABLED'] || false %>In diesem Format:
HOST ) festgelegt ist, wird ihr Wert verwendet. Schlüsselbereiche zur Konfiguration in config.yaml :
Für schnelle Setups oder Containerbereitstellungen können Sie Umgebungsvariablen verwenden, um config.yaml zu überschreiben. Yaml -Einstellungen:
export HOST=localhost:3000
export SSL=false
export [email protected]
export REDIS_URL=redis://username:password@hostname:6379/0
export RACK_ENV=production Für verschiedene Bereitstellungsszenarien, einschließlich Docker -Setups und lokaler Entwicklung, können Sie eine .env -Datei verwenden, um Umgebungsvariablen festzulegen:
Erstellen Sie die .Env -Datei:
cp -p .env.example .env Bearbeiten Sie die .env -Datei mit Ihrer gewünschten Konfiguration.
Die Verwendung hängt von Ihrem Setup ab:
Laden Sie für die lokale Entwicklung die Variablen vor dem Ausführen der Anwendung:
set -a
source .env
set +a Für Docker-Bereitstellungen können Sie die Option- --env-file verwenden:
docker run --env-file .env your-image-nameIn Docker-Compose können Sie die .Env-Datei in Ihrem Docker-compose.yml angeben:
services :
your-service :
env_file :
- .envDie .EnV -Datei ist vielseitig und kann in verschiedenen Bereitstellungsszenarien verwendet werden, wodurch Flexibilität bei der Verwaltung Ihrer Umgebungsvariablen bietet.
config.yaml ist immer erforderlich, auch wenn Umgebungsvariablen verwendet werden..env -Dateimethode, jedoch nicht beides, um Verwirrung zu vermeiden.config.yaml entfernen, werden nur die wörtlichen Werte in der Konfiguration verwendet. Wichtig
Verwenden Sie einen sicheren Wert für den SECRET Schlüssel als Umgebungsvariable oder als site.secret in etc/config.yaml . Ändern Sie diesen Wert nicht. Erstellen und speichern Sie eine Sicherung an einem sicheren Ort außerhalb des Standorts. Das Ändern des Geheimnisses kann die Entschlüsselung bestehender Geheimnisse verhindern.
Eine vollständige Liste der verfügbaren Konfigurationsoptionen finden Sie in den Kommentaren in der Datei config.example.yaml .
Um einen sicheren, zufälligen 256-Bit-Geheimschlüssel zu generieren, können Sie den folgenden Befehl mit OpenSSL verwenden:
openssl rand -hex 32 Wenn OpenSSL nicht installiert ist, können Sie den dd -Befehl als Fallback verwenden:
dd if=/dev/urandom bs=32 count=1 2> /dev/null | xxd -p -c 32 Hinweis: Während der dd -Befehl eine vernünftige Alternative liefert, wird OpenSSL für kryptografische Zwecke empfohlen.
Wenn Sie auf den Fehler "Der Containername"/onetimeSecret "sind bereits verwendet" ist bereits verwendet ":
# If the container already exists, you can simply start it again:
docker start onetimesecret
# OR, remove the existing container
docker rm onetimesecret Nach dem Entfernen des Containers können Sie den regulären docker run -Laufbefehl erneut ausführen.
Für Docker Compose Setup finden Sie im speziellen Docker Compose Repo.
Im Debug -Modus ausführen:
ONETIME_DEBUG=true bundle exec thin -e dev start Beim Ausführen des Vite -Servers im Entwicklungsmodus wird er automatisch neu geladen, wenn sich die Dateien ändern. Stellen Sie sicher, dass RACK_ENV auf development oder development.enabled eingestellt ist. In etc/config ist auf false eingestellt.
Wir verwenden das Framework pre-commit , um die Codequalität aufrechtzuerhalten. Um es einzurichten:
Vorkommind installieren:
pip install pre-commitInstallieren Sie die Git -Hooks:
pre-commit installDadurch wird sichergestellt, dass die Pre-Commit-Hooks vor jedem Commit ablaufen und dazu beitragen, die Codequalität und -konsistenz aufrechtzuerhalten.
Verwenden Sie: Verwenden Sie:
docker history < image_id >Stellen Sie beim Bereitstellen zur Produktion sicher:
Beispiel für Produktionsergebnisse:
export HOST=example.com
export SSL=true
export [email protected]
export REDIS_URL=redis://username:password@hostname:6379/0
export RACK_ENV=production
docker run -p 3000:3000 -d --name onetimesecret
-e REDIS_URL= $REDIS_URL
-e COLONEL= $COLONEL
-e HOST= $HOST
-e SSL= $SSL
-e RACK_ENV= $RACK_ENV
onetimesecretStellen Sie sicher, dass alle sensiblen Informationen ordnungsgemäß gesichert und in Ihren Bereitstellungsskripten oder -umgebungen nicht aufgedeckt werden.
Dieser Abschnitt bietet einen Überblick über Dienste ähnlich wie unser Projekt, wobei die einzigartigen Funktionen und ihre Vergleiche hervorgehoben werden. Diese Alternativen können für Benutzer nützlich sein, die nach bestimmten Funktionen suchen oder verschiedene Optionen in derselben Domäne untersuchen möchten. Durch die Präsentation dieser Informationen möchten wir unseren Benutzern einen umfassenden Überblick über die verfügbaren Optionen im sicheren Bereich für den sicheren Informationsaustausch geben.
Hinweis: Unser interner Rechtsberater (Codium-Pr-Agent-Pro-Bot) schlug vor, diese Einführung und den Haftungsausschluss am Ende hinzuzufügen.
| URL | Service | Beschreibung | Unterscheidungsmerkmal |
|---|---|---|---|
| https://pwpush.com/ | Passwort Pusher | Ein Tool, das Browser -Cookies verwendet, um Ihnen bei der Freigabe von Passwörtern und anderen vertraulichen Informationen zu helfen. | Temporäre, selbstzerstörende Links für die Kennwortfreigabe |
| https://scrt.link/en | Ein Geheimnis teilen | Ein Dienst, mit dem Sie anonym sensible Informationen teilen können. Entscheidend für Journalisten, Anwälte, Politiker, Whistleblower und unterdrückte Personen. | Anonyme, selbstzerstörende Nachrichtenfreigabe |
| https://cryptgeon.com/ | Cryptgeon | Ein Dienst zum sicheren Teilen von Geheimnissen und Passwörtern. | Bietet einen geheimen Generator, Passwortgenerator und geheimen Tresor |
| https://www.vanish.so// | Verschwinden | Ein Dienst zum sicheren Teilen von Geheimnissen und Passwörtern. | Selbstzerstörende Nachrichten mit starker Verschlüsselung |
| https://password.link/en | Passwort.link | Ein Dienst zum sicheren Senden und Empfangen sensibler Informationen. | Sichere Link -Erstellung für sensible Informationsaustausch |
| https://sebsauvage.net/ | SEBSAUVAGE.NET | Eine Website, die verschiedene Informationen und Dienste anbietet. | Software zur Wiederherstellung von gestohlenen Computern |
| https://www.sharesecret.co/ | Aktie | Ein Dienst zum sicheren Teilen von Passwörtern in Slack und E -Mail. | Sichere Kennwortfreigabe mit Slack- und E -Mail -Integration |
| https://teampassword.com/ | Teampasswort | Ein Passwortmanager für Teams. | Schnell, benutzerfreundlich und sicheres Teamkennwortmanagement |
| https://secretshare.io/ | Geheimer Anteil | Ein Dienst zum sicheren Teilen von Passwörtern. | Starke Verschlüsselung für Daten im Transport und in Ruhe |
| https://retriever.corgea.io/ | Retriever | Ein Dienst zur sicheren Anforderung von Geheimnissen. | Sichere geheime Anfrage und Abruf mit Verschlüsselung sicher |
| https://winden.app/s | Winden | Ein Dienst zum sicheren Teilen von Geheimnissen und Passwörtern. | Übertragen Sie Dateien mit End-to-End-Verschlüsselung sicher |
| https://www.snote.app/ | Schlange | Ein in Privatsphäre ausgerichteter Arbeitsbereich mit End-to-End-Verschlüsselung. | Sichere Zusammenarbeit an Projekten, Aufgaben, Aufgaben und gemeinsam genutzten Dateien |
| https://www.burnafterreading.me/ | Brennen nach dem Lesen | Ein Dienst zum Teilen verschiedener Arten von sensiblen Informationen. | Selbstzerstörende Nachrichten mit einer Diceware-Passphrase-Verschlüsselung |
| https://pvtnote.com/en/ | Pvtnote | Ein Dienst zum Senden von privaten, selbstzerstörenden Nachrichten. | Sauberes Design mit selbstzerstörenden Nachrichten |
| https://k9crypt.xyz/ | K9Crypt | Eine sichere und anonyme Messaging -Plattform. | End-to-End-Verschlüsselung mit 2-stündiger Nachricht Löschung |
Zusammengefasst, abgerufen und von Cohere Command R+, formatiert von Claude 3.5 Sonett und Korrekturlesen durch Github Copilot.
Die Einbeziehung dieser Dienste in diese Liste impliziert keine Bestätigung. Benutzer werden ermutigt, ihre eigenen Forschungen und Due -Diligence durchzuführen, bevor sie eine der aufgelisteten Dienste nutzen, insbesondere beim Umgang mit sensiblen Informationen.